タグ

OOPに関するrgfxのブックマーク (13)

  • 設計要件をギッチギチに詰めたValueObjectで低凝集クラスを爆殺する - Qiita


    /// <summary></summary>public class ContractAmount {public int AmountIncludingTax; public decimal SalesTaxRate; } ()Controller /// <summary></summary>public class ContractController { private ContractAmount _contractAmount; /// <summary></summary>
    設計要件をギッチギチに詰めたValueObjectで低凝集クラスを爆殺する - Qiita
    rgfx
    rgfx 2019/11/05
  • オブジェクト指向が0.05%も理解できない記事


        C++JavaC# SimulaSmalltalkRuby JavaScriptPythonGo辿 ErlangElixir
    オブジェクト指向が0.05%も理解できない記事
    rgfx
    rgfx 2018/10/04
    良さ
  • 新人プログラマに知っておいてもらいたい人類がオブジェクト指向を手に入れるまでの軌跡 - Qiita

    あわせて読みたい 新人プログラマに知ってもらいたいメソッドを読みやすく維持するいくつかの原則 ペアプログラミングして気がついた新人プログラマの成長を阻害する悪習 「オブジェクト指向プログラミング」と「関数型プログラミング」のたった一つのシンプルな違い あきらめるにはまだ早い!ソースコードの品質向上に効果的なアプローチ 2015年に備えて知っておきたいリアクティブアーキテクチャの潮流 この記事について この記事は新人向けの研修内容を再編集してお送りいたします。 ここで述べる内容はどのようにして現在のプログラミングスタイルが生まれてきたかを理解することで、よりよいプログラムを書くためのもので、正確なソフトウェア工学の歴史を学ぶためのものではありません。正確な歴史を把握したい場合は、原典をあたるようにしてください。 また、想定している読者は「よくあるオブジェクト指向プログラミングの学習」を既にし

    新人プログラマに知っておいてもらいたい人類がオブジェクト指向を手に入れるまでの軌跡 - Qiita
  • ドラゴンボールで学ぶオブジェクト指向 改 - 達人プログラマーを目指して

    ドラゴンボールといえば、大変に人気の高い国民的、いや世界的な漫画、アニメですが、昨日匿名ダイアリーでドラゴンボールをネタにしたオブジェクト指向の解説がホッテントリに入っていました。 ドラゴンボールで学ぶオブジェクト指向 多くの人に親しみやすい題材でオブジェクト指向の考え方を解説するというのは非常に興味深い試みなのですが、オブジェクト指向の説明としては不適切なところがあり、ちょっと残念な内容になっています。私自身ドラゴンボールの専門家(ドメインエキスパート)ではないため、不正確なところがあるかもしれませんが、ストーリーを思い出しながら、私なりにドラゴンボールをネタとしたオブジェクト指向の解説にリトライしてみたいと思います。 なお、オブジェクト指向でもプログラミング言語によって表現できる内容が異なるため、当然設計技法は違ってきます。ここではJavaC++、C#、Visual Basicといっ

    ドラゴンボールで学ぶオブジェクト指向 改 - 達人プログラマーを目指して
    rgfx
    rgfx 2011/03/18
  • 共通関数継承のデメリットを説明せよ - @katzchang.contexts

    共通関数継承とは、あるクラスで共通的に使うだろう関数やメンバを、親クラスのメソッドやメンバとして定義するパターンだ。Constant interfaceパターンやimport staticあたりが関係するアンチパターンとされるモノの一つで、神様ルートクラスを嫌い、POJOを好むのあたりの、ごく初歩な議論になるだろうと思う。 package spike; public abstract class SuperUtil { /** * 時刻形式の文字列から、日付部分を抜き出す */ protected String timestamp2Date(String timestamp) { if (validTimestamp(timestamp)) return timestamp.substring(0, 10); return ""; } /** * 時刻形式の文字列から、時間部分を抜き出す

    共通関数継承のデメリットを説明せよ - @katzchang.contexts
  • 継承は害悪か。

    くっくっkura 🇯🇵🦀 @PG_kura OOP で継承は害悪だとは思うけども、実際に継承を言語から消去したとして一般 PG に受け入れられる言語になり得るだろーか。 2010-12-31 18:04:33

    継承は害悪か。
    rgfx
    rgfx 2011/01/06
  • デザパタ140文字


     @tail_y  2010-04-22 08:29:36  @tail_y 使使 2010-04-22 08:53:45
    デザパタ140文字
  • DCIが面白い件 - ヽ( ・∀・)ノくまくまー(2010-05-12)

    ● DCIが面白い件 DCI凄い!ヤバイ! 「DCIアーキテクチャ - Trygve Reenskaug and James O. Coplien」(翻訳) http://d.hatena.ne.jp/digitalsoul/20100131/1264925022 前に読んだときは難しすぎて(長すぎて)途中で挫折したけど、今改めて読んだらDCIは凄いと気付いた。以下、まとめ。 今回、内容理解の決め手となったのは「前半部分を読まない」ことだった。 そんな無謀な読み方(読んでないのだけれど)をした私の理解なので、 もちろん間違いはあるはず。 という前提で、 ツッコミを入れる気満々なテンションでどうぞ。 古来からプログラムの中心は<データ>であった なぜなら、それが設計の中で一番変化しにくい要素(箇所)であるから そして、<データ構造>とそれに対する<処理>の2つで考えるようになった (手続き型

    rgfx
    rgfx 2010/05/14
    "DCIでは、このときの関係者をデータ(D)、場所をコンテキスト(C)、処理をインタラクション(I)、と呼んでいる。"
  • [ 技術講座 ] Domain-Driven Designのエッセンス -目次-|オブジェクトの広場

    技術講座] DDD難民に捧げる Domain-Driven Designのエッセンス 第 1 回 ドメイン駆動設計とは 第 2 回 DDDの基礎と実践 第 3 回 大規模なプロジェクトへの適用 DDDパターンカタログ パターン名 参考訳 I. Putting the Domain Model to Work Ubiquitous Language ユビキタス言語 Model-Driven Design モデル駆動設計 Hands-On Modeler 実践的モデラー II. Building Blocks of a Model-Driven Design Layered Architecture 層状アーキテクチャ Smart UI (アンチパターン) 利口なUI Entities エンティティ Value Objects 値オブジェクト Services サービス Modules モジ

  • すごく・・・紙文化です

    Kenichiro Ota @oota_ken CoreBanking Renovation Framework...., これが真のMDDのなのか!いきなりビジネスエンティティのライフサイクル分析から始まる!僕がやりたかったのはこれか!さらばExcel方眼紙! 2010-03-27 20:48:56

    すごく・・・紙文化です
  • PHPによるデザインパターン入門 - Do You PHP?


    PHP PHPISBN4-7980-1516-4 2006/11/23 PHP使GoFGoFCentOS4.4/WindowsXPSP2PHP5.1.x/5.2.0 1     GoF  使 使 PHP PHP PHP52
    PHPによるデザインパターン入門 - Do You PHP?
  • Martin Fowler's Bliki in Japanese - ドメインモデル貧血症


    http://martinfowler.com/bliki/AnemicDomainModel.html  Eric Evans  Domain Model  
  • オブジェクト指向をわかりたいなら今すぐ『オブジェクト指向でなぜつくるのか』を読め - 思っているよりもずっとずっと人生は短い。


     UML : /: BP: 2004/06/03: : 34 : 448 (198)   
    オブジェクト指向をわかりたいなら今すぐ『オブジェクト指向でなぜつくるのか』を読め - 思っているよりもずっとずっと人生は短い。
    rgfx
    rgfx 2008/07/26
  • 1