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

科目基礎情報

学校 香川高等専門学校 開講年度 2017
授業科目 オブジェクト指向プログラミング
科目番号 0019 科目区分 専門 / 選択
授業形態 授業 単位の種別と単位数 学修単位: 2
開設学科 電子情報通信工学専攻(2023年度以前入学者) 対象学年 専1
開設期 後期 週時間数 2
教科書/教材 Tucker!著「憂鬱なプログラマのためのオブジェクト指向開発講座C++による実践的ソフトウェア構築入門翔泳社」
担当教員 河田 進,谷口 億宇

到達目標

1.オブジェクト指向に基づいてシステム分析ができる
2.オブジェクト指向に基づいてシステム設計ができる
3.C++によりプログラミングができる

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1オブジェクト指向の概念に基づき,システムの機能の分析,クラスの抽出や操作の抽出,クラスの設計やコード化ができるクラスの抽出や操作の抽出,クラスの設計やコード化ができるクラスの抽出や操作の抽出,クラスの設計やコード化ができない
評価項目2
評価項目3

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

教育方法等

概要:
1.オブジェクト指向の中心となるクラスについて理解する
2.システムの目的や機能から用意すべきクラスを洗い出し,動的・静的属性を求める方法を学ぶ
3.プログラムを作らないための技術である継承を理解する
4.クラス間の関係を把握する方法を理解する
5.システムの流れを把握してドキュメント化する方法を理解する
6.C++によえうプログラミングの方法を習得する
授業の進め方・方法:
教科書を中心に様々な概念を理解し,必要に応じ演習を行う。さらに簡単なシステムについて分析/設計/コード化の演習をグループで行う。
注意点:

授業計画

授業内容 週ごとの到達目標
後期
3rdQ
1週 ガイダンス
オブジェクト指向開発の手順
オブジェクト指向がシステムの仕様変更に強い開発方法であることを理解する
2週 クラスとインスタンス クラスが型であることを理解する。
従来とは異なり,クラスから作られるインスタンス(オブジェクト)にメッセージを与えることで処理が進んでいく概念を理解する
3週 静的分析 クラスの抽出方法,クラスに持たせる操作の抽出方法,クラス持たせる属性の抽出方法を理解する
4週 クラス間の関連 クラス間には関連があり,互いに操作されるために必要な分析であることを理解する
5週 継承 継承の概念を理解し,プログラム開発コストやデバッグコストが小さくなることを理解する
6週 クラス属性と派生属性 クラスから生成される複数のインスタンスが共通して利用できる変数であるクラス属性の利用法を理解する。
実際には定義しないが間接的に利用する派生属性について理解する
7週 多重継承 基底クラスが複数存在するようなクラスの設計法を理解できる
8週 オブジェクトの状態 インスタンスは内部にデータメンバを持っており,データの内容により同じメッセージに対して異なる結果を出力することを理解する
4thQ
9週 オブジェクトの連携 オブジェクト指向ではインスタンス同士がメッセージをやりとりして処理が進む。どのインスタンスがどのインスタンスにいつどの様なメッセージを送るのかという連携の流れを表現する方法を理解する
10週 オブジェクト指向設計 クラスを利用してアプリケーションを設計できる。
11週 コード化の復習 C++でプログラムを書けるようになる
12週 分析/設計/コード化演習 オブジェクト指向に基づく,分析,設計,コード化ができるようになる
13週 分析/設計/コード化演習 オブジェクト指向に基づく,分析,設計,コード化ができるようになる
14週 分析/設計/コード化演習 オブジェクト指向に基づく,分析,設計,コード化ができるようになる
15週 まとめと復習
16週 試験

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

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

評価割合

試験分析演習設計演習コード化演習合計
総合評価割合50201020100
基礎的能力251051050
専門的能力251051050
分野横断的能力00000