「Pascal」を編集中

ナビゲーションに移動 検索に移動

警告: ログインしていません。編集を行うと、あなたの IP アドレスが公開されます。ログインまたはアカウントを作成すれば、あなたの編集はその利用者名とともに表示されるほか、その他の利点もあります。

この編集を取り消せます。 下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。

最新版 編集中の文章
6行目: 6行目:
 
[[プログラミング]]が上達してくる過程において、初級者[[プログラマー]]は簡潔でトリッキーな[[ソースコード]]を好むという病的な症状に陥ることが多々ある。[[キーボード]]の[[タイピング]]量を減らすことが正しい、1行で書く事([[ワンライナー]]とも呼ばれる)が正しいと錯覚するのである。
 
[[プログラミング]]が上達してくる過程において、初級者[[プログラマー]]は簡潔でトリッキーな[[ソースコード]]を好むという病的な症状に陥ることが多々ある。[[キーボード]]の[[タイピング]]量を減らすことが正しい、1行で書く事([[ワンライナー]]とも呼ばれる)が正しいと錯覚するのである。
  
そのような[[ソースコード]]は後々に他人が読んだ場合に読みにくく、また[[デバッグ]]なども困難さを極め、最終的には[[デスマーチ]]を加速させることになる。これは[[デスマーチ]]の経験が無い、もしくは経験が少ない低級プログラマーであれば致し方ないことであると言える。
+
そのような[[ソースコード]]は後々に他人が読んだ場合に読みにくく、また[[デバッグ]]なども困難さを極め、最終的には[[デスマーチ]]を加速させることになる。これはデスマーチの経験が無い、もしくは経験が少ない低級プログラマーであれば致し方ないことであると言える。
  
一方で教科書にトリッキーなコードが登場するのは最悪であり、学生の理解はもとより、教師も説明に困るという理由により作られた[[プログラミング言語]]がPascalであると言われている。
+
一方で教科書にトリッキーなコードが登場するのは最悪であり、学生の理解はもとより、教師も説明に困るという理由により作られたプログラミング言語がPascalであると言われている。
  
なお、この教訓は教育のみならず不特定多数が絡み合う[[職業プログラマー]]の世界においても、他人に引き継ぐ際に重要であるとされ、Pascal以外の[[プログラミング言語]]を用いる場合でも、社内ルールとして「[[コーディング規約]]」などと呼ばれるものを用意することで書き方に制約を加えることでクソコードを抑制しようという試みが行われることあり、Pascalを用いる際にもコーディング規約を用いてさらに制約を強めようという場合もある。また、糞コードの混入を防ぐ目的で、定期的にコーディング内容を確認する[[コードレビュー]]や、さらに一歩踏み込んで[[コーディング]]を行う[[プログラマー]]と、それが他人でも読みやすいかを[[リアルタイム]]で監視する[[プログラマー]]の2名による[[ペアプログラミング]]なる手法も一般化しつつある。
+
なお、この教訓は教育のみならず不特定多数が絡み合う[[職業プログラマー]]の世界においても、他人に引き継ぐ際に重要であるとされ、Pascal以外のプログラミング言語を用いる場合でも、社内ルールとして「[[コーディング規約]]」などと呼ばれるものを用意することで書き方に制約を加えることでクソコードを抑制しようという試みが行われることもある。またPascalを用いる際にもコーディング規約を用いてさらに制約を強めようという場合もある。
  
ちなみにPascalに類似する思想としては[[Python]]が有名であり、さらにはPascalの思想と[[Python]]の思想を融合させた[[Boo言語]]なるものまである。
+
ちなみにPascalに類似する思想としては[[Python]]が有名であり、さらにはPascalの思想とPythonの思想を融合させた[[Boo言語]]なるものまである。
  
 
== Pascalの後続言語 ==
 
== Pascalの後続言語 ==
22行目: 22行目:
 
馴染みのある[[C言語]]形式の「x = x + y」ではなく、「x := x + y」というPascal形式を使っていため、即座に批判に晒されることになった。この批判は[[C言語]]がまだ考案されていないにもかかわらず起きている。
 
馴染みのある[[C言語]]形式の「x = x + y」ではなく、「x := x + y」というPascal形式を使っていため、即座に批判に晒されることになった。この批判は[[C言語]]がまだ考案されていないにもかかわらず起きている。
  
これらの批判をかわすため、後にPascalの[[言語仕様]]はそのままに、[[ソースコード]]の見た目を[[C言語]]風に偽装した[[C Sharp|C#]]が考案された。
+
これらの批判をかわすため、後に言語仕様はそのままに、見た目をC言語風に偽装した[[C Sharp|C#]]が考案された。
  
 
* 1970 - [[Pascal]] - 元祖である。
 
* 1970 - [[Pascal]] - 元祖である。
28行目: 28行目:
 
* 1989 - [[Turbo Pascal 5.5]] - [[Smalltalk]]の影響をうけた[[Object Pascal]]の始まりである。
 
* 1989 - [[Turbo Pascal 5.5]] - [[Smalltalk]]の影響をうけた[[Object Pascal]]の始まりである。
 
* 1995 - [[Delphi]] - [[GUI]]で[[ポトペタ]]という革命を起こした。
 
* 1995 - [[Delphi]] - [[GUI]]で[[ポトペタ]]という革命を起こした。
* 2000 - [[C Sharp|C#]] - 最初の版は[[Delphi]]の[[リネーム商法]]であったが、現在では原型をとどめていない。
+
* 2000 - [[C Sharp|C#]] - 最初の版はDelphiの[[リネーム商法]]であったが、現在では原型をとどめていない。
* 2001 - [[Kylix]] - [[Linux]]にポトペタ文化を伝えようとしたが黒い画面を好む[[Linux信者]]たちは拒絶反応を示した。
 
  
 
== 関連項目 ==
 
== 関連項目 ==
37行目: 36行目:
 
{{reflist}}
 
{{reflist}}
  
[[category: プログラミング言語]]
+
{{stub}}

MonoBookへの投稿はすべて、他の投稿者によって編集、変更、除去される場合があります。 自分が書いたものが他の人に容赦なく編集されるのを望まない場合は、ここに投稿しないでください。
また、投稿するのは、自分で書いたものか、パブリック ドメインまたはそれに類するフリーな資料からの複製であることを約束してください(詳細はMonoBook:著作権を参照)。 著作権保護されている作品は、許諾なしに投稿しないでください!

このページを編集するには、下記の確認用の質問に回答してください (詳細):

取り消し 編集の仕方 (新しいウィンドウで開きます)

このページで使用されているテンプレート: