TarZの日記: 【C#言語会話講座】例のOOP炎上エンジニア氏のプログラムは、そもそもきちんと動くのか【オブジェクト思考】 5
「オブジェクト指向言語でオブジェクト指向っぽいプログラミングをしない」のはNG?
問題の記事中の「オブジェクト指向の入門書では」のくだりとか、コメント欄でのやりとり「非オブジェクト指向言語のプログラマーがオブジェクト指向本を買い、最初のクラスとインスタンスの章を読んだだけで、今までの関数やグローバル変数が使えないのかと思って挫折してしまう」をみると、よく見かけるタイプの「OOP入門書の犠牲者」でしょう、この人。
この手の人は別に珍しくないし、「ポインタが分かっていないのにCの解説記事書いちゃった」なんて悪質なケースでもない。同じ職場の開発者仲間からすれば大変でしょうが、システム利用者の立場からするなら、正直なところプログラムのスタイルなんてどうでもよいのです。
ただし、きちんと動くものが書けているのであれば。
で、記事を読んでいくと… :
わたしはこれまで、... ASP.NET C# などの言語を使ってきた。
わざわざASP.NET/C#で開発されているということは、運用形態としては、サーバがあり、それを利用する複数のクライアントがあるのでしょう。
余計なことをせずにVS.NETで普通にWebフォームを使って書く限り、プログラマが作るコードはSystem.Web.UI.Pageを継承したクラスに追加されます。だから、サンプルプログラム程度の単純な(そのクラスのメンバ変数やローカル変数だけで処理が閉じているような)コードなら、まあそれなりに動きますよ。
しかし。
メンバー関数を従来のファンクションのように使っている。共有変数も、pubulic〔原文ママ〕 static宣言していまう〔原文ママ〕。
(強調は引用者)
これ、クライアントから複数のリクエストが来たときでもきちんと動くように書いてます? スレッドプールを1に設定しているのでもない限り、基本はマルチスレッドで動いてますぜ。
まあ、やってやれないことはないだろうけどそれなりに面倒くさいし、この手のコードで出そうなバグは厄介だし、OOPがどうこういう以前の問題ではないのかとガクガクブルブルなのです。
あまりにもレベルが低すぎる (スコア:2)
開発者の嘆き系のストーリーを見る度に、この業界全体のレベルが低すぎるんじゃないかと思うので、あまりにもバカバカしいのでコメントもしません。
よく、プログラミングの仕事のレベルを聞かれるときに、よく
「高校の数学の試験を年間で1000問位解いて、まあ平均点で95点くらいとるレベルの仕事」
と答えていますが、業界人全体でそのレベルに達している人はごく小数なのは明白ですね。
プログラマよりひどい一部のSEなる人々もこの業界のひどさを助長していますね。どういう教育を受けてきたのか私には理解できませんが、なぜか、論理的思考が全くできない人が少なからずいますね。
くだらない業界本でデスマーチの話は出てくるが、アルゴリズムやプログラミング的問題解決の話が出てこないのは、そのレベルの低さ故なんでしょうね。
アルゴリズムを何日も考えつづけて、それが楽しくてしかたがないような人間しかプログラマなんかやるべきじゃないと思う今日この頃です。
#実はこのゴールデンウィーク中にあるアルゴリズムを考えなきゃいけなかったんですけど、結局7日間かかりました。ま、おおよその解決が見つかりほっとしてます。
うーん、愚痴ってしまった。
Re:あまりにもレベルが低すぎる (スコア:2)
私もGW中は、色々と個人で使うプログラムのコードを考えていました。今週中に動くものを仕上げるつもり。:-)
趣味でやるぶんには誰がやろうと構わないとは思うのですが、職業プログラマについてはまったく同感です。そういうのが好きじゃないとなかなか上達しませんね。
人間を100人連れてきたら、プログラマに向いていない人というのが少なからずいるものです。これはもう、頭が良いとか悪いとかとは(相関はあるかもしれないけど)直接的には関係なくて、向き不向きの問題なのでしょう。で、そういう人はプログラマ(職業)に就いちゃだめなのですが、現実はそうなっていない。
プログラムが使われる業種によっては人命に関わることがあったり、経済を大混乱に陥らせる可能性があるのに、プログラマって資格や免許がないですからね。他の職業では、医師免許なり運転免許なり会計士の資格が必要なのに、プログラマは誰でも就くことができてしまう。
この手の話は色々とありますが、何年か前の「FizzBuzzが書けないプログラマ」のレベルにまでなると、もうなんと言ったらいいのやら。
Re:あまりにもレベルが低すぎる (スコア:1)
高校の数学の試験を年間で1000問位解いて、まあ平均点で95点くらいとるレベルの仕事
リツイー…じゃなくて、そのフレーズいただきます。
fj (スコア:0)
なまおさんでしたか。
Re:fj (スコア:2)
初心者の見方!!