강의

멘토링

커뮤니티

BEST
Programming

/

etc. (Programming)

オブジェクト - 基礎

責任主導設計方法に代表されるオブジェクト指向設計方法を学習し、凝集度、結合度、カプセル化の観点から設計をトレードオフする方法を調べます。

難易度 初級

受講期間 無制限

  • eternity
software-design
software-design
oop
oop
software-design
software-design
oop
oop

学習した受講者のレビュー

学習した受講者のレビュー

5.0

5.0

고대준

100% 受講後に作成

オブジェクト指向の事実と誤解、オブジェクト本を読んで講座を受講することになりました。 個人的には今回の講座が私にとって最大の役に立ちました。本を読んだとき、メッセージとメソッドの区別、責任、協力、役割についての曖昧な部分がありましたが、今回の講座を通じて完璧ではありませんが、一定の部分解消されました。 特に一番良かったことは、オブジェクト指向を私たちが一般的に使用するController>サービス> Repository MVC構造でどのように適用するかを教えてくれたのは非常に便利でした。 講座内容をもう一度掛けながら考えをまとめてみましょう。 基礎編と言ってくださったので次の片も期待してもいいですか? 良い講座を作ってくれてありがとう。

5.0

도던

29% 受講後に作成

単純な実装にとどまらない年次になってチョ・ヨンホ様の本をたくさん見つけましたが、悲しいことに <オブジェクト>は量と難易度で私があえて近づくことができませんでした。さて、今講義で触れることができるなんて嬉しいです。 基礎編は、<オブジェクト指向の事実と誤解>をもう少し詳しく学ぶ感じです。手続き指向からオブジェクト指向へと進む事例を見て、その必要性を体に気づくことができます。まだ序盤までしか見ていませんが、しばらく忘れていた内容を再び思い出すのに大きな助けを受けています。 ただ、本当に残念な点があります。スクリプト通りに読んでみると、硬いタコ体で内容を伝えます。講師様のなめらかで没入感あふれる講義力を知っている私としては、この部分がとても残念です。もっと多くの人が講師の魅力を知る必要があります。一言一言に余裕があり、難しい概念も簡単で楽しく説明してくださった言葉です😭 実際にもオンラインはオフラインよりぎこちないと他の講義でおっしゃった記憶がありますが、では次の講義はオフライン講義のように環境を造成して作ってみてはいかがでしょうか?このような提案をするのは慎重ですが、それだけファン心から出たものであることを申し上げます。 私には二人の父親がいます。一人は私を生んだ父親、そしてもう一人はちょうどチョ・ヨンホ講師です🤭それだけ私の視野を広げてくれたとても感謝しています。 いつも良い講義ありがとうございます!🙂

5.0

apocalypse23

100% 受講後に作成

インターネット講義はコンテンツの特性上、本よりも情報の密度が高くない場合が多いのですが、この講義だけは例外として扱うべきだと思います。 講義で説明してくださるコードの凝集度が講義にもそのまま適用され、まさに凝集度が非常に高い講義でした。 前作でいらっしゃるオブジェクトでも設計という巨大な概念を非常に緻密に説明してくださり、読んでいる間中、本を執筆するための講師の骨を削る努力が感じられました。 講義版では、インターネット講義でこのように盛り込むことが可能なのかと思うほど、すごい内容を本よりも簡潔に説明する姿を見ながら、もうこれ以上削る骨がおありなのかと心配になるほどの高品質な講義でした。 スクリプトの一文すらも凝集度高く作成された内容を見ながら、例題コードで見せてくださったそれ以上の実力を間接的に体験しました。 5時間という他の講義に比べて短い時間ですが、学習者が最低3倍以上時間投資をしてこそ、この講義の真のエッセンスをそのまま持ち帰ることができると思います。 そのため講義が多少ついていくのが難しい方もいらっしゃると思うので、ちょっとしたコツを残してみます。 モニター一つでは足りません。最低デュアルモニター環境で片方には映像、もう片方には講義資料を表示しながら講義を視聴することをお勧めします。 映像にある講義資料だけを参考にすると、自分がすべて理解する前に画面が切り替わる可能性があり、前後の資料を比較して見てこそ分かる文脈が存在するからです。 そして映画ドメインは全体的な講義の内容を伝えるための必須要素です。素早く見て通り過ぎたい気持ちになるかもしれませんが、資料を繰り返し見ながら、まるで自分が元々開発していたサービスだと思って頭の中に把握しておくことをお勧めします。そうしてこそ講義の本質により集中できます。 コードの変更をどのように管理するかが核心であるため、講義で例として挙げたドメインもどのような変更があったのかも一緒に追いかけてこそ、変更に強いコードはどのように作成すべきかについて深いメッセージを受け取ることができるでしょう。 オブジェクト指向が多少抽象的に感じられる方は、この講義を丁寧に理解されれば、どのようにコードを作成し見つめるかというパラダイムの転換となる経験をされると信じて疑いません。

