강의

멘토링

커뮤니티

Programming

/

Programming Language

ウンジョンサムとJavaでデザインパターンを簡単に始める

デザイン パターンを学習して、柔軟で拡張性の高いオブジェクト指向プログラミングを実装できます。実際の業務で使えるさまざまなパターンを学習して、プロジェクトやコード リファクタリングに適用してみましょう。

難易度 初級

受講期間 無制限

  • eunjong
oop
oop
Design Pattern
Design Pattern
Refactoring
Refactoring
oop
oop
Design Pattern
Design Pattern
Refactoring
Refactoring

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

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

4.6

5.0

한지면

100% 受講後に作成

DoIt Java川の先に見てウンジョンサム他の講義を待っていました。時々デザインパターンを勉強しなければなりませんが、ウンジョンサムがデザインパターン講義を?これは運命でした。本物の決済に1秒も迷わず決済しました。説明👍例👍

5.0

dhm_w

100% 受講後に作成

デザインパターンに近づきやすくする授業でした。

5.0

‍이신광

30% 受講後に作成

デザインパターンがいつも漠然としたのですが、今回こう学ぶことができてよかったです。 あまりにも難しいことも、あまりにも簡単でもないコードでデザインパターンをよく教えてください。

受講後に得られること

  • デザインパターン

  • オブジェクト指向プログラミング

  • リファクタリング

  • Java

カカオ社内開発者教育講義!
厳選されたデザインパターンだけを選んで学びます🤓

実例で学ぶデザインパターン✨

現在、複数のシステムがオブジェクト指向プログラミング言語で開発されている理由は何ですか?システムやソリューション開発後の機能の拡張、要件の変更、メンテナンスをより効率的にするためです。これらの変更を容易にするには、設計段階から適切なオブジェクト指向設計を行う必要があります。デザインパターンを学習すると、デザインに対するさまざまなソリューションを理解して適用できます。

なぜデザインパターンを勉強するのですか? 🤔

繰り返し発生する問題に同じ解決策を適用できる場合は、この設計をパターンと呼びます。デザインパターンは、最初の4人の学者GoFが複数の既存のシステムとソフトウェアを分析し、各問題に対する最も合理的なソリューションの方向性をまとめた分野です。したがって、デザインパターンはどんな規則や文法ではありません。また、言語に限定されず、オブジェクト指向言語といえば、すべて適用できます。

開発者は柔軟でメンテナンスに優れたプログラムを開発するためにフレームワークをインポートし、良い方法論を使用します。デザインパターンは複数のフレームワークにもすでに適用されています。パターン自体の学習も意味がありますが、問題解決に効率的なソリューションを設計したら、独自のパターンも作成できます。


今回の講義はカカオ社内開発者教育映像として活用される講義です。 Java文法を知っていますが、クラスを活用したオブジェクト指向設計が難しい方がデザインパターンを通じて学習するのに役立つように作られました。 GoFで紹介した23のパターンがありますが、今回の講義では実際の現業で多く使って実務に役立つパターン16個だけを選んで紹介します。他のフレームワークやライブラリでも多く適用され、多く使用しているパターンだけを圧縮的に勉強してください!これを勉強すると、後でフレームワークを理解するのにも役立ちます。

簡単で楽しい例で学ぶ✨

  • 各パターンは例を通して簡単に理解できます。
  • サンプルコードを与え、デザインパターンを適用してスケーラブルにコードリファクタリングを行います。パターンの適用を通じて変わるコードを見ながら学習できます。
  • 現業に適用できる設計方法を教えてください。

こんな方におすすめですよ🙋‍♀️

オブジェクト指向プログラミングをどうするか分からない方

開発者就職準備生、新入、またはジュニア開発者

Javaを使ったOOP開発を体験したい方

フレームワーク勉強前にデザイン原理を理解したい方


こんなことを学びます🤓

- Strategyパターンの学習例

1.問題は何ですか?

  • このパターンが出てきた問題になる状況は何なのか、このパターンが設計し改善しようとする意図は何かをまず説明します。


2. クラス図によるパターンの理解

  • クラス図と現実的で簡単な例でパターンがどのように適用されるかを学びます。

3. 現実的な例によるパターンの適用とリファクタリング

📢受講前に確認してください!

  • GitLabアドレスとレッスンで使用されるソースGitHubアドレスは、セクション1のFactory Methodのレッスン下部のレッスンノートで確認できます。

受講後のプレビュー 📜

*知識共有者が同じ過程で行った外部メンタリングに対するフィードバックです。

「シングルトンパターンからアダプタパターンまで、主に使用する実効性のあるパターンをよく学ぶことができた。

イノベーションアカデミー - 川*水

「スタディを進める前には、本の説明を見てUMLを見てもパターンを理解することが難しかったです。なのですが、スタディを進めるほど、なぜこのようなパターンが出るしかなかったのかを理解しながら、スタディを進めるようになりました。

イノベーションアカデミー - イ*

