オブジェクト指向

目的を規定せずにモデリングを考えても意味がない

オブジェクト指向の本では「自転車をモデリングしてみましょう」「鳥をモデリングしてみましょう」ということが、どういうシステムで使うか規定せずによく書かれています。 けれども、モデリングではどういうシステムで使うかということが大事で、それを決め…

オブジェクト指向はコードを複雑に読みにくくする

「オブジェクト指向するとプログラムが読めなくなるから禁止」のような話は昔からあって、新しい技術についてこれない人を揶揄するようなニュアンスで使われていましたが、実際にはこれはオブジェクト指向迷路にうんざりした現場での率直な意見だと思います…

「オブジェクト指向神話からの脱却」という特集をWEB+DB PRESSで書きました

「オブジェクト指向神話からの脱却」というあおり気味タイトルの特集をWEB+DB PRESS vol.132で書きました。 12/24発売!クリスマスプレゼントです WEB+DB PRESS Vol.132作者:きしだ なおき,加藤 尋樹,斉藤 洸紀,牟田 裕太郎,吉澤 政洋,朝日 リナ,鈴木 僚太(…

インスタンスとオブジェクトの違い

インスタンスとオブジェクトは混同しがちで区別がようわからんになりがちです。 とりあえず某所で説明したものを再構成します。 ※2022/12/10追記: クラスに対するのはインスタンスになるべき(たとえばクラス変数とインスタンス変数)なので、ちょっと修正する…

オブジェクト指向は継承で多態するプログラミング

オブジェクト指向って継承による多態があるからこそなんだけど、継承が非推奨になって以降に雰囲気でオブジェクト指向を知った人には、継承はオプションでカプセル化だけでオブジェクト指向って言ってしまいがちに思います。 実際はカプセル化はオブジェクト…

なぜオブジェクト指向方法論に代わる方法論が出ないのか

1990年代にオブジェクト指向分析・設計の方法論がめちゃ流行ったことがあります。 ただ、そのブームが終わって、後続となるような方法論が流行ることはありませんでした。 で、なぜなのか考えていたのですけど、オブジェクト指向方法論のウリは分析段階で出…

オブジェクト指向は差分プログラミングとデータ分類をまとめて扱おうとしたのが弱点

オブジェクト指向の最大の特徴は、モジュールと型を一体に扱ったことです。 メイヤーの本では次のような「オブジェクト指向の基準」があげられています。 クラスが唯一のモジュールでなければならない すべての型はクラスに基づいていなければならない つま…

オブジェクト指向はすでに粒度が時代にあっていない

定期的にオブジェクト指向disを書いてしまってるのだけど。 とりあえずオブジェクト指向の話をすると定義が人によって違いすぎるので、改めてここでの定義を書いておくと 、基本的にはOMTの「データ構造と振る舞いが一体となったオブジェクトの集まりとして…

オブジェクト指向には、カメラがやっとついたころのガラケーのイメージがある

某所でオブジェクト指向についていろいろ書いたのでまとめておく。 問題意識としては初学者がなにかというと「オブジェクト指向できるようになりたい」のようなことを言うけどそこまでの優先順位でがんばるものではないんでは、というところです。 まず前提…

オブジェクトはストックで、関数はフロー

基本的にオブジェクトと関数はおんなじもので、Javaのラムダ式では記述は関数だけど扱いはオブジェクトになってたりします。逆に、関数でオブジェクトを実現することもできます。 なので、オブジェクトと関数が、モノとしてどう違うかっていう話にはあまり意…

Software Design 9月号でオブジェクト指向の記事を書きました

書きました! Software Design 2014年9月号|技術評論社 Software Design (ソフトウェア デザイン) 2014年 09月号 [雑誌]Amazon

オブジェクト指向について

参考までに、ぼくの基本的な定義は、ランボーの「データ構造と振る舞いが一体となったオブジェクトの集まりとしてソフトウェアを組織化すること」という定義に従っています。そのようなオブジェクトが単体ではなく組織化されるということが重要です。オブジ…

オブジェクト指向は禁止するべき

プログラムがまだ不慣れな人が「プログラムちょっとわかるようになったけど、まだぜんぜんオブジェクト指向とかできてません」のように言ったり、ちょっと慣れた人が「このソース、ぜんぜんだめ。オブジェクト指向ができてない」にようなことを言ったり、ま…