引数の取扱いとオブジェクト指向の導入
値渡し,ポインタ渡し,参照渡し C言語をあまりやっていない学科の人向けのC言語の基礎として、関数との値渡し, ポインタ渡しについて説明する。ただし、参照渡しについては電子情報の授業でも細かく扱っていない内容なので電子情報 […]
オブジェクト指向プログラミング・ガイダンス2023
専攻科2年のオブジェクト指向プログラミングの授業の1回目。 オブジェクト指向プログラミング・シラバス 2023年度 オブジェクト指向プログラミング 2022年度講義資料 最近のプログラミングの基本となっているオブジェクト […]
オブジェクト指向プログラミング(ソフトウェア工学)
オブジェクト指向プログラミングは、最近の多くのプログラム言語で取り入れられている機能。 今回は、構造化プログラミング → オブジェクト指向(クラス,メソッド)、コンストラクタ、派生・継承、仮想関数の概念を紹介する。 オブ […]
オブジェクト指向プログラミング2022全講義録
オブジェクト指向/2022/ガイダンス 構造体とオブジェクト指向 オブジェクト指向の基本プログラム 複素数クラスのプログラム例への質問 複素数クラスによる演習 派生と継承 派生と継承と仮想関数 抽象クラス(純粋仮想基底ク […]
オブジェクト指向とソフトウェア工学
オブジェクト指向プログラミングの最後の総括として、 ソフトウェア工学との説明を行う。 トップダウン設計とウォーターフォール型開発 ソフトウェア工学でプログラムの開発において、一般的なサイクルとしては、 専攻科などではどこ […]
UMLと振る舞い図
前回の講義で説明した構造図に続いて、処理の流れを説明するための振る舞い図の説明。 講義の後半は、UML作成のレポートの課題時間とする。 振る舞い図 参考資料をもとに振る舞い図の説明を行う。 ユースケース図 ユーザなど外部 […]
UMLと構造図
前回の説明のUMLのできたころの話を踏まえ、UMLの中のプログラムの構造図の説明を行う。 UML(Unified Modeling Language)記法が生まれるまで 巨大なプロジェクトでプログラムを作る場合、対象とな […]
多重継承の問題
派生や継承について、一通りの説明が終わったので、データ構造(クラスの構造)の定義の方法にも様々な考え方があり、どのように実装すべきかの問題点を考えるための説明を行う。その中で特殊な継承の問題についても解説する。 動物・鳥 […]
複素数クラスでre-imとr-thのコンストラクタ
複素数クラスの課題で、直交座標系のコンストラクタと曲座標系のコンストラクタを作りたいとの質問。でも、以下のようなコンストラクタでは、どちらも Complex( double , double ) であり、区別できない。 […]
抽象クラス(純粋仮想基底クラス)
前回説明した仮想関数では、基底クラスから派生させたクラスを作り、そのデータが混在してもクラスに応じた関数(仮想関数)を呼び出すことができる。 この仮想関数の機能を逆手にとったプログラムの記述方法として、抽象クラス(純粋仮 […]