2015/01/02 / 最終更新日時 : 2015/01/02 米良太 オブジェクト指向 デザインパターン Adapter(Wrapper):包んで再利用 概要 あるオブジェクトを受け取るメソッドがある場合に、 必要なメンバーを持っていないオブジェクトにメンバーを継承させる、 接続用オブジェクトを介してオブジェクトをやり取るするパターン 本例ではPrintインターフェイス、 […]
2014/12/28 / 最終更新日時 : 2014/12/28 米良太 オブジェクト指向 デザインパターン Iterator:1つずつ数える 概要 配列系データからデータを取得するデザインパターン。 hasNext()とnext()メソッドだけを実装し、 データ構造を見せない(index番号等を引数に渡さない)。 配列におけるindexの開始値や終了値の認識の […]
2014/11/23 / 最終更新日時 : 2014/11/23 米良太 オブジェクト指向 オブジェクト指向: デザインパターン オブジェクトの生成に関するパターン FactoryMethod(工場メソッド) クラス利用者がインスタンスを作成するのではなく、 クラス設計者がインスタンスを作成し、利用者に渡すパターン。 クラス内に他クラスのインスタン […]
2014/11/23 / 最終更新日時 : 2014/11/23 米良太 オブジェクト指向 オブジェクト指向: クラス図 継承 interface 集約 スコープ + public – private # protected ~ package static インスタンス変数名 メソッド名
2014/11/23 / 最終更新日時 : 2024/05/23 米良太 オブジェクト指向 オブジェクト指向: 名前空間 概要 クラスを種類ごとに分ける管理方法。 名前空間を指定する事で同名のクラスを衝突せずに参照できる。 大規模なプログラム、他人に作ったプログラムを頻繁に利用するオブジェクト指向プログラムでは必須の技術 定義・参照 PHP […]
2014/11/23 / 最終更新日時 : 2014/11/23 米良太 オブジェクト指向 オブジェクト指向: ポリモーフィズム 概要 多態性・多相性 オーバーライド(=基底クラスと同名の、しかし異なる機能のメソッドを定義する事)を用いてコーディング量を減らすテクニック。 インスタンスからはどのクラスか?を意識せず動的に多様な動作を実現できる。 メ […]
2014/11/19 / 最終更新日時 : 2024/10/05 米良太 オブジェクト指向 オブジェクト指向: 継承 概要 クラスを参照し、参照先クラスのメンバー(変数、メソッド)全てを利用する事。 更に機能を付け足す事ができる。 継承方法 通常 PHP Python JAVA C# C++ VB.NET <?php namesp […]
2014/11/19 / 最終更新日時 : 2024/05/15 米良太 オブジェクト指向 オブジェクト指向: コンストラクタ コンストラクタ 通常 インスタンス作成時に呼び出されるメソッド PHP Python JavaScript JAVA C# C++ VB.NET $p = new MyClass(“aaa”); […]
2014/11/19 / 最終更新日時 : 2024/05/25 米良太 オブジェクト指向 オブジェクト指向: プロパティ・メソッド クラス変数、インスタンス変数 Python class Parent: # クラス変数 class_var = “Parent class_var” def __init__(self): […]
2014/11/19 / 最終更新日時 : 2024/04/16 米良太 オブジェクト指向 オブジェクト指向: 特殊なクラス 静的クラス(static/Shared) クラス定義部分に直接アクセスし、インスタンス化時に作成(複写)されない。 静的クラス、静的インスタンス変数、静的メソッドがある。 スタティック領域にデータがあり、クラスから作成し […]