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

科目基礎情報

学校 福井工業高等専門学校 開講年度 平成31年度 (2019年度)
授業科目 オブジェクト指向プログラミング
科目番号 0037 科目区分 専門 / 選択
授業形態 講義 単位の種別と単位数 学修単位: 2
開設学科 生産システム工学専攻 対象学年 専2
開設期 前期 週時間数 2
教科書/教材 配布資料および、「これで使える!オブジェクト指向」別所義夫,渡辺敏和著
担当教員 斉藤 徹

到達目標

(1)オブジェクト指向の基礎概念を理解し、オブジェクト指向を取り入れたプログラム開発ができる。(JB3)
(2)実際の処理対象をモデル化し、オブジェクトのモデリングの基礎能力をもち、
 その設計結果を UML 等の記法を用いて表現し、簡単なプログラム設計ができる。(JB3)

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
基礎的なオブジェクト指向プログラムの作成オブジェクト指向を用いた簡単なプログラムの動作を理解している。参考資料などを見ながら、オブジェクト指向を用いた簡単なプログラムの動作を説明できる。オブジェクト指向を用いた簡単なプログラムの動作を理解していない。
基礎的モデリング能力オブジェクト指向のプログラムのモデリングについて理解している。参考資料などを見ながら、オブジェクト指向のプログラムのモデリングについて説明できる。オブジェクト指向のプログラムのモデリングについて理解していない。

学科の到達目標項目との関係

JABEE JB3 説明 閉じる

教育方法等

概要:
本科目は融合複合型の「環境生産システム工学」教育プログラムの専門工学である『機械工学,電気電子工学,情報工学,応用化学,土木工学の各工学分野と,機械工学・電気電子工学・情報工学・応用化学・土木工学・経営工学・環境工学などのいくつかの工学分野における「ものづくり・環境づくり」と「システムデザイン」,および,新しい課題・分野に挑戦するために必要とされる創造的なデザイン力に関する知識と能力』の、「情報工学」系の「システムデザイン」系科目である。
近年大規模なプログラミングでは、プログラムの再利用の効率化を目的とした、データ中心の処理の記述方式であるオブジェクト指向プログラミングの技法が重要な技法として用いられている。本講義ではクラス・継承・仮想関数といったオブジェクト指向の基本的考え方を、演習を交えながら学習する。さらに処理記述対象となるデータの分析・モデル化技法であるUMLについても紹介し、プログラムの再利用の重要性を学習する。
尚、全体を通して企業等の実務経験者が指導を行う。
授業の進め方・方法:
巨大プログラムの作成における問題点を提起し、その基本となる処理やデータ構造の隠蔽化の重要性を理解させる。そしてその解決手段としてC++ やJavaといった近年広く利用されている処理系でのプログラム事例を交えながら、継承・仮想関数といったオブジェクト指向の技法の有効性を理解する。最終的には身の回りの処理の事例を、UML記法によりオブジェクトモデリングし、それに対する処理をプUML記法で表現し考察を行う。その過程を通して、システム全体の分析技法について考え、分析能力を高める。授業進度に応じてプログラミングやUMLについての課題を実施し、時間外学修により課題レポートとして作成・提出を行う。
注意点:
環境生産システム工学プログラム : JB3(◎)
関連科目:情報構造論(電子情報系本科4年)
学習教育目標の達成度評価方法:オブジェクト指向の基礎概念の課題25%、クラスの継承等の概念を用いた課題25%、UMLによる分析・表現の課題25%、説明問題や概念に関する設問を交えた期末試験25%、にて評価を行う。(期末試験では最大1回の追試を行う場合がある)
学習教育目標の達成度評価基準:学年成績60点以上

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 シラバスの説明・ガイダンス、構造体の使い方 C言語での構造体について理解する。
【授業外学修】C言語の構造体について予習
2週 オブジェクト指向の発展の歴史 オブジェクト指向の発展の歴史
【授業外学修】手続き型言語や構造化プログラミングについて予習
3週 手続き抽象とデータ抽象 手続き抽象とデータ抽象
【授業外学修】ブラックボックス化について予習
4週 構造体からクラスへ 構造体からクラスへ
【授業外学修】授業内容のプログラムを実際に動作させ、文法などを理解しておく
5週 C言語を用いた抽象化の演習、およびレポート作成 C言語を用いた抽象化の演習、およびレポート作成(中間確認)
【授業外学修】課題作成
6週 クラスとメソッド、および継承 クラスとメソッド、および継承
【授業外学修】派生・継承などについて予習
7週 C++を用いたオブジェクト指向の基礎演習 C++を用いたオブジェクト指向の基礎演習
【授業外学修】講義でのプログラムを実際に動作させC++の文法に慣れておく
8週 多重継承と多様性、仮想関数 多重継承と多様性、仮想関数
【授業外学修】仮想関数について予習
2ndQ
9週 グラフィックスを例題とした仮想関数演習、およびレポート作成 グラフィックスを例題とした仮想関数演習、およびレポート作成(中間確認)
【授業外学修】課題作成
10週 Java等の他の言語での事例 Java等の他の言語での事例
【授業外学修】未提出のレポート課題について課題レポート作成
11週 UML記法(オブジェクト図、ユースケース図など) UML記法(オブジェクト図、ユースケース図など)
【授業外学修】フローチャート記法の利点・欠点について考察しておくこと
12週 オブジェクトのモデリング オブジェクトのモデリング
【授業外学修】状態遷移図などについて復習しておくこと
13週 プログラムの設計と実装 プログラムの設計と実装
【授業外学修】特別研究のテーマを対象にUML記法の適用したらどういう記載になるか考察しておくこと
14週 モデリングとプログラム設計の演習、およびレポート作成 モデリングとプログラム設計の演習、およびレポート作成
【授業外学修】レポート作成
15週 期末試験
16週 学習のまとめ 学習のまとめ
【授業外学修】これまでの内容について、問題点などを考察しておくこと

モデルコアカリキュラムの学習内容と到達目標

分類分野学習内容学習内容の到達目標到達レベル授業週

評価割合

試験抽象化レポート仮想関数レポートUMLレポート合計
総合評価割合25252525100
基礎的能力1515151055
専門的能力1010101545