「Javaを初めて学習した後、スタディを申請しました。スタディは、毎週ブリッジパターン、ファクトリメソッドパターン、オブザーバーパターンなど、さまざまなデザインパターンを活用してコードをリファクタリングし、課題を解決する方法で行われました。デザインパターンを一人で勉強しにくかった部分を課題とスタディをしながら楽しく理解できました」

イノベーションアカデミー - キム*ヨン

「今回のデザインパターンスタディは前回のJavaスタディよりも楽しく勉強できました!特にファクトリーパターンや、戦略パターン、オブザーバーパターンが記憶がたくさん残るようです。いましたが、現在Springを活用したプロジェクトを進めていますが、このスタディを通じて学んだことを溶かして、少しでも良いコードを書けたらと思います。

イノベーションアカデミー - チョ・ジン


学習内容📚

1.デザインパターンとは何ですか?リファクタリングとは?

2. オブジェクトを生成するパターン

  • Factory Method - ファクトリを利用したオブジェクトの作成とリファクタリング
  • Abstract Factory - ファクトリを選択してインスタンスのセットを作成します。
  • Singleton - 1つのインスタンスのみを作成する

3. アルゴリズムスケルトンや機能と実装を分離して、より柔軟にする

  • Strategy - ポリシーやアルゴリズムを分離し、必要に応じて追加の置換を可能にする
  • ブリッジ - 機能が宣言されている部分とそれに対するさまざまな実装を分離し、ブリッジを介して接続する
  • Template Method - 固定フローは Template で定義し、その中に多様に実装できるメソッドはサブクラスで実装

4. 同一視する

  • Decorator - さまざまな機能を柔軟に追加する(ObjectとDecoratorを同じ時)
  • Composite - 単純オブジェクトとそれを含む複合オブジェクトを同一

5. 状態をクラスで表現して柔軟にする

  • State - 状態の複数の値に基づいてクラス全体の機能が決定されるとき
  • Observer - 1つのオブジェクト(Subject)に依存する複数のオブジェクト(Observer)に変更を通知する必要があるとき

6. 複雑なものを単純に

  • Facade - クライアントが使いやすい1つのインターフェースを提供しよう
  • Mediator - 複数のオブジェクトが互いに通信せず、中央の1つのオブジェクトとのみ通信する

7.構造の中を歩くパターン

  • Iterator - オブジェクトを巡回する方法に対する同じインタフェースを提供しよう
  • Visitor - オブジェクトにアクセスして機能を実行する

8. アクセスを制御する方法

  • Proxy - 実際のオブジェクトのデリゲートを置く

9.互換

  • Adapter - クライアントが目的のインターフェイスに変更する

10. コマンドをオブジェクトとして

  • Command - さまざまなことを一貫したインターフェイスにカプセル化して処理する

11.デザインパターンと一緒にする賢い生活


予想される質問 Q&A 💬

Q. Javaを知らなくても起動できますか?それとも入門者くらいになるべきですか?

Javaを知らなくても、他のOOP言語を知っていれば受講できます。しかし、まったく基礎がない場合には Inflearn に Java 入門無料講義があります。その講義を先に聞いて来心をお勧めします。

