オブジェクト指向とソフトウェア工学
オブジェクト指向プログラミングの最後の総括として、 ソフトウェア工学との説明を行う。 トップダウン設計とウォーターフォール型開発 ソフトウェア工学でプログラムの開発において、一般的なサイクルとしては、 専攻科などではどこ […]
その他の構造図と振る舞い図
前回の講義で説明した構造図について、クラス図・オブジェクト図以外について改めて説明と、振る舞い図の説明。 構造図 構造図の主なものとして、クラス図、オブジェクト図以外に、 パッケージ図(クラスなどをグループ化したパッケー […]
UMLの構造図・クラス図
UMLの構造図の書き方の説明。 詳しくは、参考ページのUML入門などが、分かりやすい。 クラス図 クラス図は、構造図の中の基本的な図で、 枠の中に、上段:クラス名、中段:属性(要素)、下段:メソッド(関数)を記載する。 […]
UMLの概要
巨大なプロジェクトでプログラムを作成する場合、設計の考え方を図で示すことは、直感的な理解となるため重要であり、このために UML がある。以下にその考え方と記述方法を説明していく。 プログラムの考え方の説明 今まで、プロ […]
多重継承の問題
派生や継承について、一通りの説明が終わったので、最後に特殊な継承の問題を説明し、2回目のレポート課題を示す。 動物・鳥類・哺乳類クラス 派生や継承を使うと、親子関係のあるデータ構造をうまく表現できることを、ここまでの授業 […]
抽象クラスの演習(part2)
前回の講義に引き続き、抽象クラスの演習
抽象クラスの演習
前回までで、抽象クラス(純粋仮想基底クラス)の説明を行ったので、前回説明の甘かった点を若干説明して、後半は演習とする。 資料の再掲はしないけど、改めて以下の点を説明。 Java GUIによる派生の使われ方 コールバック関 […]
抽象クラスの純粋指定
専攻科のオブジェクト指向プログラミングの授業で、抽象クラスの説明をしたけど、抽象クラスで仮想関数が定義できないところでは、以下のような ” = 0 ” で、仮想関数が無いことを明示する必要がある。 […]
抽象クラス(純粋仮想基底クラス)
前回説明した仮想関数では、基底クラスから派生させたクラスを作り、そのデータが混在してもクラスに応じた関数(仮想関数)を呼び出すことができる。 この仮想関数の機能を逆手にとったプログラムの記述方法として、抽象クラス(純粋仮 […]
派生と継承と仮想関数
前回の派生と継承のイメージを改めて記載する。 // 基底クラス class Person { private: char name[ 20 ] ; int age ; public: Person( const char […]