【週刊ドットインストール】 『データで学ぶアルゴリズム Level 1-2』を運営中、Level 1-2も来週リリース予定!
お世話になります。 いつも大変わかりやすい動画と解説に感謝しております。
他の方の質問に似たものが既にありますが、より詳細を知りたいと思い質問いたします。
関数編ではグローバル変数である $pdo に関数内からアクセスできるようにするために $pdo を addTodo() や deleteTodo() の引数に渡していたのだと解釈しています。 ( global キーワードを使用するよりはこちらの方がより良い書き方であるため。)
$pdo
addTodo()
deleteTodo()
global
今回のクラス編では $pdo を Todo::add() や Todo::delete() などのメソッドの引数に渡さずに Todo クラスをインスタンス化する際に引数として渡してその際にコンストラクターによって, $pdo を Todo クラスから生成されるインスタンスの private プロパティの値に設定しているのは、 $pdo が Todo クラス内からのみ参照されるということを保証するのが目的という解釈でよろしいでしょうか? (index.php ファイルの 7 行目 $pdo = Database::getInstance(); で生成された $pdo が Todo クラスでのみ利用されるということをわかりやすくするため。)
Todo::add()
Todo::delete()
Todo
private
$pdo = Database::getInstance();
それとも、Todo クラスをインスタンス化する際に予め引数として $pdo を渡して、それを private プロパティに設定することによって Todo クラスのメソッドを呼び出す度にいちいち引数に $pdo を渡す記述を省略するのが目的でしょうか?
よろしくお願いいたします。
ドットインストールは、3分動画でマスターできるプログラミング学習サービスです。
3分で気軽に学習でき、スマートフォンからも視聴可能です。ホームページやWebサービスの制作を通して、実践的にプログラミングを学べます。
他にも、ゲーム制作やデータ分析・機械学習・AIに使われる言語まで幅広くカバー。学びたい分野のレッスンがきっと見つかります。
この回答を見るにはプレミアムプランへの登録が必要です
お世話になります。
いつも大変わかりやすい動画と解説に感謝しております。
他の方の質問に似たものが既にありますが、より詳細を知りたいと思い質問いたします。
関数編ではグローバル変数である
$pdoに関数内からアクセスできるようにするために$pdoをaddTodo()やdeleteTodo()の引数に渡していたのだと解釈しています。(
globalキーワードを使用するよりはこちらの方がより良い書き方であるため。)今回のクラス編では
$pdoをTodo::add()やTodo::delete()などのメソッドの引数に渡さずにTodoクラスをインスタンス化する際に引数として渡してその際にコンストラクターによって,$pdoをTodoクラスから生成されるインスタンスのprivateプロパティの値に設定しているのは、$pdoがTodoクラス内からのみ参照されるということを保証するのが目的という解釈でよろしいでしょうか?(index.php ファイルの 7 行目
$pdo = Database::getInstance();で生成された$pdoがTodoクラスでのみ利用されるということをわかりやすくするため。)それとも、
Todoクラスをインスタンス化する際に予め引数として$pdoを渡して、それをprivateプロパティに設定することによってTodoクラスのメソッドを呼び出す度にいちいち引数に$pdoを渡す記述を省略するのが目的でしょうか?よろしくお願いいたします。