文理学部シラバスTOP > 文理学部 > 情報科学科 > オブジェクト指向プログラミング
日本大学ロゴ

オブジェクト指向プログラミング

このページを印刷する

令和2年度以降入学者 オブジェクト指向プログラミング
令和元年度以前入学者 オブジェクト指向プログラミング
教員名 北原鉄朗
単位数    2 学年 3・4 開講区分 文理学部
科目群 情報科学科
学期 前期 履修区分 選択必修
授業形態 対面授業(一部遠隔授業)
Blackboard ID 20231413
授業概要 今日広く使われているプログラミング言語のほとんどが「オブジェクト指向」という考え方の基に設計されている。オブジェクト指向プログラミングには、多くのカタカナ語が出現し、正確に理解し、使いこなすことは必ずしも簡単ではない。本科目では、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 OOP再入門(1) クラスとインスタンス、コンストラクタ(A-3-3~A-5-3)
【事前学習】「オブジェクト指向プログラミング入門」で学んだクラスとインスタンス、コンストラクタの復習をしておくこと (2時間)
【事後学習】クラスとインスタンス、コンストラクタに関するミニ課題に取り組むこと (2時間)
【授業形態】対面授業
3 OOP再入門(2) 継承、抽象クラス(A-3-3~A-5-3)
【事前学習】「オブジェクト指向プログラミング入門」で学んだ継承、抽象クラスの復習をしておくこと (2時間)
【事後学習】継承、抽象クラスに関するミニ課題に取り組むこと (2時間)
【授業形態】対面授業
4 OOP再入門(3) ここまでの理解度確認テストとその解説(A-3-3~A-5-3)
【事前学習】第1回~第3回の内容を十分に復習しておくこと (2時間)
【事後学習】出来の悪かった問題を復習しておくこと (2時間)
【授業形態】対面授業
5 Java入門(1) Javaプログラムの書き方(A-3-3~A-5-3)
【事前学習】授業資料をあらかじめ読んでおくこと。Dockerを使ったUbuntuの起動方法を確かめておくこと (2時間)
【事後学習】Javaプログラミングに関するミニ課題に取り組むこと (2時間)
【授業形態】対面授業
6 Java入門(2) JavaによるGUIプログラミング(A-3-3~A-5-3)
【事前学習】授業資料をあらかじめ読んでおくこと。Dockerを使ったUbuntuの起動方法を確かめておくこと (2時間)
【事後学習】JavaによるGUIプログラミングに関するミニ課題に取り組むこと (2時間)
【授業形態】対面授業
7 カプセル化(1) privateなメソッド/フィールドとpublicなメソッド/フィールド(A-3-3~A-5-3)
【事前学習】第6回までの内容を復習しておくこと (2時間)
【事後学習】privateなメソッド/フィールドとpublicなメソッド/フィールドに関するミニ課題に取り組むこと (2時間)
【授業形態】対面授業
8 カプセル化(2) イミュータブルなクラス(A-3-3~A-5-3)
【事前学習】第7回までの内容を復習しておくこと (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等で連絡をした上で必要に応じて受け付ける。

このページのトップ