授業の形態
|
|
講義、演習又は実験
|
| |
アクティブラーニング
|
|
学生が文献や資料を調べる
|
| |
授業内容と方法
|
*本科目(工共221)は、2024年度以降入学の工学科「知能情報コース」の学生が受講可能である。 *連絡網として、 Mattermost の ie-ryukyu/prog2_ak(プログラミング演習応用と共通) を利用する。
プログラミング基礎および基礎演習履修済み(Pythonでプログラミング基礎終了)を前提に、Java(13週間)と、C言語基礎(2週間)を学ぶ。
本授業では、Javaを単なる文法としてではなく、型、安全性、実行モデル、オブジェクト指向、抽象化、モジュール性といった設計思想を理解するための言語として扱う。Python基礎を学んだ受講者を想定し、両言語の違いも適宜比較しながら、Javaが大規模・長期運用に向いた理由を段階的に学ぶ。
|
| |
URGCC学習教育目標
|
|
情報リテラシー、問題解決力、専門性
|
| |
達成目標
|
* Javaの設計思想と利用領域を説明できる。 * JVM、静的型付け、型安全性の意味を説明できる。 * クラス、オブジェクト、カプセル化、継承、インタフェース、委譲の役割を説明できる。 * 配列、ジェネリクス、コレクションの違いを理解し、設計上の使い分けを説明できる。 * 例外処理、パッケージ、モジュール性の意義を説明できる。 ・C言語の基本的な宣言・式・関数・制御文・スコープを理解し,用いることができる。
|
| |
評価基準と評価方法
|
<評価基準> - オブジェクト指向の基本概念(クラス,インスタンス,カプセル化,継承,多態性)の理解 - Javaの基本事項(宣言・式・メソッド・制御文・スコープ・ファイルI/O)の理解と活用 - オブジェクト指向言語かつ静的型付け言語としての特徴,およびインタプリタ言語とコンパイラ言語の違いの理解 - C言語の基本事項(宣言・式・関数・制御文・スコープ・構造体)の理解と活用
<評価方法> レポートまたはミニテスト(100%)により評価する。
ミニテストは、四回程度実施する。
|
| |
履修条件
|
本講義の冒頭2週間は「プログラミングの基礎を学んだ前提でJava言語基礎の習得」を目指す。 このため、 ・「プログラミング1 (Python)」を受講しておくことが望ましい。 ・もしくはPython or C言語による開発経験(変数、制御文、ループ文、関数など)があると望ましい。
Python or C言語どちらも開発経験がない場合、次年度前期のプログラミング1からの受講を推奨する。できるだけ事前相談下さい。
|
| |
授業計画
|
内容は,進捗や理解度に応じて変更することがあります 第1回 Javaとは何か 第2回 Javaの言語的特徴 / Pythonとの比較 第3回 JVM 第4回 型システムと基本構文 第5回 クラスとオブジェクト(1) 第6回 クラスとオブジェクト(2) 第7回 値と参照の考え方 第8回 配列の限界と型安全性の問題 第9回 ジェネリクス入門 第10回 コレクションの設計思想 第11回 継承とポリモーフィズム 第12回 インタフェースと抽象クラス 第13回 コンポジション(委譲)による設計 第14回 例外処理・パッケージとモジュール性 第15回 C言語
|
| |
事前学習
|
第1回についてはプログラミング1の復習と環境構築をしておくこと。 環境構築は、 https://docs.google.com/document/d/1DFaRSc1eYAzuPXQuthW5VwIU_lwPcAPY3y8uXmVrBRc/edit?tab=t.0#heading=h.4fpod9ykz0r
を参照し、動作確認までやること。 また余裕がある範囲で公式サイトを眺めておこう。 https://docs.oracle.com/cd/E26537_01/tutorial/java/index.html
気になる点は質問できるように整理しておくこと。 第2回以降については授業は講義用Webページにて指示する。
|
| |
事後学習
|
|
講義で実習したことを復習し、時間内にできなかった課題は次の授業までに行うこと。
|
| |
教科書にかかわる情報
|
|
|
| |
教科書全体備考
|
|
すべてwebclassで提供します
|
| |
参考書にかかわる情報
|
|
|
477412222X
|
Javaでの話になっていますが、プログラミング全般に共通する話題です。プログラミングにアレルギー持ってる人向けの「取り組み方処方箋」。
|
|
小森裕介, エスエムジー株式会社 著,
|
|
技術評論社
|
2005
|
|
|
|
4822284654
|
プログラミングの歴史を踏まえつつ、どのような意図で言語が開発・改定されされているのかという側面から「オブジェクト指向」の特徴を紐解く一冊。
|
|
平澤章 著,
|
|
日経BP社
|
2011
|
|
|
|
4822283151
|
CPUやメモリといった実際の機械と、それをプログラミング言語がどう利用しているのかという話。
|
|
矢沢久雄 著,日経ソフトウエア 監修,
|
|
日経BP社
|
2007
|
|
|
|
4623060454
|
プログラミングに限らず、物事についてどう調べ、整理し、まとめるのかという「大学生に求められる力」を整理し、取り組み方について解説している本。全員、早い段階で一読することを強くお勧めします。
|
|
山田剛史, 林創 著,
|
|
ミネルヴァ書房
|
2011
|
|
|
|
978-4295007807
|
Kindle版でも良いです。
|
|
中山清喬, 国本大悟著
|
|
インプレス
|
2019
|
|
|
|
| |
参考書全体備考
|
以下のマイナビ運営のサイトが参考になる https://java-code.jp/32
|
| |
使用言語
|
|
日本語
|
| |
メッセージ
|
シラバスや授業計画は計画時点のものです。授業の進展具合に応じて調整することを想定しています。最新版は授業Webページ(mattermostで提示)を参照のこと。
|
| |
オフィスアワー
|
|
オンラインで随時対応.事前にメールで連絡すること.
|
| |
メールアドレス
|
|
この項目は教務情報システムにログイン後、表示されます。
|
| |
URL
|
|
|
| |
|
|