강의

멘토링

커뮤니티

BEST
Programming

/

Programming Language

エフェクティブJava完璧攻略パート2

Java学習の終盤王「エフェクティブJava」をより簡単で完璧に学習しましょう。この講義を受講すると、Javaプログラミングの知識とスキルだけでなく、学習能力も向上します。

  • whiteship
자바
이펙티브자바
백엔드개발자
자바입문
Java

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

受講後に得られること

  • クラスとインタフェースを使いやすく、頑丈で柔軟にする方法

  • ジェネリックの利点を活かし、欠点を最小限に抑える方法

マイクロソフトシニア開発者、白機線
深さが格別なエフェクティブJava 🚢

Javaの勉強の終わり、エフェクティブJava。

Effective Java ?

すべてのJava開発者が一度勉強しようとしましたが、
決して誰も征服できない本、 「エフェクティブJava」
この講義が完全に攻略します。


高レベルのバックエンド開発者
なりたいあなたのため。

『エフェクティブJava 3/E』は、すべてのJava開発者にお勧めの本ですが、逆説的には、すべてのJava開発者が簡単に学習できる本ではありません。最初のアイテムから正しく消化するには、「列挙型」、「フライウェイトパターン」、「インタフェースの静的メソッド」、「サービスプロバイダフレームワーク」、「リフレクション」という背景知識が必要です。このような背景知識なしに本の内容を100%理解するのは難しいです。それだけ学習しにくい本ですが、一つずつ学習をしたときに続く報酬も格別です。

