このコースは、Java / Scalaモバイルソフトウェア開発者であるRustam KildievとOdnoklassnikiの開発エンジニアであるDmitry Arkhangelskyによって教えられています。
講義1.「Javaプラットフォームの紹介」
コース全体を簡単に説明する入門レッスン。 コースの主な目的は、構文を教えることだけでなく、実践的なスキルと基礎の理解を与えることです。 このコースは、小さなタスクを実行して、「メッセンジャーのバックエンド」プロジェクトを作成するように構成されています。
講義2.「基本的な言語構成」
2番目のレッスンでは、データ型、プリミティブの操作、参照型、文字列プールと文字列リテラル、配列、その他の言語構成要素について説明します。
講義3.「Javaでのオブジェクト指向プログラミング」
クラスとオブジェクトとは何かについて話している。 オブジェクト指向アプローチの基本を理解する。 継承と構成。 何のためにカプセル化を使用するかを検討してください。 アーリーバインディングとレイトバインディング(多態性)を詳細に分析します。 レッスンの最後に、アプリケーションアーキテクチャ設計(SOLID)の基本原則を検討します。
レクチャー4.「例外。 Reflection API»
Javaのエラー処理、例外(エラー情報を保存するエンティティ)について説明します。 Reflection APIの基本、java.lang.reflectパッケージの機能、および実行時にクラス情報を取得する例を検討します。
講義5.「コレクションとパラメーター化」
コレクション型、反復子、リストの実装、スタック、マップインターフェイス、型の共分散と反分散、タスクに適したデータ構造の選択。
講義6.「ストリームの相互作用」
マルチスレッドに関する講義:なぜ必要か、どこで使用されるか、なぜ多くの場合エラーの原因であるか。
講義7.「内部および匿名クラス。 ストリームとラムダ」
この講義は、開発を簡素化するJava 8の革新に焦点を当てています。 3つの主要な機能が登場しました:ラムダ関数、ストリーム(機能的なスタイルでの書き込みを可能にする)、およびオプティナル(NullPointerExceptionと呼ばれるすべてのジャビストの頭痛を解消するように設計されたオブジェクトの特別なラッパー)。 特定のクラス(匿名、ローカル、内部)の動作について説明します。
講義8.「データベースの操作」
メッセンジャー(最終的に開発する必要がある)は、それ自体がビジネスロジックのレイヤーです。 メッセンジャーの重要なポイントは、メッセージの保存、履歴の保存、ユーザーリストの保存、ログインとパスワードです。 講義では、Javaアプリケーションからさまざまなデータベースにアクセスする方法について説明します。
講義9.「ソケット、「メッセンジャー」タスクの分析」
ソケットとネットワーキングについて話します。 単純なクライアントサーバーが考慮され、ソケットのクライアント部分とサーバー部分の処理が示されています。
講義10.「テストの基礎」
JUnitライブラリ、接続、使用例。 単体テストの基本。
講義11.「ストリーム」
6回目の講義の継続。 スレッドロック、条件付き待機スキーム、Javaメモリモデル(1つのスレッドによって行われた記録が別のスレッドに表示される場合)。
講義12.「NIO」
NIO-新しい入出力API。 ストリームとファイルを使用して、ネットワークを操作するためのAPIについて講義します。 チャネルからのイベントの受信、セレクターのイベントソース、セレクターとバッファー、NIOとIOの違い。
講義13.「統合テスト」
ソフトウェアの品質、製品の品質レベルを確保するための手段の全体、プログラムの実際の動作と期待される動作の間のコンプライアンスを確認しています。
講義14.「メモリモデル」
最後の講義では、CPUデバイスのテーマ、メモリの操作速度、プロセッサとプロセッサキャッシュ間のデータ同期、メモリモデル仕様で説明されているオブジェクトについて触れます。
推奨文献とサイト:
- ブルース・エッケル-Java Philosophy(第4版)
- Kay S. Horstmann、Gary Cornell、「Java。 プロフェッショナルライブラリ、第1巻。基本 "、
- Kay S. Horstmann、Gary Cornell、「Java。 専門図書館。 ボリューム2.高度なソフトウェア
- ジョシュアブロッホ-効果的なJava(第2版)第2版
- skipy.ru
- ibm.com/developerworks/ru/java/
- habrahabr.ru/hub/java/
すべての講義のプレイリストはこちらにあります 。 テクノパーク、テクノスフィア、テクノトレックの各プロジェクトのITスペシャリストによるプログラミングに関する実際の講義とマスタークラスは、テクノストリームチャンネルで公開されています。