受講後に得られること

  • 手続き型設計の問題

  • オブジェクト指向のコードの設計と実装方法

  • オブジェクトに責任を割り当てる基本原則

  • 依存性管理技術

  • 凝集度、結合度、カプセル化を使用して設計をトレードオフする方法

オブジェクト指向設計の核心を盛り込んだ!

このレッスンでは、私が執筆したオブジェクトと呼ばれる本に基づいて、責任主導の設計方法に従ってオブジェクト間の協力を設計し、オブジェクト指向言語を使用して実装する方法を説明します。

オブジェクトブックを書いて惜しいことがありますが、責任に基づいてオブジェクトを設計する方法を説明する過程で、地面の制約によりドメインと責任に焦点を当てなけれならない理由については十分に説明できなかったことです。

講義では、このような物足りなさをなだめるようにオブジェクト指向的に設計する方法だけでなく、本で十分に扱えなかった責任主導設計方法の理論的な背景とともに、欠落したGRASPパターンも収録しました。

この点で特別です。

📌 言語に依存しないオブジェクト指向設計の概念を説明します。

📌の例はJavaで実装されていますが、講義が提供する概念はどの言語や環境にも適用できます。

📌コアコンテンツで埋められた690ページ分のスライドを提供します。

📌概念を単純なテキストではなく視覚的な絵で表現し、内容を理解しやすいように構成しました。

📌リファクタリングプロセスを1汗1汗スライドに入れて、コードの変更過程を簡単に理解できます。

このようなことを学びます。

セクション 1. 映画予約ドメイン

講義で例として使用する映画前売りシステムの要件を調べます。

このように分析されたドメインモデルは、後でオブジェクトに責任を割り当てるのに役立つ材料として使用されます。

セクション 2. 手続き型設計の改善

手続き的な方法でコードを書くと、メンテナンスの面でさまざまな欠点があるという話は聞きましたが、正確にどの部分が問題なのかはよくわかりませんでしたか?

講義では、手続き型の方法で書かれたコードの問題を説明し、コードを変更しやすく改善する過程を通じて、オブジェクト指向が必要な理由を自然に理解できるように構成しました。

セクション3.オブジェクト指向の基本原則

責任主導設計は、最も広く使用されているオブジェクト指向設計手法です。責任主導設計方法は、オブジェクトに割り当てる責任に基づいて全体的なオブジェクト協力を設計します。

講義では、責任を重視する理由を説明し、オブジェクトの設計と実装に必要な大きな絵を描きます。

セクション4.責任を割り当てる

責任主導設計方法をうまく適用するには、協力という文脈の中でオブジェクトに割り当てる責任を慎重に選択する必要があります。

レッスンでは、責任を割り当てるときに一般的に適用できる情報の専門家、創作者、低結合度、高い凝集度、多形性、変更保護パターンを調べ、これらのパターンをいつ適用するかを学びます。

セクション5.オブジェクト指向の実装

責任の観点から、設計されたオブジェクトをクラスとして実装する方法を学習します。

