計算機科学実験及演習2 - ソフトウェア (2014年度)
- 担当教員
- 中澤 篤志
- Marco Cuturi
- 中澤 巧爾
- Teaching Assistant
- 樋口 彰
- 宮本 洋平
- 佐々木 健人
- 金 応教
- 連絡先メールアドレス(教員及びTA全員に届きます)
まだデモを完了していない人へ
デモを行なわなければ合格とは認められませんので,
必ずデモを実施してください.
デモの締切りは,1/13(火)とします.それまでに完了できなさそうな場合は,必ず同日までにメールで進捗状況を報告してください.
デモを希望する場合は
- 上記連絡先メールアドレスに,希望の日時とともにデモ希望の旨を連絡する
- 教員・TAと日時を調整する
- 決定した日時に,7号館1階の演習室でデモを確認する
という手順で実施してください.
ただし,土日祝日,実験2の時間,演習室を利用している時間帯(実験4が木曜午後〜金曜夕方に利用しています)はデモを実施することができません.年明けは,1/5から対応できる予定です.
直近の日時では対応できない事がありますので,余裕をもった日時を設定してください.
また,約束の時間からすぐにデモを開始できるよう,予め準備をしておいてください.
デモ希望のメールに対して24時間以上返事が無い場合は,再度メールを送ってください.
質問などは同じメールアドレスで受け付けます.演習室での質問を希望する場合は,
デモの場合と同様に日時を調整してください.
お知らせ (ページを随時reloadすること)
[実験2ソフトウェアWiki](含課題提出状況、FAQ)
- 総合デモの実施手順を少し更新しました.各クライアントで外部のサーバに接続できることを確認します.(2014/11/18)
- 総合デモの実施手順を公開しました.(2014/11/11)
- 下記テストケースの場所を変更しました.こちらです.(2014/11/11)
- 課題5のリンク収拾のためのテストケースをここに置きました.「必修」と「オプション」の2パートに分かれています.「必修」は7項目あり,うち6つを抽出し,1つの「拾うべきではないURL」を抽出しないことが,デモ合格の必要条件です.(2014/11/10)
- 報告書1の締切りが間違っていました.誤11/28→正10/28 です.(2014/10/7)
- 初回解説で利用したスライドをアップしました.(2014/10/7)
- 2014年度版実験2ソフトウェアのページを開設しました.(2014/9)
概略
インターネットの基本プロトコルであるTCP/IPと、
UNIX OSにおけるネットワークI/Oであるソケットを、
応用プログラムの作成を通じて理解するとともに、
プログラミング言語の比較や、ライブラリ、デバッガ、開発支援ツールの利用など、
実用的プログラミングで必要となる技術を学ぶ。
実験資料
[pdf版資料]
[html版資料]
(内容は同じ「はず」です.異なる場合はpdf版が正しいと解釈してください.
おかしな箇所を発見した場合は教員・TAまで知らせてください.)
[注意] 実際に課題を始める前に,必ず当該部分までの資料を通して読んでおくこと(pdf版推奨).資料を読むのは「実験時間外に行なう予習」だと考えてください.
[サンプルプログラム]
展開方法,内容については資料を参照.
実験はこの資料に従って行う。下記スケジュールは一応の目安であり、報告書締切等のスケジュールに遅れない限り各自自由な進度で進めて構わない。
期間内に資料の必修課題を全て終えた者は、発展課題を自由に設定しその成果を最終報告やデモに含めれば評価する(資料に記載されている発展課題に拘る必要はない)。発展課題の締切りは原則として最終報告書締切りと同じとする。
[初回解説スライド]
[実験2 旧FAQ] 最新のFAQは実験2Wiki内にあります。
実習内容
予定
- 10/7(火)
- インターネットとTCP/IP
- シェルスクリプト、Make,デバッガ
- 課題1: URL解析器の作成
- 10/14(火)
- クライアント・サーバプログラミング
- HTTPクライアントとサーバの作成
- 課題2: HTTPクライアントの作成
- 報告書1: 課題1&課題2 (提出締切
11/2810/28(火) 16:15)
- 10/21(火)
- HTTPサーバの作成
- 課題3: HTTPサーバの作成
- 10/28(火)
- 課題4: 複数クライアント対応サーバの作成
- 報告書2: 課題3&課題4 (提出締切 11/11(火) 16:15)
- 11/4(火),11/11(火)
- オブジェクト指向プログラミング言語 Java
- 課題5: JavaによるHTTPサーバ・クライアントプログラミング
- 11/18(火)
- 総合デモ
- 報告書3: 課題5 (提出締切 12/9(火) 16:15,総合デモ完了後に提出すること)
成績の付け方
出席,報告書,総合デモに基づいて行う.
- 出席
本演習は出席が義務付けられている。 理由なく一定時間以上欠席、遅刻すると単位は与えられない。
- 報告書 [提出方法][内容について]
3回の報告書を,作成したプログラムとともに提出すること.報告書3は総合デモ完了後に提出すること.
- 総合デモ
課題5のJava製クライアント用
[リンク抽出テストケース][実施手順]
参考資料
教科書
- 「すべての人のための Java プログラミング」立木 秀樹, 有賀 妙子, 共立出版
参考書
(この実験の課題程度ならば必須ではないが,さらなる理解のために)
- 「UNIXネットワークプログラミング 第2版 Vol.1」W.Richard Stevens, 篠田 陽一, ピアソン・エデュケーション
- 「HTTP詳説 作ってわかる HTTP プロトコルのすべて」ポール・S・ヘスマン著, ファサード訳, ピアソン・エデュケーション