강의

멘토링

로드맵

BEST
Programming

/

Web Development

すべての開発者のためのHTTP Webの基本知識

実際に必要なHTTPコア機能と正しいHTTP APIの設計方法を学びます。

難易度 初級

受講期間 無制限

  • yh
Network
Network
Network
Network

キム・ヨンハンの実戦Java中級2編 - ジェネリックとコレクションオープン日程確定

こんにちは。皆さん
キム・ヨンハンの実戦Java中級2編 - ジェネリックとコレクション
オープン日程が5月8日(水)に確定しました。

キム・ヨンハンの本番Java - 中級2編ジェネリックとコレクション
*講義時間:19時間24分
*講義数:約90強
*講義PDF資料:355枚

[Java中級2編講義内容]

[ジェネリック]
Javaでジェネリックを正しく理解するのはとても難しいです。
このレッスンでは、ジェネリックをできるだけ簡単に説明するために、まずジェネリックをまったく使用せずにコードを記述します。そして、このようなコードにジェネリックを徐々に導入しながら、従来の方法では解決が難しいコードの重複をジェネリックがどのように解決するかを自然に理解することができます。

【資料構造の理解】
このレッスンでは、データ構造を正しく理解できるように、データ構造の基本理論を説明し、実務でよく使用されるコアデータ構造をコードで直接実装します。

* 配列リスト (ArrayList)
*接続リスト(LinkedList)
*ハッシュ構造(ハッシュ)
*ハッシュアルゴリズムとハッシュテーブル(Hash)
*ツリー構造(Tree)
*セット(セット)とマップ構造(Set、Map)
*スタックとキュー構造(スタック、キュー)

[コレクションフレームワーク]
Javaのコレクションフレームワークはデータ構造のコレクションです。
実務では、データ構造は本当によく使われ、パフォーマンス問題にも直結するだけに、データ構造を正しく理解して使用することが本当に重要です。
このレッスンでは、コレクションに使用されるさまざまなデータ構造を直接実装しながら、原則を深く理解します。そのため、それぞれのデータ構造がどのような場合に性能が良く、どのような場合に性能が悪いのか、根本的な理由をきちんと理解し、実務で活用できるようになります。
各章では、さまざまなデータ構造を理論と実際の実装を通じて学習します。これにより、Javaコレクションフレームワーク全体を完成し、またどのデータ構造をどこで使用すべきかを正しく理解できるようになります。

【講義全体目次】

1. ジェネリック - Generic1

*プロジェクト環境の設定

*ジェネリックが必要な理由

*多型性による重複解決の試み

*ジェネリック適用

*ジェネリック用語と慣例

*ジェネリック活用例

*問題と解決1

 

2. ジェネリック - Generic2

*タイプパラメータ制限1 - 開始

*タイプパラメータ制限2 - 多型の試み

*タイプパラメータ制限3 - ジェネリック導入と失敗

*タイプパラメータ制限4 - タイプパラメータ制限

*ジェネリックメソッド

*ジェネリックメソッドの活用

*ワイルドカード1

*ワイルドカード2

*タイプイレーザー

*問題と解決策2

*整理

 

3. コレクションフレームワーク - ArrayList

*配列の特徴1 - 配列とインデックス

*ビッグ(O)表記法

*配列の特徴2 - データ追加

*直接実装する配列リスト1 - 開始

* 直接実装する配列リスト2 - 動的配列

* 直接実装する配列リスト3 - 機能追加

* 直接実装する配列リスト4 - ジェネリック1

* 直接実装する配列リスト5 - ジェネリック2

*整理

 

4. コレクションフレームワーク - LinkedList

*ノードとの接続1

*ノードとの接続2

*ノードとの接続3

*直接実装する接続リスト1 - 開始

* 直接実装する接続リスト2 - 追加と削除1

* 直接実装する接続リスト3 - 追加と削除2

* 直接実装する接続リスト4 - ジェネリック導入

*整理

 

5. コレクションフレームワーク - リスト

* リスト抽象化1 - インタフェース導入

*リスト抽象化2 - 依存関係注入

*リスト抽象化3 - コンパイル時、ランタイム依存関係

* 直接実装したリストの性能比較

* Javaリスト

* Javaリストのパフォーマンス比較

*問題と解決1

*問題と解決策2

*整理

 

6. コレクションフレームワーク - ハッシュ(Hash)

* リスト(List) vs セット(Set)

* 直接実装する Set0 - 開始

*ハッシュアルゴリズム1 - 開始

*ハッシュアルゴリズム2 - indexの使用

*ハッシュアルゴリズム3 - メモリの無駄

*ハッシュアルゴリズム4 - 残りの演算

*ハッシュアルゴリズム5 - ハッシュ衝突の説明

*ハッシュアルゴリズム6 - ハッシュ衝突の実装

 

7. コレクションフレームワーク - HashSet

* 直接実装する Set1 - MyHashSetV1

*文字列ハッシュコード

* JavaのhashCode()

* 直接実装する Set2 - MyHashSetV2

* 直接実装する Set3 - 自分で作成したオブジェクトのアーカイブ

* equals、hashCodeの重要性1

* equals、hashCodeの重要性2

* 直接実装する Set4 - ジェネリックとインタフェースの導入

 

8. コレクションフレームワーク - Set

* Javaが提供するSet1 - HashSet、LinkedHashSet

* Javaが提供するSet2 - TreeSet

* Javaが提供するSet3 - 例

* Javaが提供するSet4 - 最適化

*問題と解決策1

*問題と解決策2

*整理

 

9. コレクションフレームワーク - Map, Stack, Queue

*コレクションフレームワーク - Mapについて1

*コレクションフレームワーク - Mapについて2

*コレクションフレームワーク - Map実装

*スタック材料構造

*キューデータ構造

* Deque データ構造

*デケとスタック、キュー

*問題と解決策1 - Map1

*問題と解決策2 - Map2

*問題と解決策3 - Stack

*問題と解決策4 - Queue

*整理

 

10. コレクションフレームワーク - 巡回、整列、全体整理

*巡回1 - 直接実装するIterable、Iterator

*巡回2 - 強化されたfor文

*巡回3 - Javaが提供するIterable、Iterator

*ソート1 - Comparable、Comparator

*ソート2 - Comparable、Comparator

*ソート3 - Comparable、Comparator

*コレクションユティル

*コレクションフレームワーク全体の整理

*問題と解決

*整理

 

ありがとうございます。

コメント