Git Product home page Git Product logo

Comments (7)

thori0908 avatar thori0908 commented on August 11, 2024

課題1

  • オブジェクト
    :クラスから生成したインスタンスを参照代入したもの.
  • クラス
    :インスタンスを作成するために,プロパティとメソッドが定義されたもの.
    • プロパティ
      :クラス内で保持される変数.クラス定義時に定義される.
    • メソッド
      :クラス内で定義される処理.
    • コンストラクタ/デストラクタ
      :クラスのインスタンス作成時や削除時に,自動的に呼ばれるメソッド.
    • カプセル化
      :アクセス修飾子によって,クラス外からプロパティへのアクセスを,制限すること.
  • インスタンス化
    :クラスからnew演算子によって,実体を作成すること
  • アクセス修飾子
    :クラスの外側や内側からの参照など,メソッドやプロパティにアクセス可能な範囲を示す修飾子.修飾子にはpublic,private, protectedがある.
  • abstract修飾子
    :子クラスで必ず実装する必要がある親クラスのメソッドが,子クラスで実装されない場合,エラーを表示し,子クラスで実装すべきメソッドを明確にする.
    Ref.
    http://www.tohoho-web.com/java/modifier.htm
  • staticキーワード
    :インスタンス化せず,クラスのプロパティやメソッドにアクセスするときに用いる.
  • getter/setter
    :カプセル化したプロパティを,取得するgetメソッドや設定するgetメソッドを作成することによって,直接アクセスすること.
    Ref.
    http://redline.hippy.jp/lab/php/php_settergetter.php
  • 継承
    :指定するクラスのメソッドやプロパティを引き継ぎ,新たなクラスを定義すること.
    • オーバーライド
      :親クラスで定義されたメソッドやプロパティを,子クラスを再定義することによって,上書きすること.
    • parent
      :子クラスから親クラスのコンストラクタを呼び出すときに使う.

from training.

fr-itaya avatar fr-itaya commented on August 11, 2024

確認しました、課題1OKです!

from training.

fr-matsuo avatar fr-matsuo commented on August 11, 2024
  • getter/setter

直接アクセスできてしまうと、カプセル化する意味がなくなってしまいます。
基本的に、カプセル化したプロパティにアクセスするものなので、どう関係があるか調べてみましょう。

from training.

thori0908 avatar thori0908 commented on August 11, 2024

課題1

  • オブジェクト
    :クラスから生成したインスタンスを参照代入したもの.
  • クラス
    :インスタンスを作成するために,プロパティとメソッドが定義されたもの.
    • プロパティ
      :クラス内で保持される変数.クラス定義時に定義される.
    • メソッド
      :クラス内で定義される処理.
    • コンストラクタ/デストラクタ
      :クラスのインスタンス作成時や削除時に,自動的に呼ばれるメソッド.
    • カプセル化
      :アクセス修飾子によって,クラス外からプロパティへのアクセスを,制限すること.
  • インスタンス化
    :クラスからnew演算子によって,実体を作成すること
  • アクセス修飾子
    :クラスの外側や内側からの参照など,メソッドやプロパティにアクセス可能な範囲を示す修飾子.修飾子にはpublic,private, protectedがある.
  • abstract修飾子
    :子クラスで必ず実装する必要がある親クラスのメソッドが,子クラスで実装されない場合,エラーを表示し,子クラスで実装すべきメソッドを明確にする.
    Ref.
    http://www.tohoho-web.com/java/modifier.htm
  • staticキーワード
    :インスタンス化せず,クラスのプロパティやメソッドにアクセスするときに用いる.
  • getter/setter
    :カプセル化したプロパティを,取得するgetメソッドや設定するsetメソッドを作成し,作成したメソッドを介して,プロパティの取得・設定を行う.get/setメソッドを介することによって,修正時に,クラス内のget/setメソッドの修正だけで�,クラスを参照するすべての箇所に反映される�.
    Ref.
    http://www.objective-php.net/basic/capsule
    http://redline.hippy.jp/lab/php/php_settergetter.php
  • 継承
    :指定するクラスのメソッドやプロパティを引き継ぎ,新たなクラスを定義すること.
    • オーバーライド
      :親クラスで定義されたメソッドやプロパティを,子クラスを再定義することによって,上書きすること.
    • parent
      :子クラスから親クラスのコンストラクタを呼び出すときに使う.

課題2

require
:指定したファイルを読み込む,読み込みに失敗した場合,エラーを表示し,処理が停止する.

require_once
:requireとほぼ同様.すでに読み込まれたファイルの場合は読み込まれない.

include
:指定したファイルを読み込む,読み込みに失敗した場合,警告を表示するが,処理は続行される

include_once
:includeとほぼ同様�.すでに読み込まれたファイルの場合は読み込まれない.

課題4

完全コンストラクタパターン
setterの呼び出しなしで,コンストラクタの呼び出しのみで,初期化されるべきプロパティに値が入っている,完全なインスタンスを作成する�,クラス設計.

Ref.
http://d.hatena.ne.jp/asakichy/20100119/1263861423
http://codeiq.hatenablog.com/entry/2013/08/26/155959
http://fukuchiharuki.me/wiki/index.php?%E8%A8%AD%E8%A8%88%E3%83%91%E3%82%BF%E3%83%BC%E3%83%B3%2F%E5%AE%8C%E5%85%A8%E3%82%B3%E3%83%B3%E3%82%B9%E3%83%88%E3%83%A9%E3%82%AF%E3%82%BF

型キャスト
Ref.
http://php.net/manual/ja/language.types.type-juggling.php

from training.

fr-matsuo avatar fr-matsuo commented on August 11, 2024

確認しました、課題2までOKです。

from training.

fr-itaya avatar fr-itaya commented on August 11, 2024

課題2迄確認しました、引き続き進めて下さい~

from training.

fr-matsuo avatar fr-matsuo commented on August 11, 2024

#54 で完了したのでクローズします。

from training.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.