#norelated

#contents

* 工学部専門科目「プログラミング入門」 [#qb249ac2]

- 曜時限: 木曜日1限(8:45〜10:15)
- 場所: 総合研究8号館 2F 講義室2(演習は総合研究9号館 1F 演習室1・2・N1)
- 担当: 五十嵐 淳(igarashi)
- オフィスアワー: 月曜 17:00〜18:30 @ 総合研究7号館224(五十嵐)
- 担当TA: 河田 旺、高瀬 亮、三上 翔、山口 仁司
- Twitter ハッシュタグ: [[#KUプログラミング入門:https://twitter.com/search?f=tweets&vertical=default&q=%23KU%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E5%85%A5%E9%96%80]]

* お知らせ [#b2087773]

- (2019.05.23) 課題1の再提出締切は 5/30 とします。
- (2019.04.28) [[Week03]] にプログラムを実行する際のウインドウサイズの設定についての補足を書きました。
- (2019.04.28) [[2019/Week03]] にプログラムを実行する際のウインドウサイズの設定についての補足を書きました。
- (2019.03.29) [[課題提出前のチェックリスト]]と[[よくある質問]]を作成。
- (2019.03.16) 2019年度ページ立ち上げ。

* シラバス情報 [#c0e9e399]

** 授業の概要・目的 [#o4b9f15d]

この講義では,計算機プログラミングの基本的な概念と技法について学びます.プログラミング言語 Java を使い,マウスの動きやクリックに反応して様々な動作を行うプログラムを実際に作成することで,プログラミングの本質である抽象化や,計算機科学に欠かせない再帰といった概念を習得します.

** 成績評価の方法・観点及び達成度 [#y5de011d]

期末試験とプログラミング演習についての数回のレポート

** 到達目標 [#r1120428]

- 手続きや状態,その組合せであるオブジェクトを使ったシステムの抽象化の概念と技法を習得
- イベント駆動プログラミングの概念と技法を習得
- 再帰の概念と再帰を利用したプログラミング技法の習得

* 講義スケジュールと配布資料 [#hb9c40dc]

以下、括弧がついているのは予定で変更の可能性があります。

|回数| 日付 | 講義内容(予定)   | 資料/宿題など(アクセスには講義資料1のID,パスワードを使ってください) |
|  1 | 4/11 |プログラミングとは?|[[2019/Week01]]|
|  2 | 4/18 |演習1                |[[Week02]]|
|  3 | 4/25 |Ch. 2-3.3|[[Week03]]|
|  4 | 5/2 |Ch. 3.4-4|[[Week04]]|
|  5 | 5/9 |Ch. 5    |[[Week05]]|
|  6 | 5/16 |演習2    |[[Week06]]|
|  7 | 5/23 |Ch. 6    | [[Week07]] |
|  8 | 5/30 |Ch. 7 | [[Week08]] |
|  9 | 6/6 |Ch. 9 | [[Week09]] |
| 10 | 6/13 |演習3|[[Week10]] |
| 11 | 6/27 |Ch. 10,12|[[Week11]]  |
| 12 | 7/4 |Ch. 12-13|[[Week12]]  |
| 13 | 7/11 |Ch. 14| [[Week13]] |
| 14 | 7/18 |演習4| [[Week14]] |
|  2 | 4/18 |演習1                |[[2019/Week02]]|
|  3 | 4/25 |Ch. 2-3.3|[[2019/Week03]]|
|  4 | 5/2 |Ch. 3.4-4|[[2019/Week04]]|
|  5 | 5/9 |Ch. 5    |[[2019/Week05]]|
|  6 | 5/16 |演習2    |[[2019/Week06]]|
|  7 | 5/23 |Ch. 6    | [[2019/Week07]] |
|  8 | 5/30 |Ch. 7 | [[2019/Week08]] |
|  9 | 6/6 |Ch. 9 | [[2019/Week09]] |
| 10 | 6/13 |演習3| |
| 11 | 6/27 |Ch. 10,12|[[2019/Week11]]  |
| 12 | 7/4 |Ch. 12-13|[[2019/Week12]]  |
| 13 | 7/11 |Ch. 14| [[2019/Week13]] |
| 14 | 7/18 |演習4|  |
| 15 | 7/25 |フィードバック授業(Q&A)||
| 16 | ?/? |試験||

* 受講上の注意 [#x9d8d38d]

講義資料の pdf は(初回を除き)印刷しての配布はありません.前日の17:00までには資料をアップロードするようにしますので、各自、ダウンロードの上、教室にノートPC、タブレット、スマホなど pdf を閲覧できる機器(書き込みもできるとベターでしょう)を持ち込んで臨んでください.

* 参考書 [#m48491db]

- Kim B. Bruce, Andrea Pohoreckyj Danyluk, Thomas P. Murtagh 『Java: An Eventful Approach』 (Pearson Education, Inc.) ISBN:9780131424159

** おすすめの Java の本 [#lcbc578a]

ここで紹介するのは、いずれも五十嵐が目を通したことがある本ですが、巷には Java の本が沢山あふれていますので、他に定評のある名著があるのかもしれません。

以下の2冊は,どちらも大学の先生が著したもので,大学のプログラミング教育で使いやすいものになっています.偶然にも(?)タートルグラフィクスという題材を取りあげています.
- 立木 秀樹, 有賀 妙子.「すべての人のためのJavaプログラミング」第2版,共立出版,
2007.
- 千葉 滋.「やさしいJavaプログラミング」ASCII出版, 2004.

以下は Java の開発者である Gosling 自らが著した本で,開発者自らの
Java に対する考えが伺えますが,ある程度プログラミングの経験がないと
読むのは難しい気がします.

- Ken Arnold, James Gosling, David Holmes. 柴田芳樹(訳)「プログラミング言語Java」 ピアソン・エデュケーション.

* リンク集(英語に慣れよう!!) [#s9a8d997]

- [[Java:http://www.java.com/]]
-- [[Java言語仕様:https://docs.oracle.com/javase/specs/]] …「うわ〜」って思いたい人だけ見てください :-)
-- [[Java標準ライブラリ:http://docs.oracle.com/javase/7/docs/api/]] …「うひゃ〜」って思いたい人だけ見てください…と言いたいところだけど、これはたまに見る必要ありかも。
- [[Java - An Eventful Approach:http://eventfuljava.cs.williams.edu/]] … 教科書のサイト。objectdraw ライブラリもダウンロードできますが、講義用に改変したバージョンを使うので、本家の版は使わないでください。
-- [[objectdrawライブラリのドキュメント:http://www.fos.kuis.kyoto-u.ac.jp/~igarashi/class/ip/objectdrawV1.1.2-ku/]] (検索で見つかるやつは本家版なので、いくつか食い違いがあります。)
- [[BlueJ:http://bluej.org/]] … 講義で使用する IDE
-- [[BlueJ関連のドキュメント:http://www.bluej.org/doc/documentation.html]]
-- [[ObjectdrawInvoker のダウンロード:http://www.bluej.org/extensions/extensions.html]]
- タッチタイピング習得のために
-- [[オンラインタッチタイピング習得サイト:http://www.typingstudy.com/ja/]] (キーボード配列は US English を選んでください。記号の配列が日本のパソコンと違うのですが、最初の方のレッスンをやるだけなら問題ありません。)
-- [[ICTプロフィシェンシー協会:http://www.pken.com/tool/typing.html]]

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS