検索したい科目/教員名/キーワードを入力し「検索開始」ボタンをクリックしてください。
※教員名では姓と名の間に1文字スペースを入れずに、検索してください。
令和2年度以降入学者 | オブジェクト指向プログラミング | ||||
---|---|---|---|---|---|
令和元年度以前入学者 | オブジェクト指向プログラミング | ||||
教員名 | 北原鉄朗 | ||||
単位数 | 2 | 学年 | 3 | 開講区分 | 文理学部 |
科目群 | 情報科学科 | ||||
学期 | 前期 | 履修区分 | 選択必修 |
授業の形態 | 対面授業(一部において課題研究を併用) Blackboard ID:20221442 |
---|---|
授業概要 | 今日広く使われているプログラミング言語のほとんどが「オブジェクト指向」という考え方の基に設計されている。オブジェクト指向プログラミングには、多くのカタカナ語が出現し、正確に理解し、使いこなすことは必ずしも簡単ではない。本科目では、2年次科目「オブジェクト指向プログラミング入門」で学んだ内容を復習しつつ、より進んだ内容を学び、実践的な状況での演習を行うことで、オブジェクト指向プログラミングを活用したプログラムを理解し、自ら作成できるようになることを目的とする。 |
授業のねらい・到達目標 | ・オブジェクト指向プログラミングに関する概念を正確に理解することができる。 ・オブジェクト指向プログラミングの概念を活用してプログラムを設計することができる。 ・オブジェクト指向プログラミングの概念を活用して設計・実装したプログラムの良し悪しを考察することができる。 この科目は文理学部(学士(理学))のディプロマポリシーDP6及びカリキュラムポリシーCP9に対応している。 なお,新カリキュラム(令和2年度以降入学者対象)では,この科目は文理学部(学士(理学))のディプロマポリシー DP3-5及びカリキュラムポリシー CP3-5に対応している。 ・仮説に基づく課題や問題を提示し,客観的な情報を基に,論理的・批判的に考察できる。(A-3-3) ・問題を分析し,複数の解決策を提示した上で,問題を解決することができる。(A-4-3) ・責任と役割を担い,新しい問題に取り組む意識を持ち,そのために必要な情報科学の知識・情報を収集することができる。(A-5-3) |
授業の方法 | 授業の形式:【講義・実習】 ・教員による学習内容の解説とプログラミング実習を中心に授業を進める。 ・授業内で随時小テストを行う場合がある。また、授業後に適宜ミニ課題を課す。 ・課題研究の回では、レポート課題を課す。 対面参加が困難な学生への措置 ・オンライン受講の要件:学部の方針に従う。 ・オンライン受講の方法:YouTube Liveなどを用いたライブ配信または公開済みのYouTube動画を視聴し、対面受講者と同じ実習に取り組む。質疑応答はSlack上で行う。 |
履修条件 | 2年次の「オブジェクト指向プログラミング入門」の内容を十分に理解していること。 |
授業計画 | |
---|---|
1 |
【対面】本科目の到達目標および授業方法の確認、「オブジェクト指向プログラミング入門」の復習 (A-3-3~A-5-3)
【事前学習】YouTubeに公開した「オブジェクト指向プログラミング入門」の動画教材を見て復習しておくこと (2時間) 【事後学習】次回のテストに向けて、「オブジェクト指向プログラミング入門」で学んだ内容の理解を深めておくこと (2時間) |
2 |
【対面】「オブジェクト指向プログラミング入門」の復習テストとその解説 (A-3-3~A-5-3)
【事前学習】「オブジェクト指向プログラミング入門」で学んだ内容の理解を深めておくこと (2時間) 【事後学習】テストで出来の悪かった問題を復習しておくこと (2時間) |
3 |
【対面】Javaプログラミング(1) Java入門 (A-3-3~A-5-3)
【事前学習】Javaを用いたサンプルプログラムを手打ちして実行できるようにしておくこと (2時間) 【事後学習】Javaプログラミングに関するミニ課題に取り組むこと (2時間) |
4 |
【対面】Javaプログラミング(2) staticフィールド/staticメソッド、GUIプログラミング (A-3-3~A-5-3)
【事前学習】staticフィールド/staticメソッドに関するサンプルプログラムを手打ちして実行できるようにしておくこと (2時間) 【事後学習】staticフィールド/staticメソッドに関するミニ課題に取り組むこと (2時間) |
5 |
【対面】Javaプログラミング(3) プログラミング実習(A-3-3~A-5-3)
【事前学習】第3回~第4回の内容を復習しておくこと (2時間) 【事後学習】授業内で十分に作成できなかったプログラム作成課題を復習しておくこと (2時間) |
6 |
【対面】カプセル化(1) privateなメソッド/フィールド(A-3-3~A-5-3)
【事前学習】privateなメソッド/フィールドに関するサンプルプログラムを手打ちして実行できるようにしておくこと (2時間) 【事後学習】privateなメソッド/フィールドに関するミニ課題に取り組むこと (2時間) |
7 |
【対面】カプセル化(2) パッケージとpublicなメソッド/フィールド(A-3-3~A-5-3)
【事前学習】パッケージとpublicなメソッド/フィールドに関するサンプルプログラムを手打ちして実行できるようにしておくこと (2時間) 【事後学習】パッケージとpublicなメソッド/フィールドに関するミニ課題に取り組むこと (2時間) |
8 |
【対面】カプセル化(3) イミュータブルなクラス(A-3-3~A-5-3)
【事前学習】イミュータブルなクラスに関するサンプルプログラムを手打ちして実行できるようにしておくこと (2時間) 【事後学習】イミュータブルなクラスに関するミニ課題に取り組むこと (2時間) |
9 |
【対面】ポリモーフィズム(1) 抽象クラスの復習(A-3-3~A-5-3)
【事前学習】「オブジェクト指向プログラミング入門」で学んだ抽象クラスや抽象メソッドについて復習しておくこと (2時間) 【事後学習】抽象クラスに関するミニ課題に取り組むこと (2時間) |
10 |
【対面】ポリモーフィズム(2) ポリモーフィズムとは、インタフェース(A-3-3~A-5-3)
【事前学習】ポリモーフィズム、インタフェースに関するサンプルプログラムを手打ちして実行できるようにしておくこと (2時間) 【事後学習】ポリモーフィズム、インタフェースに関するミニ課題に取り組むこと (2時間) |
11 |
【対面】ポリモーフィズム(3) インタフェースを使ったポリモーフィズム実践 (A-3-3~A-5-3)
【事前学習】第9回~第10回の内容を復習しておくこと (2時間) 【事後学習】ポリモーフィズム(実践)に関するミニ課題に取り組むこと (2時間) |
12 |
【対面】実例から学ぶOOP(1) データ構造篇 (A-3-3~A-5-3)
【事前学習】「実例から学ぶOOP」(データ構造篇)の資料をあらかじめ読んで内容を把握しておくこと (2時間) 【事後学習】「実例から学ぶOOP」(データ構造篇)に関するミニ課題に取り組むこと (2時間) |
13 |
【対面】実例から学ぶOOP(2) Swing篇 (A-3-3~A-5-3)
【事前学習】「実例から学ぶOOP」(Swing篇)の資料をあらかじめ読んで内容を把握しておくこと (2時間) 【事後学習】「実例から学ぶOOP」(Swing篇)に関するミニ課題に取り組むこと (2時間) |
14 |
【課題研究】実例から学ぶOOP(3) (A-3-3~A-5-3)
【事前学習】第12回~第13回の内容をあらかじめ復習しておくこと (2時間) 【事後学習】授業内で課された課題に取り組み、レポートにまとめて所定の方法で提出すること (2時間) |
15 |
【対面】授業内試験と解説(第1回~第14回の内容に関して試験を通じて理解を深める)
【事前学習】第1回~第14回で学んだ内容を復習して理解を深めておくこと (2時間) 【事後学習】試験問題のうち出来が悪かったものについて復習すること (2時間) |
その他 | |
---|---|
教科書 | なし |
参考書 | なし |
成績評価の方法及び基準 | 試験(60%)、レポート(20%)、授業参画度(20%) ・試験には、授業内に実施する各種テストを含める。 ・レポート課題は1回課す予定である。 ・授業参画度は、授業内のコンピュータ実習や毎回の事前学習・事後学習の提出状況から判断する。 ・対面授業が困難な学生:オンラインにて代替試験を実施する。不正防止のため、試験終了後に面談を実施して理解度を確認する場合がある。 |
オフィスアワー | Slackで随時質問を受け付ける。個人的な内容を含まない質問は、授業ごとに用意されたチャンネルに投稿することを原則とする。 対面での質問や相談を希望する場合は、事前にSlack等で連絡をした上で必要に応じて受け付ける。 |