一つ目は大原則.特にグローバル変数は最悪だ.言語によっては避けられないこともあるが,それはコーディング規約などでカバーするしかない.二つ目も,ほとんどの場合は大原則.未熟なプログラマーには,何故か負担が大きすぎるらしいけど.三つ目はケースバイケース.ほとんどの場合は言語も極めてない奴の方が多く,まずは「言語を極めろ」は概ね正解.なんだかなぁ。「先ずは使うことを覚えろ」「次に使わないことを覚えろ」「最後に使うか使わないか選ぶことを覚えろ」で十分な気が。状況によっては、と頭につければ、大抵のルールに例外は存在する。ブクマ欲しさにこういう事をするのか...。言ってる事は必ずしも間違いではないが、多くの「自称中級」の初級PGを誤らせる危険な有害記事。本当の中級者以上は言われなくてもそんな事もっとリアルに判ってる。少なくとも1番と2番は論点をずらした詭弁だよ。Guide』なんかを読むと参考になりますよ。http://b.hatena.ne.jp/entry/http://d.hatena.ne.jp/fromdusktildawn/20081026/p1分裂さんちに書いてあるような選択をするときは、我が身の技量不足を100回くらい疑ってから、やむを得ず・・・くらいでちょうど良いと思います。http://d.hatena.ne.jp/minekoa/20081026/1225044432プログラマは、悪い状況を招かない事にまず注力しなければ、いつまで経って低いレベルの妥協から抜け出せない。妥協の塊のせいで保守コストが上がり、そのせいで開発パワー不足が悪い状況を生み、また妥協...、のスパイラル。抽象化を分かりやすい形に出来ていないという問題を、抽象化を悪者にして対処とするのは如何なものかhttp://d.hatena.ne.jp/r-west/20081028ロクにソースも書けない新卒が「えー?ちょっと前にこれでも良いんだってネットで話題だったんですよ?知らないんですかぁ?」とか言いながら得意げに適当なグローバル変数多用してコピペプログラミングしてたら、多分殴るまでは行かないまでも拳は握り締めると思う。変数でもメソッドでもクラスでも言えることだが、単純に「スコープは狭いほどよい」という方針でプログラムすると、逆に保守性も可読性も悪いプログラムができあがることがけっこうある。変数と,メソッドやクラス或いは定数を一緒にするのは論外.グローバル変数は最悪だということは肝に銘じておこう.グローバル変数的なクラスも同様.実際、「あちこちから頻繁にアクセスするようなオブジェクトやメソッド」は、スコープをぐっと広くしてしまった方が(場合によってはグローバル変数やグローバル関数にしてしまった方が)、オブジェクトのスコープは『可能な限り』狭い方が良い。必要であれば,必要最小限の範囲まで広げるのは構わない.時にそれがプログラム全体になることもあるというだけ.*5デフォルトの言語仕様の上に、自分が開発しようとしているアプリケーションのドメインに特化した言語仕様を載せて創り出した「拡張言語仕様」の上でプログラムを書くと生産性が大きく向上する。出番はない.*6変数、メソッド名、クラス名は、全て識別子という概念で括られるものだ。識別子と,変数/メソッド/クラスは別物だし,変数とメソッドとクラスはプログラミングする上でそれぞれ大きく異なるものだ.グローバル変数とグローバル定数でさえも大きく異なる.*7あー,ひょっとしたらこの人は「囓っただけの素人」じゃなくて,単なる「スーツ(笑)」の人なのかな.ならば凄く納得.全然プログラミングを理解してないわけだ.「同じロジックのコードを2度以上書くな」まず第一に、将来的なプログラムパターンの変更の可能性がある。現在、複数箇所に同じようなプログラムパターンが現れたとしても、将来的には、それらは別の修正を受け、別進化していく可能性が予見されることがある。多くの場合はこれは誤りだろう.例外として,ありがちなのが,例えばWeb系のUI部分なんかで「見た目上のレイアウトが似ているけれど,エラー処理や画面遷移などのロジックが全然異なる」場合かな.これでさえも共通化出来る部分については,どんどん共通化していって良い.抽象化レベルの話がある。抽象度を上げることで、共通ルーチン化はできるが、プログラムがコンパクトになるかわりに、直感的に理解しにくくなるケースがある。抽象化し、共通ルーチン化しすぎたプログラムは、可読性が低くなり、スキルの低いプログラマに引き継ぎをしなければならなくなったときに、途方に暮れてしまうことがある。単なるプログラミング言語のスキルよりもはるかに重要なスキルはたくさんある。ここまでは同意.結局のところ、ほとんどのコンピュータプログラムは、人間や社会のニーズや欲望を満たすために存在し、人間や社会の利害や感情の構造の組み立て(これも一種のプログラミングだ)と無縁ではいられない。これは暴言.他のツッコミは、あとで気が向いたらレスするかもしれないけど、概ね、レベルが低いので、いちいちレスしないかもしれない。00:03(ツッコミどこも含め)概ね同意。全体最適になるのであれば何でも構わないけど。01:33JavaやC#、Rubyで書くことが多い人にCで書くことが優秀と考えている人がかみ合わない議論を吹っ掛けている気がしました。勘違いだったらごめんなさい。引用元はせいぜい巧妙なマクロを定義してそれを使って書くという程度のことを言っているように思える。独自の言語仕様がどうこうという話ではないのではないか、と。あ、Lispマクロだったらまったく訳わかめになるかもしれないけど、Lispはもともとそういう言語だからしょうがない。00:45やべ、なぞなぞ考えすぎて忘れそうだった・・。原則もあり、例外もある。両方考える機会ができて結果的に良かったと思います。スパム対策のためのダミーです。見えても何も入力しないでくださいコメントを書くには、なぞなぞ認証に回答する必要があります。・ω・)ノ<しすてむ開発。最新質問(就職・転職)現在、55歳の男です。職場から保険料控除と扶養控除申告書を2年分提出するように言わ。