検索したい科目/教員名/キーワードを入力し「検索開始」ボタンをクリックしてください。
※教員名では姓と名の間に1文字スペースを入れずに、検索してください。
令和2年度以降入学者 | オブジェクト指向プログラミング入門 | ||||
---|---|---|---|---|---|
令和元年度以前入学者 | オブジェクト指向プログラミング入門 | ||||
教員名 | 北原鉄朗 | ||||
単位数 | 2 | 学年 | 2 | 開講区分 | 文理学部 |
科目群 | 情報科学科 | ||||
学期 | 前期 | 履修区分 | 選択必修 |
授業の形態 | 対面授業(一部においてオンデマンド型授業、課題研究を併用) Blackboard ID:20221426 |
---|---|
授業概要 | 1年次に学んだProcessingを用いて、オブジェクト指向プログラミングの基本的な考え方を学ぶ |
授業のねらい・到達目標 | ・オブジェクト指向プログラミングの考えを理解し、見通しのよいプログラムを書けるようになる。 ・オブジェクト指向プログラミングの様々な用語を正確に理解し、プログラム設計に関して正しい言葉遣いで議論できるようになる。 この科目は文理学部(学士(理学))のディプロマポリシーDP6及びカリキュラムポリシーCP9に対応している。 なお,新カリキュラム(令和2年度以降入学者対象)では,この科目は文理学部(学士(理学))のディプロマポリシー DP3-5及びカリキュラムポリシー CP3-5に対応している。 ・既存の知識にとらわれることなく,物事を論理的・批判的に説明することができる。(A-3-2) ・日常生活における現象に潜む科学的問題を発見し,専門的知識に基づいて説明することができる。(A-4-2) ・新しい問題に取り組む意識を持ち,そのために必要な情報科学の知識・情報を収集することができる。(A-5-2) |
授業の方法 | 授業の形式:【講義・実習】 ・教員による学習内容の解説とプログラミング実習を中心に授業を進める。 ・授業内で随時小テストを行う場合がある。また、授業後に適宜ミニ課題を課す。 ・課題研究の回では、レポート課題を課す。 対面参加が困難な学生への措置 ・オンライン受講の要件:学部の方針に従う。 ・オンライン受講の方法:YouTube Liveなどを用いたライブ配信または公開済みのYouTube動画を視聴し、対面受講者と同じ実習に取り組む。質疑応答はSlack上で行う。 |
授業計画 | |
---|---|
1 |
本科目の到達目標および授業方法の確認、Processingの復習(A-3-2~A-5-2)
【事前学習】「オブジェクト指向」とは何かを、基本情報技術者試験の参考書など手持ちの資料で調べること (2時間) 【事後学習】1年次に学んだProcessingのプログラミング方法に関して、忘れていることを復習しておくこと (2時間) |
2 |
クラスとインスタンス(1) クラス、インスタンス、メソッド、フィールド(A-3-2~A-5-2)
【事前学習】1年次に学んだ「関数」の発展形でもあるので、関数についてあらかじめ復習しておくこと (2時間) 【事後学習】クラス、インスタンス、メソッド、フィールドに関するミニ課題に取り組むこと (2時間) |
3 |
クラスとインスタンス(2) 複数のクラス、複数のインスタンスを扱うプログラム(A-3-2~A-5-2)
【事前学習】複数のクラス・インスタンスを扱うサンプルプログラムを手打ちして実行できるようにしておくこと (2時間) 【事後学習】複数のクラス・インスタンスを扱うプログラムに関するミニ課題に取り組むこと (2時間) |
4 |
クラスとインスタンス(3) コンストラクタ、引数付きコンストラクタ(A-3-2~A-5-2)
【事前学習】コンストラクタを扱うサンプルプログラムを手打ちして実行できるようにしておくこと (2時間) 【事後学習】コンストラクタに関するミニ課題に取り組むこと (2時間) |
5 |
クラスとインスタンス(4) プログラム作成演習 (A-3-2~A-5-2)
【事前学習】第1回〜第4回で学んだクラス・インスタンス、コンストラクタなどをあらかじめ復習しておくこと (2時間) 【事後学習】授業内で十分に作成できなかったプログラム作成課題を復習しておくこと (2時間) |
6 |
継承(1) スーパークラスとサブクラス (A-3-2~A-5-2)
【事前学習】スーパークラス・サブクラスを扱うサンプルプログラムを手打ちして実行できるようにしておくこと (2時間) 【事後学習】スーパークラス・サブクラスに関するミニ課題に取り組むこと (2時間) |
7 |
継承(2) コンストラクタのあるクラスの継承 (A-3-2~A-5-2)
【事前学習】コンストラクタのあるクラスの継承を扱うサンプルプログラムを手打ちして実行できるようにしておくこと (2時間) 【事後学習】コンストラクタのあるクラスの継承に関するミニ課題に取り組むこと (2時間) |
8 |
継承(3) 抽象クラス、抽象メソッド(A-3-2~A-5-2)
【事前学習】抽象クラス・抽象メソッドを扱うサンプルプログラムを手打ちして実行できるようにしておくこと (2時間) 【事後学習】抽象クラス・抽象メソッドに関するミニ課題に取り組むこと (2時間) |
9 |
継承(4) オーバーロード、抽象クラスの活用方法(A-3-2~A-5-2)
【事前学習】オーバーロード、抽象クラスを扱うサンプルプログラムを手打ちして実行できるようにしておくこと (2時間) 【事後学習】オーバーロード、抽象クラスに関するミニ課題に取り組むこと (2時間) |
10 |
継承(5) クラス間の関係、UML、なぜオブジェクト指向で作るのか(A-3-2~A-5-2)
【事前学習】第6回~第9回で学んだ内容をあらかじめ復習しておくこと (2時間) 【事後学習】クラス間の関係、UMLなどに関するミニ課題に取り組むこと (2時間) |
11 |
継承(6) プログラム作成演習(A-3-2~A-5-2)
【事前学習】第1回~第10回で学んだ内容をあらかじめ復習しておくこと (2時間) 【事後学習】授業内で十分に作成できなかったプログラム作成課題を復習しておくこと (2時間) |
12 |
英語で学ぶOOP(初級編)(オンデマンド型) (A-3-2~A-5-2)
【事前学習】これまで学んだ内容をあらかじめ復習しておくこと (2時間) 【事後学習】分からなかった箇所を復習しておくこと (2時間) |
13 |
グループワークによるリファクタリング(設計篇)(課題研究)(A-3-2~A-5-2)
【事前学習】これまで学んだ内容を一通り復習し、理解を深めておくこと (2時間) 【事後学習】クラスの設計・実装が終わらなかった場合は設計・実装を終わらせること (2時間) |
14 |
グループワークによるリファクタリング(実装篇)(課題研究)(A-3-2~A-5-2)
【事前学習】これまで学んだ内容を一通り復習し、理解を深めておくこと (2時間) 【事後学習】クラスの実装が終わらなかった場合は実装を終わらせること (2時間) |
15 |
授業内試験と解説(第1回~第14回の内容に関して試験を通じて理解を深める)
【事前学習】第1回~第14回で学んだ内容を復習して理解を深めておくこと (2時間) 【事後学習】試験問題のうち出来が悪かったものについて復習すること (2時間) |
その他 | |
---|---|
教科書 | なし |
参考書 | なし |
成績評価の方法及び基準 | 試験(60%)、レポート(20%)、授業参画度(20%) ・レポート課題は1回課す予定である。 ・授業参画度は、授業内のコンピュータ実習や毎回の事前学習・事後学習の提出状況から判断する。 ・対面参加が困難な学生:オンラインにて代替試験を実施する。不正防止のため、試験終了後に面談を実施して理解度を確認する場合がある。 |
オフィスアワー | Slackで随時質問を受け付ける。個人的な内容を含まない質問は、授業ごとに用意されたチャンネルに投稿することを原則とする。 対面での質問・相談を希望する場合は、授業時にその旨を申し出ること。 |