Q.他のオブジェクト指向言語(C++, C#)を勉強しました。それでも聞くことができますか?

OOP言語はほとんど同様の概念で設計されています。したがって、あるオブジェクト指向言語をすでに学習しているとすれば、この講義を受講すれば、Javaも学び、オブジェクト指向設計も一緒に学習できる一石二鳥の効果を享受できます。

Q.デザインパターンを学ぶと何がいいですか?

デザインパターンは文法でも規則でもありません。しかし、問題を特定し、その問題に対応する最良の設計方法を提示します。これらのプロセスをコードと共に学習することで、新しいプログラムを設計する際にさまざまなアプリケーションと拡張を実装できます。すでにうまく作られたパターンを学習することで、より良い設計を実現できるのです。

Q.実務に適用できますか?

私たちが実務で使用する多くのフレームワークや開発されたプログラムは、デザインパターンがすでにさまざまな部分に適用されています。したがって、既存のコードを理解するためのデザインパターンの学習は非常に役に立ちます。将来的には、受講生の方がより効率的なコードを書くのにも役立つでしょう。


知識共有者の紹介✒️

東国大学でコンピュータ工学を専攻し、ソウル大学大学院でコンピュータ工学の修士号を取得しました。会社を通う時は、Java、C、C++などの言語で多数の開発プロジェクトを進め、ビットコンピュータ、TアカデミーでJava、Web、資料構造とアルゴリズム、モバイル、デザインパターン分野などの講義を行いました。

国民大と慶熙大で非専攻者を対象としたプログラミング講義を行い、NHN NEXTで兼職教授としてJavaプログラミングとプログラミング練習講義を行いました。 10年は開発者として働いたので、実務で必要な内容をよく知り、もう10年は講義をして初心者の心までよく知ることになりました。

今日の最大の関心事は、小学生から大人まで、各階層の人々が素晴らしいプログラミングの世界に興味を持って勉強するのを助けることです。現在はイノベーションアカデミー(42ソウル)のメンターとしています。

履歴

  • イノベーションアカデミー(42 SEOUL) メンター
  • 「Do It Javaプログラミング入門」著者(イージースパブリッシング)
  • ファーストキャンパス、Inflearnの人気Javaプログラミング講義クリエイター
  • NHN NEXT 兼職教授、ビット教育センター、TAcademy講師
  • スペクトラ開発チーム長
  • 現代情報技術
  • ソウル大学コンピュータ工学部修士
  • 東国大学コンピュータ工学科の学士号

ポートフォリオ/個人映像


こんな方に
おすすめです

学習対象は
誰でしょう?

  • Java を始めた人

  • 他の言語でオブジェクト指向プログラミングを習得し、Java言語も学びたい人

  • Java言語でプロジェクトを行った経験がある方

  • オブジェクト指向プログラミングをデザインパターンで学びたい方

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

  • Java

  • オブジェクト指向プログラミング言語

こんにちは
です。

1,607

受講生

66

受講レビュー

83

回答

4.8

講座評価

3

講座

知識共有者の紹介 ✒️

東国大学でコンピューター工学を専攻し、ソウル大学大学院でコンピューター工学の修士号を取得しました。会社員時代にはJava、C、C++などの言語で多数の開発プロジェクトを進行し、ビットコンピューターやTアカデミーにてJava、ウェブ、データ構造とアルゴリズム、モバイル、デザインパターン分野などの講義を行いました。

国民大学と慶熙大学で非専門家を対象としたプログラミングの講義を行い、NHN NEXTで兼職教授としてJavaプログラミングとプログラミング演習の講義を担当しました。10年間は開発者として働いたため実務で必要な内容を熟知しており、その後の10年間は講義を通じて初心者の気持ちまで深く理解するようになりました。

最近の最大の関心事は、小学生から大人まで、あらゆる世代の人たちが素晴らしいプログラミングの世界に興味を持ち、学べるよう手助けをすることです。現在はイノベーション・アカデミー(42 SEOUL)のメンターを務めています。

経歴事項

イノベーションアカデミー(42 SEOUL) メンター

『Do it! Javaプログラミング入門』著者(イージスパブリッシング)

Fastcampus、Inflearnの人気Javaプログラミング講座の制作担当者

NHN NEXT 兼職教授、ビット教育センター、TAcademy 講師

スペクトラ開発チーム長

現代情報技術

ソウル大学校 コンピュータ工学部 修士

東国大学校 コンピュータ工学科 学士

ポートフォリオ/個人映像

『Do it! Javaプログラミング入門』著者

http://www.yes24.com/Product/Goods/62281686

Do it! Javaプログラミング入門講義(Inflearn)

Java基礎からマスターする with ウンジョン先生 (Do it Javaプログラミング入門) - Part 1(基礎編)

ウンジョン先生とJavaでデザインパターンを簡単に始める

ウンジョン先生のプログラミング講義(YouTube)

https://www.youtube.com/channel/UCTBVYQc1ZVDbAZcm1J_pniA

カリキュラム

全体

20件 ∙ (6時間 34分)

講座掲載日: 
最終更新日: 

受講レビュー

全体

9件

4.6

9件の受講レビュー

  • j1yeon님의 프로필 이미지
    j1yeon

    受講レビュー 10

    平均評価 4.9

    5

    100% 受講後に作成

    DoIt Java川の先に見てウンジョンサム他の講義を待っていました。時々デザインパターンを勉強しなければなりませんが、ウンジョンサムがデザインパターン講義を?これは運命でした。本物の決済に1秒も迷わず決済しました。説明👍例👍

    • eunjong
      知識共有者

      よろしくお願いいたします。として受け取る住所と受取人の連絡先を送ってくださったら月曜日に発送するようにします。

  • eldeach님의 프로필 이미지
    eldeach

    受講レビュー 4

    平均評価 5.0

    5

    100% 受講後に作成

    デザインパターンに近づきやすくする授業でした。

    • eunjong
      知識共有者

      良い受講評 ありがとうございます 本は受講評を書いてくださった他の方 連絡先が届くように発送していただきますように講義を作った私もやりがいですね~

  • kwindow20898님의 프로필 이미지
    kwindow20898

    受講レビュー 5

    平均評価 3.8

    4

    45% 受講後に作成

    教案はありませんか? 画面に表示される文字が小さすぎます。

    • eunjong
      知識共有者

      Fatory Method 講義 下部の講義ノートに gitlab アドレスに講義資料があります。講義紹介にお知らせしました。ありがとうございます^^

  • brucehanbusiness님의 프로필 이미지
    brucehanbusiness

    受講レビュー 7

    平均評価 4.3

    4

    100% 受講後に作成

    6時間ほどの短い講義時間の中でデザインパターンについてよく理解できました:) ただ残念な部分があれば 1. 音量が小さい 2. 画質がちょっと残念でした。

    • eunjong
      知識共有者

      よろしくお願いいたします。 ありがとうございます。

    • コードが少しぼやけているため、この部分だけが改善されれば良いと思います:)

  • paulmoon008308님의 프로필 이미지
    paulmoon008308

    受講レビュー 111

    平均評価 4.9

    4

    15% 受講後に作成

    ¥9,417

    eunjongの他の講座

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

    似ている講座

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