タグ

オブジェクト指向に関するasflash8のブックマーク (8)

  • オブジェクト指向におけるデザインパターン

    HOME Last modified: 2014-01-17 ここでは Pree の著書の論旨に基づきつつ、他の文献からの引用をおりまぜて、 「デザインパターン」の意義と概略を整理してみたいと思います。 あくまでも私の解釈と経験に基づく理解なので、誤りや説明不足はご容赦ください。 オリジナルの文献を手に取るきっかけとなれば幸いです。 文献 特集「デザインパターンとオブジェクト指向設計」 月刊ドクター・ドブズ・ジャーナル日版, 1997年10月号. Design Patterns Elements of Reusable Object-Oriented Software, by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides, Addison-Wesley Professional Computing Series,

  • 🏗️ ドメイン駆動設計と依存性逆転の原則

    社内LTにて、ドメイン駆動設計と依存性逆転の原則を布教しましたʕ◔ϖ◔ʔ

    🏗️ ドメイン駆動設計と依存性逆転の原則
  • 設計におけるオブジェクトの責務分配に有効なものさし -凝集度と結合度- | オブジェクトの広場

    1. はじめに 皆さん、こんにちは。私はオージス総研でオブジェクト指向技術を用いたSI、コンサルティングを業務とする、プロの仕事を目指す、一介のUMLシルバーレベル1のプログラマ2です。ソフトウェア業界では、オブジェクト指向も、もはや普通の技術として認知されています。有名なマイクロソフトのVB、VC++をはじめ、現在使用している開発環境のほとんどは、すべてオブジェクト指向をサポートしているといってもよいでしょう。オブジェクト指向を知らない人でも、気が付かないうちにオブジェクト指向している、なんてこともあるようです。 でもオブジェクト指向は、単にソフトウェアをより良く作るための手段のひとつですから、上手く利用しないと、そうするつもりはなくても、とんでもないソフトウェアを作ってしまうことになりかねません。悲しいことに、オブジェクト指向は結構敷居が高いと思います。オブジェクト指向のメリットである

    設計におけるオブジェクトの責務分配に有効なものさし -凝集度と結合度- | オブジェクトの広場
  • 単一責任の原則(Single responsibility principle)について、もう一度考える | オブジェクトの広場

    単一責任の原則(Single responsibility principle)について、もう一度考える はじめに オブジェクトの広場をご覧の皆様ならば、「SOLID原則」という言葉を聞いたことがあるかもしれません。 SOLIDとは、以下の5つのソフトウェア設計原則を並べたバクロニムです。 Single Responsibility Principle:単一責任の原則 Open/closed principle:オープン/クロースドの原則 Liskov substitution principle:リスコフの置換原則 Interface segregation principle:インターフェース分離の原則 Dependency inversion principle:依存性逆転の原則 ソフトウェアエンジニアが知っておくべき設計原則のセットとして、Clean Architecture や

    単一責任の原則(Single responsibility principle)について、もう一度考える | オブジェクトの広場
  • 単一責任原則で無責任な多目的クラスを爆殺する - Qiita

    この記事は クラウドワークスアドベントカレンダー2020 8日目の記事です。 概要 こんにちは、クソコードを爆殺リファクタリングするのが大好きなミノ駆動です。 今回は単一責任原則の話です。 単一責任原則はSOLID原則のひとつとして有名で、2020年のオブジェクト指向カンファレンスのアンケートでも、SOLID原則の中で最も人気がありました。 皆さんは単一責任原則を遵守した設計をしていますか。 どんな構造が単一責任設計で、一方どんな構造が単一責任でない設計か、明確に意識していますか。説明できますでしょうか。 ところで「単一責任原則とはなんぞや」について、少なくとも私の観測範囲では、概念的な話にとどまっているものが多く、コードレベルで具体的に説明しているものは少ないように感じます。 そうした状況からか、単一責任原則の解釈が人によって違っていたりしているように感じます。 記事は、今一度単一責任

    単一責任原則で無責任な多目的クラスを爆殺する - Qiita
  • Rubyによるデザインパターン5原則 - Qiita

    概要 改めて基を学ぶ。 Rubyによるデザインパターン第1章。 デザインパターンとは プログラミングにおいて繰り返し現れる問題に対する、適切解のパターン。 無駄無く設計されたオブジェクト指向プログラムの実現をサポート。 パターンとしてカタログ化されていることで 車輪の再発明を防ぐ デザインパターンの根底にある5つの考え 変わるものを変わらないものから分離する プログラムはインターフェイスに対して行う(実装に対して行わない) 継承より集約 委譲、委譲、委譲 必要になるまで作るな(YAGNI) 変わるものを変わらないものから分離する ソフトウェアの仕様には必ず変更が加わるもの。 変わるものと変わらないものを分離しておくことで、 「仕様の変更」に対して「システムの変更」を出来る限り局所的にする。 プログラムはインターフェイスに対して行う(実装に対して行わない) 可能な限り「一般的・抽象的なもの

    Rubyによるデザインパターン5原則 - Qiita
  • Iterator パターンの本質 · eed3si9n

    2011-12-17 これは Scala Advent Calendar 2011 の 17日目の記事です。 specs2 の作者であり、@etorreborre としても活発に発言を続けるシドニーの強豪 Eric Torreborre さんが書いた “The Essence of the Iterator Pattern” を翻訳しました。翻訳の公開は人より許諾済みです。翻訳の間違い等があれば遠慮なくご指摘ください。 2011年6月24日 Eric Torreborre 著 2011年12月17日 e.e d3si9n 訳 去年読んだ論文で一番気に入ったのは “The Essence of the Iterator Pattern”(以下、EIP)だ。これを読んだ後で、今まで何年も使い続けてきたあるものに対する考えがガラリと変わった。それは、for ループだ。 この論文の中からいくつか

  • Pythonのオブジェクト指向プログラミングを完全理解 - Qiita

    1. オブジェクト指向の起源 2003年チューリング賞の受賞者アラン・ケイさんはよくオブジェクト指向プログラミングの父と称されます。ご人も憚ることなく、幾度、公の場で発明権を宣言しています。しかし、ケイさんは「C++」や「Java」などの現代のオブジェクト指向言語を蔑ろにしています。これらの言語は「Simula 67」という言語を受け継いだもので、私が作った「Smalltalk」と関係ないのだとケイさんは考えています。 オブジェクト指向という名称は確かにアラン・ケイさんに由来するものです。しかし、C++Javaで使われている現代のオブジェクト指向は当初のと結構違います。ケイさん自身もこれらの言語を後継者として認めないです。では、ケイさん曰くC++Javaの親であるSimula 67という言語はどんな言語でしょうか。ここで、簡単なサンプルコードを見てみましょう。 Class Recta

    Pythonのオブジェクト指向プログラミングを完全理解 - Qiita
  • 1