次の各トピックに対応するプログラミングの実例と演習を通じて、Java 言語でアプリケーションを開発する上で必要となる主要な概念と関連知識を習得します。。
| 日程 | 時間 | 内容 |
|---|---|---|
| 1日目 | 1時限 | イントロダクション: 全体説明、Eclipse の使い方、デバッグ実習 |
| 2時限 |
GUI (AWT) プログラミング: AWT、アプレット、イベント処理、リスナーの実装と登録 |
|
| 3時限 |
演習 (WebQuety1): ボタンの追加、リスナーの実装と登録、イベントの判別、文字列の設定 |
|
| 4時限 |
データベース: JDBC、ドライバ、接続、ステートメント、クエリの事前設定、トランザクション 演習: AWT と JDBC を組み合わせたプログラム |
|
| 5時限 | 演習: WebQuety1 にデータベース処理を追加する |
|
| 6時限 | 演習: WebQuety1 にデータベース処理を追加する (続き) |
|
| 2日目 | 1時限 |
スレッド: プロセスとスレッド、Thread クラス、Runnable インターフェイス 排他制御の必要性、同期処理、synchronized キーワード |
| 2時限 |
ストリーム: 概念、ファイル操作、出力用クラス、入力用クラス、ランダムアクセス Reader、Writer、StringTokenizer、その他の便利なクラス |
|
| 3時限 |
ネットワーク (1): java.net パッケージの主要クラス分類 (URL、Socket、DatagramSocket) Stream 型通信、Datagram 型通信、練習問題 |
|
| 4時限 |
ネットワーク (2): Web サーバーの実装例、ネットワーク プログラミング演習 (スレッドを利用したマルチユーザー対応) |
|
| 5時限 |
練習問題: ネットワーク サーバーサイド プログラミング (1 リクエスト n レスポンス) |
|
| 6時限 |
練習問題: ネットワーク サーバーサイド プログラミング (コマンド追加、大文字化、トークン切り出し) |
|
| 3日目 | 1時限 |
演習: 分散アプリケーションの実装 (データベースの分離) |
| 2時限 |
演習: 分散アプリケーションの実装 (データベースの分離) |
|
| 3時限 |
演習: サーバーサイドプログラミング、プロキシ クラスの導入 |
|
| 4時限 |
演習: 分散アプリケーション実装 (クライアントの作成) |
|
| 5時限 |
演習: 分散アプリケーション実装 (サーバーの作成) |
|
| 6時限 |
演習: 分散アプリケーション実装 (サーバーの作成) |
※演習の進行状況等により、時間割や取り上げる内容が一部変更になることがありますのでご了承ください。
演習題材
データベースにクエリを発行する機能をサーバー サイド プログラムとして実装し、このサーバー プログラムとネットワーク経由でデータを交換する GUI クライアントを実装します。

クライアント プログラムは、Java アプレットとして実装します。
最初に Web サーバーからダウンロードされた後、実行されます。