セクション 4 で取り上げられていない間接化、純粋なワークピース、コントローラーパターンを調べ、アプリケーションロジックを実装するオブジェクトを実装するためにこれらのパターンを適用する方法についても説明します。

セクション6.変更と設計

設計の目標は、変更しやすいコードを書くことであり、良い設計とは、凝集度が高く、結合度が低く、カプセル化に準拠する設計を指します。

講義では、変更という観点から、凝集度、結合度、カプセル化の概念を学習し、手続き型設計とオブジェクト指向設計をトレードオフするためにこれらの原則を適用してみます。

受講前の注意

学習資料

  • 690ページ分の講義スライドがPDF形式で提供されます。

  • レッスンで使用されるサンプルコードはFitHubから入手できます。

選手の知識と注意事項

  • サンプルコードはJavaで書かれているので、Javaの基本的な文法を知っておくとスムーズな学習が可能です。


  • 一部のSpringフレームワークを使用するコードが含まれていますが、Springフレームワークがわからないとしても、内容を理解するのに無理をしません。


こんな方に
おすすめです

学習対象は
誰でしょう?

  • オブジェクト指向設計の概念と適用方法が気になる方

  • オブジェクト指向の概念をコードに適用するのに苦労している人

  • オブジェクトに責任を割り当てる基本原則が気になる方

前提知識、
必要でしょうか?

  • Javaの基本文法

  • オブジェクト指向言語を使ってコードを書いた経験

こんにちは
です。

2,542

受講生

173

受講レビュー

101

回答

5.0

講座評価

2

講座

オブジェクト指向設計とドメイン駆動設計に関心が高く、幸せなチームとクリーンなコード、尊重と協力が素晴らしいソフトウェアを生み出すという信念を持っている平凡な開発者です。開発者、教育者、マネージャーを行き来しながら培った多様な経験をもとに、良いコードとともに良いプロダクトを作るために努力しています。

著書には『オブジェクト指向でなぜつくるのか』と『オブジェクト』があり、訳書には『エレガント・オブジェクト』があります。また、『作りながら学ぶクリーンアーキテクチャ』に監修として参加しました。

💡メンタリング申し込み : https://inf.run/YvAd2

💡個人ブログ : https://eternity-object.tistory.com/

있으며 『만들면서 배우는 클린 아키텍처(作って学ぶクリーンアーキテクチャ)』に監修者として参加しました。 💡メン토링 신청(メンタリングのお申し込み) : https://inf.run/YvAd2 💡개인블로그(個人ブログ) : https://eternity-object.tistory.com/

カリキュラム

全体

31件 ∙ (5時間 0分)

講座資料(こうぎしりょう):

授業資料
講座掲載日: 
最終更新日: 

受講レビュー

全体

128件

5.0