『エフェクティブJava』の内容を理解すれば、皆さんの実力と知識は以前に比べて大幅に向上し、新たな視界を明らかにしてくれます。他のプログラミング言語を勉強したり使用したりしても。 (まるでこの本を一生懸命勉強していましたが、今はマイクロソフトでC#とPowershellを使って働いている今の私のようですね。)


シリーズに挑戦する
エフェクティブJava完璧攻略

エフェクティブJava完璧攻略 - Part 2 シリーズ連載中

『エフェクティブJava』を計5部に分けて学習します。第2部に該当するこの講義は『エフェクティブJava』第4章「クラスとインターフェース」と第5章「ジェネリック」を取り上げます。

『エフェクティブJava』学習を困難にする開発者や学生や、より完全に学習したい方のために、各アイテムをコードとともにまとめ、各アイテム別に学習するのに役立つ背景知識をお届けします。皆さんの『エフェクティブJava』学習がはるかに面白く、簡単で、またお得です。

Javaの深化学習が必要な方へ。

この講義はプログラミング初心者や入門者のための講義ではありません。 Javaを使って仕事をしている開発者や基本的なJava勉強を終え、よりレベルの高い深化学習を通じて実力を上げたい開発者や学生のための講義です。次の講義を受講したり、それに準ずる学習をしたら、今回の講義を聞くこともできます。 (詳細はセクション0 - 講義紹介授業を参照してください。)

必須学習コース

推奨学習コース


講義で提案する
4-Step学習順序

このレッスンでは、エフェクティブJava 2部と3部でカバーされる合計14のアイテムをカバーし、完璧な攻略のために合計30に達する背景知識を伝えます。また、エフェクティブJavaが本で書いたものだけを理解しやすくするための追加のソースコードを提供しています。推奨する学習方法は次のとおりです。

Step 1

「エフェクティブJava」を教材として購入し、アイテムを一つ先に読みます。

Step 2

「エフェクティブJava完璧攻略1部」に該当するアイテムの「核心整理」授業を受講します。

Step 3

続く「完全な攻略」レッスンを受講し、不足している部分は補足学習を続けます。

Step 4

さらに学習した部分を個人ブログにまとめて「質問回答」掲示板にリンクを残しておくとレビューをさせていただきます。


14個アイテム別完璧攻略、
学習カリキュラム📚

アイテム15.クラスとメンバーのアクセス権を最小限に抑えます。

  • 情報隠蔽
  • アクセス制限者の使用原則
  • Javaプラットフォームモジュールシステム

項目 16. public クラスでは、public フィールドではなくアクセサメソッドを使用します。

  • 内部を公開したDimensionクラスの性能問題

アイテム17.変更の可能性を最小限に抑える。

  • 不変クラス
  • 不変クラスの長所と短所
  • finalとJavaメモリモデル
  • java.util.concurrent パッケージ
  • CountDownLatch

アイテム18.継承ではなくコンポジションを使用してください。

  • 継承の欠点
  • コンポジションの利点
  • デコレーターパターン
  • コールバックフレームワークとセルフ問題

アイテム19-20。継承を考慮して設計し文書化する。そうでなかったら継承を禁止しなさい。

  • @implSpec
  • インターフェイスの利点
  • インタフェースと抽象スケルトンクラス
  • テンプレートメソッドパターン
  • デフォルトメソッドとObjectメソッド

アイテム 21. インタフェースは実装する方を考えて設計しなさい。

  • デフォルトメソッドを追加するときの注意点
  • ConcurrentModificationException

項目 22. インタフェースは型を定義する目的でのみ使用してください。

  • 定数を定義する目的でインターフェイスを使用しないでください。
  • 定数を定義する方法

アイテム23.タグ付きクラスではなくクラス階層を活用します。

  • タグ付きクラスの欠点
  • 階層を活用する

アイテム 24. メンバークラスはできるだけ static にしなさい。

  • 静的メンバークラス
  • 非静的メンバークラス
  • 匿名クラス
  • 地域クラス
  • アダプタパターン

アイテム25.トップレベルのクラスは1つのファイルに1つだけを入れます。

アイテム 26. ロタイプは使用しないでください。

  • ジェネリック用語の整理
  • パラメータ化タイプを使用する理由
  • GenericRepository

アイテム 27. 非検査警告を削除します。

  • 非検査(unchecked)警告
  • @SuppressWarning
  • アナテーション

アイテム28.配列ではなくリストを活用しなさい。

  • 共変 vs 不公変
  • @SafeVarangs

アイテム29. 異王ならジェネリックタイプにしてください。

  • 配列を使用するコードをジェネリックに変更する
  • 限定型パラメータ

アイテム30. 異王ならジェネリックメソッドで作ろう。

  • ジェネリックシングルトンファクトリー
  • 再帰的タイプ限定

アイテム31.限定的なワイルドカードを使用してAPIの柔軟性を高めます。

  • PECS (Producer-Extends, Consumer-Super)
  • ワイルドカード
  • タイプ推論

アイテム32.ジェネリックと可変引数を一緒に使うときは慎重にしなさい。

  • ジェネリック可変引数
  • ThreadLocal
  • ThreadLocalRandom

アイテム 33. タイプ安全異種コンテナを考慮しなさい。

  • タイプ安全異種コンテナ
  • タイプトークン
  • スーパータイプトークン
  • 限定型トークン

すべてのJava開発者の必読書
一緒に読めるように💌

エフェクティブJavaをより簡単かつ完全に勉強するためのガイドを提供します。エフェクティブJavaで紹介する重要な内容を整理し、より完全に理解するために必要な背景知識を詳しく伝えています。

合計5部にわたって進行する「エフェクティブJava完璧攻略」シリーズの今回の講義はシリーズの中で2番目の講義です。最初の講義を先に受講し、次に学習してください。

白機線の「エフェクティブJava完璧攻略」過去講義📖

こんな方に
おすすめです

学習対象は
誰でしょう?

  • 現業でJavaを使用しているすべての開発者

  • Javaをマスターしたい開発者または学生

  • エフェクティブJavaをより完全に学習したい開発者または学生

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

  • Javaの基礎

  • ザJava:Java 8

  • もっとJava:コードを操作するさまざまな方法

  • コーディングで学習するデザインパターン

  • エフェクティブJava完璧攻略パート1

こんにちは
です。

92,660

受講生

4,271

受講レビュー

2,010

回答

4.8

講座評価

20

講座

네이버와 아마존을 거쳐 현재 Microsoft에서 시니어 소프트웨어 엔지니어로 일하고 있습니다.

아인슈타인은 "교육이란 사실을 가르치는 것이 아니라, 생각할 수 있는 힘을 기르는 것이다."라고 말했습니다. 그리고 저도 그 말에 깊이 공감하며 강의를 만들고 있습니다.

유튜브:
'백기선' 채널에서 개발자 고민 상담 및 개발자에게 유용한 지식 공유
번역: 스프링 및 하이버네이트 관련 서적 다수 번역
저술: 쉽게 따라하는 자바 웹 개발

カリキュラム

全体

54件 ∙ (8時間 54分)

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

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

受講レビュー

全体

35件

4.9

35件の受講レビュー

  • 고세윤님의 프로필 이미지
    고세윤

    受講レビュー 10

    平均評価 5.0

    5

    37% 受講後に作成

    유튜브 개발자 고민 상담 때 뵙고, 댓글로 질문을 작성했었는데, 정말 정성스럽게 답변해주시는 모습에 감동해서 더 개발자 가이드를 수강하고 있고, 포트폴리오 작성하는데 정말 도움을 많이 받고 있습니다.! 얼리버드 이벤트가 떠서 자바를 명확하고 정확하게 배우자라는 생각에 얼른 바로 수강하고 있습니다! 라이브 코딩 과정에서 어려운 부분이나 혹은 짚고 넘어가야하는 부분들을 상세하게 설명해주셔서 정말 감사합니다! 간혹 왜 final을 써야하는지, 접근 제한자를 왜 쓰는지? 헷갈리고 이해 안되는 부분이 많았는데, 강의 듣고 이해할 수 있었습니다.!!

    • 뿡이님의 프로필 이미지
      뿡이

      受講レビュー 81

      平均評価 4.9

      5

      100% 受講後に作成

      정말 도움이 많이 되었습니다 다음 편도 기대됩니다!

      • 카토의남자님의 프로필 이미지
        카토의남자

        受講レビュー 2

        平均評価 5.0

        5

        6% 受講後に作成

        이번 이펙티브 시리즈는 너무 알차네요 책에서 다 이해못한 내용과 그냥 넘긴 것들도 코드 타이핑하며 확인하는 과정이 너무 좋습니다. 늘 감사합니다.

        • kjh48001님의 프로필 이미지
          kjh48001

          受講レビュー 11

          平均評価 5.0

          5

          46% 受講後に作成

          이펙티브자바는 설명을 예를 드는데 그 예를 모르는 경우가 많은데 어려운부분을 설명해주셔서 효자손 같은 강의 입니다

          • 노형률님의 프로필 이미지
            노형률

            受講レビュー 16

            平均評価 5.0

            5

            100% 受講後に作成

            잘보겠습니다.

            ¥8,301

            whiteshipの他の講座

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

            似ている講座

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