「 指し手生成が嫌になった……☆
ヒマつぶしに 入門書を焼き尽くす 超上級者用のプログラミング講座ブログを書こうぜ☆(^~^)?」
「 そんな一つ飛ばしブログを喜んでサーチしてるやつは 筋が悪いよな☆」
「 桂馬の動きを まともに書きなさいよ! 左へ1、上に2 と、 右へ1、上に2 の2つなのよ!」
「 そんな複雑なプログラミングは もう嫌になったんだぜ☆(^~^)」
「 ↑ クラスの説明で だいたい 上の図みたいな説明を受けたやつは 地の底の迷路に落ちていくぜ☆
オブジェクト指向を使いこなして 悪いプログラミングを書くぜ☆」
「 アフィリエイトで 猫ばっか 上位にいるから 嫌になったのよ。
ちゆりがコンビニ食品の栄養を調べて作ったアフィリエイト用の集客サイトより 猫の写真2、3枚 並べた主婦のブログが上にくるのよ!
今日の猫ちゃんのご機嫌はナナメですね~」
「 オブジェクト指向の継承の機能を使って 現実世界に照らし合わせた 生物大図鑑を作ってはいけない☆
お前ではなく、そのシステムの要件に必要なものだけを 照らし合わせろだぜ☆」
「 顧客の意見、感情は無視し、 顧客に本当に必要なものをエスパーの力で察知し
だいたい イケそうな落としどころのものを 押し付けることだぜ☆」
「 オブジェクト指向でも それはできるだろ☆ 反証があるのか☆?」
「 顧客の要望には際限なく、犬と猫だけを扱えばよかったシステムに タンスの預金や もらった名刺、ホテルでもらったスリッパ まで扱いたくなるだろう☆
顧客に本当に欲しかった要望というものは定形ではない☆」
「 ↑ 要望に沿うと なんでもできるオブジェクトが生まれてくる☆ そして こいつの使い方は イマイチ分からない☆
なんなら 別のシステムとも くっついていて こいつをいじると 何が起こるか分からない☆
犬とか 猫とか プログラマーが勝手に そうであって欲しいと 昔のある時点で思っていた願望だぜ☆」
「 それは オブジェクト指向 の使い方が悪いんじゃないの?」
「 悪い使い方をしたオブジェクト指向 と出会うんだぜ☆
そして それを リプレースしようとした 腕の立つプログラマーもまた 新たなる サムシングを造るんだぜ☆」
「 本当にやらなければならないのは 業務の理解と その改善だぜ☆
オブジェクト指向には それについて なんの力もない☆ プログラムに何でも押し付ければいいと思ってるのは間違いだぜ☆
クソを正しくプログラミングしたら 正しいクソだぜ☆」
「 その前提条件は クリアーしているものとして プログラミングの話しをしましょうよ?」
「 焼き尽くしているのは 入門書ではなくて 全て ではないのか☆?」
「 本当の オブジェクト指向プログラミング というものを教えてやろう☆
is-a
、 has-a
とか考えても無駄だぜ☆」
「 ↑ これは プロシージャ型プログラミングだぜ☆
上司、 チームのメンバー、 フリーランスのプログラマー、 天才プログラマー、 誰も これより難しいプログラミングをすることはできない☆」
「 まず だいたい尋ねられるのは ファイルのあの列、何が入ってるんだっけ、とかいう データの仕様 だぜ☆
そのあとに こんなデータが入ってくると 何が出てくるんだっけ、とかいう 処理の内容 だぜ☆
このとき プログラマーの口から出てくるのは……☆」
「 それはそうかも知れないけど オブジェクト指向 は もっと その話の 下地にあるものなのよ。
ストロベリー・フラペチーノ と 水道管 ぐらい話しの階層が違うの」
「 水道管の話しで ストロベリー・フラペチーノ を飲みたい顧客と 対話ができるかだぜ☆!
究極のオブジェクト指向の極意は 仕事をプロシージャ指向に 落とし込むことだぜ☆
仕事が オブジェクト指向になってたら 泡吹く☆」
「 言ってしまえば 至高のプログラミングとは シーケンス☆!
人類に 手順書 以上のことができる知能はない☆(^~^)!」
「 CRUD とか、 非同期処理とか いっぱいあるのに……☆」
「 人類 には理解できない☆(^~^) 図で説明すると……☆」
「 ↑ 顧客は (1)いくらで、(2)いつまでにできるもので、(3)当然要望を満たす高品質で不具合がないか、 にしか興味がないし、
業務と開発の分かる人は (1)フォルダー数が少ない (2)ファイル数が少ない (3)行数が少ない (4)簡単 (5)当然要望を満たす高品質で不具合がないか の5つしか興味がない☆」
「 そこで オブジェクト指向が分かる人 が本当に やらなければならないのは……☆」
「 マウスクリックで調べられる フォルダー数、ファイル数 を少なくすることだぜ☆
キロバイトも減らせだぜ☆」
「 逆じゃないの? プログラミングは 紙に印刷して キログラムで良し悪しを測るんじゃないの?」
「 本当の オブジェクト指向 の話しが始まっている☆ カプセル化とか喜んで読んでいるやつは ペーパードライバー☆」
「 ↑ 話を単純にして、クラス1つを1ファイルに書いているとしよう☆
ファイルを2つも増やす コスト に対して、どれぐらい メリット があるかだな☆」
「 大容量時代に ファイル数を気にするとか 無意味なんじゃないの?」
「 大容量、高性能CPUは、プログラミングを 実行時の性能で評価しない方に働いている☆
ダウンロードした圧縮ファイルを解凍したときの 気分 で評価は決まる☆
できれば 開けたファイルに プログラムは 何も書いてない ぐらいがいい☆
だいたい この圧縮ファイルは メールの向こう側の あんまりプログラマーじゃなさそうなやつが どこかで開けている☆」
「 しかし そうもいかないので、プログラマーは仕方なく申し訳なさそうに ちょこっと プログラムを書くことだけが 許されるんだぜ☆」
「 プロシージャ言語ぐらいの 上から下へ読んでいくやつか☆」
「 プログラマーが 一番 抑えておかなければいけないのは、
プログラマー以外の人種は プログラムなんか嫌いだ ということだぜ☆
これは超重要、最重要☆」
「 社長から見れば 開発はコスト☆ 製品もコスト☆ 売上にはなんも直接影響しない☆(^~^)
プログラマーは 全然歓迎されていない人件費 ぐらいに思えだぜ☆
Windows XP のサポートが切れて パソコンを買い替えろなんて、IT屋が勝手にやってる コストだぜ☆」
「 プログラマーの使い方が分かってないんじゃないか☆? 製造の発想だろ☆
物を製造するのは プログラマーの仕事ではないぜ☆
プログラマーの仕事は 要件に対し 最大値の結果を返すことだぜ☆」
「 全部必要、全部重要 という要件定義しかできないところに プログラムは必要ない☆
ブルートフォースやってりゃいい☆
何が不要か、どれを捨てれるか 順序付けれる人類も存在しない☆ 言ってしまえば 自由にプログラムしたけりゃ 一代目の社長になれだぜ☆」
「 プログラムなんか習得しても ほとんどの人に 役に立たないじゃないの」
「 オブジェクト指向で すぐ役に立つ1番目は 実装の隠蔽 だぜ☆」
「 お父んの口から 初めて オブジェクト指向っぽい単語が出てきたぜ☆」
「 これは もちろん、 変更の影響を最小限に留めるとか そういうことではなく、
会社で出会う 社長も 上司も システムエンジニアも だいたい プログラミングなんか嫌いだ というところに根拠がある☆
プログラムなんか読まされない方がいい☆ 」
「 上司のレビューから逃げ切るための オブジェクト指向プログラミング なのね」
「 これから プログラマー とかに なってしまうやつは覚えておけだぜ☆
わたしは プログラムが嫌いなんだ、長いコードなんか嫌いなんだ、あれこれ考えて使い分けるのは嫌なんだ、 という人格を持て だぜ☆
プログラムが好きそうなやつが書いたプログラムを書いてはいけないぜ☆
プログラムは 成果物の物量が少ない方がいい☆ ブレイン・ファック はやりすぎだが……☆」
<書きかけ>
Crieitは個人で開発中です。
興味がある方は是非記事の投稿をお願いします! どんな軽い内容でも嬉しいです。
なぜCrieitを作ろうと思ったか
また、「こんな記事が読みたいけど見つからない!」という方は是非記事投稿リクエストボードへ!
こじんまりと作業ログやメモ、進捗を書き残しておきたい方はボード機能をご利用ください!