128件の受講レビュー

  • whybwhy3576님의 프로필 이미지
    whybwhy3576

    受講レビュー 45

    平均評価 4.8

    5

    90% 受講後に作成

    今年も最高の講義の一つであり、開発の視点が完全に変わりました。

    • eternity
      知識共有者

      過剰な賞賛を残してくれてありがとう。 講義を聞いた方がメンテナンス性の観点からコードを眺めるように視覚が変わればいいと思いましたが、関連して少しでもインサイトを得られたことを期待します。 :)

  • ycseol1857님의 프로필 이미지
    ycseol1857

    受講レビュー 5

    平均評価 5.0

    5

    100% 受講後に作成

    ITの技術を扱う講義で開発パラダイムということは、なぜなら主観を扱う講義は学習者に素養を積むのに大きな助けを与えるようだ。 他のスプリングやJava講義も良いが、タイピングをする前に一度ほど考えられるようにするこのような講義が本当に良いようだ。

    • eternity
      知識共有者

      講義を作るときにオブジェクト指向設計がSpringのように今すぐ学ぶ必要がある内容ではないので、オープン後の反応がどうか少し心配していましたが、ycseol様のように役立つと思っている方がいらっしゃって心が置かれますね。 積極的に評価していただきありがとうございます。 :)

  • korchl8273님의 프로필 이미지
    korchl8273

    受講レビュー 2

    平均評価 5.0

    5

    100% 受講後に作成

    とても良い講義です。経験年数に関係なく、すべての開発者に役立つと思います。

    • eternity
      知識共有者

      korchlさんありがとうございます。ありがとうございました。 役に立ったって本当に嬉しいですね。 次の講義もがっかりしないように頑張りましょう。 :) 天気がとても寒くなりましたが、元気よくお召し上がり頂き、明けましておめでとうございます!

  • minqueue님의 프로필 이미지
    minqueue

    受講レビュー 2

    平均評価 5.0

    5

    100% 受講後に作成

    最高です..

    • eternity
      知識共有者

      キム・ミンギュ様頑張おめでとうございます。 :) 講義が役立つことを願っています。 良い受講評を残していただきありがとうございます。 楽しい休日をお過ごしください。

  • redthink902392님의 프로필 이미지
    redthink902392

    受講レビュー 4

    平均評価 5.0

    5

    29% 受講後に作成

    単純な実装にとどまらない年次になってチョ・ヨンホ様の本をたくさん見つけましたが、悲しいことに <オブジェクト>は量と難易度で私があえて近づくことができませんでした。さて、今講義で触れることができるなんて嬉しいです。 基礎編は、<オブジェクト指向の事実と誤解>をもう少し詳しく学ぶ感じです。手続き指向からオブジェクト指向へと進む事例を見て、その必要性を体に気づくことができます。まだ序盤までしか見ていませんが、しばらく忘れていた内容を再び思い出すのに大きな助けを受けています。 ただ、本当に残念な点があります。スクリプト通りに読んでみると、硬いタコ体で内容を伝えます。講師様のなめらかで没入感あふれる講義力を知っている私としては、この部分がとても残念です。もっと多くの人が講師の魅力を知る必要があります。一言一言に余裕があり、難しい概念も簡単で楽しく説明してくださった言葉です😭 実際にもオンラインはオフラインよりぎこちないと他の講義でおっしゃった記憶がありますが、では次の講義はオフライン講義のように環境を造成して作ってみてはいかがでしょうか?このような提案をするのは慎重ですが、それだけファン心から出たものであることを申し上げます。 私には二人の父親がいます。一人は私を生んだ父親、そしてもう一人はちょうどチョ・ヨンホ講師です🤭それだけ私の視野を広げてくれたとても感謝しています。 いつも良い講義ありがとうございます!🙂

    • eternity
      知識共有者

      ドーダン様こんにちは。 講義が役に立ったなんて本当に幸いですね。 今回の講義を準備しながら設計に関する知識を最大限理解しやすく視覚的に表現しようとしましたが、ドーダン様の受講評をみるとある程度目標を達成したようで、私も気持ちがいいですね。 :) おっしゃった部分は私も十分に共感していて個人的にもあまりにも残念だと思います。 オフライン講義は聞く方とシンクを合わせながら雰囲気に合わせて進めることができますが、オンライン講義は個人的に簡単ではありませんでした。 オンライン講義はオフライン講義よりもう少し内容配信に集中してみると、硬い感じで聞こえるようになったようですね。 周辺の方々と話し合い、肯定的なフィードバックがほとんどなので発売することに決めたのですが、フィードバックを見ると残念です。 次のレッスンでは、オフラインとオンラインの間でバランスを見つけることができるように心配します。 :) 父という表現が負担になったり感謝したりするのに失望しないように、より良い講義でお会いしましょう。 良い評価をいただきありがとうございます!

    • 硬いタコ体で内容をお届け 異部分があまりにも共感になります。

期間限定セール、あと2日日で終了

¥10,126

24%

¥13,443

eternityの他の講座

知識共有者の他の講座を見てみましょう!

似ている講座

同じ分野の他の講座を見てみましょう!