2008年度 生物情報科学実験I Java基礎 ガイダンス

講師

Teaching Assistants (TA)

講義の内容

講義の方針

プログラムを書く練習を重視します。講義を聞きながら、実際にコンピュータでプログラムを書いてみて、学習を進めてください。

ノートPCの貸出

演習ではノートPCを貸し出せます。自宅に持ち帰って使用することもできます。その場合は、学籍番号、氏名を演習担当者に届け出ること。夏の集中講義終了までには返却すること。

ただし、演習用のノートPCは2Kgを超える重さですので、持ち歩きには適していません。自宅に自分のPCがある場合は、Eclipseのworkspaceの中身だけをUSBメモリ(1G以上のものが数千円で買えます)に保存して持ち帰り、Eclipseをインストールして使うとよいでしょう。

対象レベル

プログラムを書いたことがない人。既にプログラムを書いた経験のある人には、発展課題を用意します。

授業の目標

アプリケーションの作成

発展

成績評価

レポートの提出方法

以下のWebサイトよりレポートを提出する

参考図書

Javaの学習はWebによる情報(英語)が豊富ですので、あえて本を購入しなくてもJavaプログラムの書き方は学ぶことができます。

日本語の資料

東京大学教養課程での、プログラミングの授業の資料です。独習用教材として秀逸。

英語の資料

プログラミング言語の資料は英語によるものが豊富です。また、プログラミング関連の技術は日進月歩なので、日本語に正しく翻訳されるまでには時間がかかります。今のうちから、英語で読むトレーニングを積むことをお勧めします。プログラミングの上達の秘訣は、英語の資料を読めるようになること、と言っても過言ではありません。

コーディングを上達させるために読むとよい本

コンピュータサイエンスの入門書

コンピュータサイエンスを知らずして、高速なプログラムを書くことは難しいです。また、大きなデータを扱うことの多いバイオインフォマティクスでは、書いたプログラムがデータのサイズに対して安定して動く(scalable)であることを示す必要があります。そのために、コンピュータサイエンスの知識は必須です。

ここに紹介してある本は、情報科学科の図書室(理学部7号館3階)で読むことができるでしょう。

さらなる極みへ

プログラム開発でぜひとも習得しておきたいツール

数万行〜10万行規模のプログラムが書けるようになると、立派なプログラマです。しかし、コードが大きくなると管理も難しくなります。ソースコードを管理しきるためのツールがSubversionとMavenです。

並列・分散プログラミング

マルチコア(1チップの中にCPUが複数)の時代では、スレッドを用いた並列プログラミングでさらにCPUの性能を引き出すことができます。

MPI

Map-Reduce: 分散計算のためのフレームワーク

ゲノムブラウザを作る

他のプログラミング言語にも挑戦

スクリプト言語

JavaはEclipseがあればそれなりに快適にコーディングができますが、テキストエディタ1つで簡単なプログラムを簡単に仕上げる、という用途には向いていません。そのような場合は、スクリプト言語と呼ばれるプログラミング言語を学ぶとよいでしょう。

高性能を目指して

よりCPU、メモリの性能を考慮してプログラムを書く場合には、現時点では、C, C++などの言語を学習する必要があります。

C++では、