「スパゲッティコード」を編集中

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

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

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

最新版 編集中の文章
6行目: 6行目:
 
== 主な原因 ==
 
== 主な原因 ==
 
=== 中級者病 ===
 
=== 中級者病 ===
[[中級者病]]とは、初級者から中級者へ昇格する時期はほぼどのような[[ソースコード]]でも読める程度に[[プログラミング言語]]に精通し、また偉い[[プログラマー]]の提唱した[[デザインパターン]]も一通り理解したくらいである。
+
初級者から中級者という時期は、ほぼ何でも読める程度に[[プログラミング言語]]に精通し、または偉い[[プログラマー]]の提唱した[[デザインパターン]]も一通り理解したくらいである。
 
すると、[[プログラミング言語]]の持つあらゆる機能と、偉い[[プログラマー]]の提唱するあらゆる技術を使わねばならないという思い込みが発生する。
 
すると、[[プログラミング言語]]の持つあらゆる機能と、偉い[[プログラマー]]の提唱するあらゆる技術を使わねばならないという思い込みが発生する。
 
そして[[Hello World]]にまで崇高な[[オブジェクト指向]]や[[デザインパターン]]を適用しようとしだすのである。
 
そして[[Hello World]]にまで崇高な[[オブジェクト指向]]や[[デザインパターン]]を適用しようとしだすのである。
25行目: 25行目:
  
 
[[緊急避難]]のスパゲッティコードである。
 
[[緊急避難]]のスパゲッティコードである。
 
=== オブジェクト指向 ===
 
[[オブジェクト指向]]では絡み合う[[クラス]]のすべての[[メンバー変数]]の状態を完全に把握していないとスパゲッティコードが生まれる。
 
つまり[[オブジェクト指向]]は愚かな考えである。
 
 
と、[[関数型プログラミング言語]]の支持者たちは主張している。
 
彼らは[[Haskell]]と[[モナド]]こそ正義であると信じている。
 
 
実は[[オブジェクト指向]]の提唱者である[[アラン・ケイ]]も古くから同様の主張をしている。
 
それでもオブジェクト指向を作った理由を「関数型プログラミング言語は素晴らしいが難しすぎる」のだという。
 
 
[[LISP]]は理想的だが、使いこなせるのは一握りであり、実質的に価値がない。
 
  
 
== 対策 ==
 
== 対策 ==
46行目: 34行目:
  
 
== 関連項目 ==
 
== 関連項目 ==
* [[中級者病]]
 
 
* [[ペアプログラミング]]
 
* [[ペアプログラミング]]
 
* [[不完全にしておよそ正しくないプログラミング言語小史]]
 
* [[不完全にしておよそ正しくないプログラミング言語小史]]

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

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

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

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

このページは 1 個の隠しカテゴリに属しています: