はい、はい
私は長い間、このトピックについて黙っていました。話す時間です。
- 誰もがこの概念をオブジェクト設計に適用しようとしましたか?
はい。私は20年以上にわたってオブジェクトの正規化(およびそのための基礎となるオブジェクト指向理論)の形式化に取り組んできました。
少なくとも理論的には、データとコードは交換可能であることを認識することで。これは、正規化の原則と関係演算がコードだけでなくデータにも適用できることを意味します。
これまでのところかなりうまくいきました。得られた洞察は、私の設計、分析、リファクタリング能力の「秘密兵器」であったと信じています。
私は最終的には自分で研究を終了し、暗黙のツールを作成する時間があると考えたため、これについては何も公表していません。
しかし、私の人生で他のすべてがより重要で、より楽しく、そして/またはより有益であるということで、私は自分で研究を完了する時間がないだろうという結論に達しました。今まで。また、単独で作業を完了するために必要なCSの理論的基礎がないという大きな可能性もあります。
私は地元の大学で、博士課程の候補者を1人か2人、彼らがその原因を取りたいかどうかを尋ねましたが、残念ながら地元の大学はプログラミング言語の意味論の適切な基礎を教えていません。
この分野でいくつかの興味深い研究がありましたが、そのすべて-私が知っている-それはマークを下回っています。正規化はリレーショナルバックグラウンドに由来するため、オブジェクト指向モデルには適用されないと誤って仮定するか、オブジェクトによって定義されたデータにのみ正規化が適用されると仮定します。しかし、いくつかの非常に興味深いニアミスプロジェクトがあります...
コードに正規化を適用すると、本当に興味深いことが起こります。これがすべてのリファクタリングの基礎であると私は主張します。
だから今、私は、DCでのDevDays 2011で講演するよう頼むことによって、言葉を広めることと、このようなものに興奮しているコミュニティがあるかどうかを調べることが最善だと考えています。
ここにご紹介します:正規化とは、何かを最小化して非冗長にするプロセスです。したがって、オブジェクト指向プログラミングの自分自身を繰り返さない(DRY)原則は、正規化の目標を明確に表しています。よく知られているオブジェクト指向の設計/プログラミング/リファクタリングの原則はすべて、オブジェクトの正規化の論理的な結果であることを示すことができると思います。リファクタリングだけでなく、Object Normal Form(ONF)のシステムで実行できる興味深いこともあると思います。