プロジェクト概要
CoddyのPHPジャーニー「オブジェクト指向プログラミング」セクションの一部。レッスン 82/91。
チャレンジ
簡単Library Management System プロジェクトを、基盤の構築から始めましょう。この章全体で中核となるドメインオブジェクトとして機能する、シンプルな Book class を設定します。
コードを2つのファイルに整理します。
Book.php: 図書館の本を表すBookclass をCreateします。本にはthreeつのpropertiesを持たせます。isbn(string)、title(string)、author(string) です。コードを簡潔に保つため、constructor promotion を使用します。getInfo()というmethodをAddし、本の詳細を次の形式のformatted stringとして返します:"[title] by [author] (ISBN: [isbn])"main.php: Bookファイルをincludeし、classを実際に動作させます。BookのISBN、title、authorというthreeつの入力を受け取ります。これらのvaluesでBookinstanceをCreateし、getInfo()をcallingしたresultをPrintします。
これはlibrary systemの最初のbuilding blockです。今後のレッスンでは、この基盤にusers、borrowing functionality、administrative featuresをAddし、すべてが一体となって動作するcohesiveなapplicationへと拡張していきます。
自分で試してみよう
<?php
require_once 'Book.php';
// 入力を読み取る
$isbn = trim(fgets(STDIN));
$title = trim(fgets(STDIN));
$author = trim(fgets(STDIN));
// TODO: 入力値でBookインスタンスを作成する
// TODO: getInfo()を呼び出した結果を出力する
?>オブジェクト指向プログラミングのすべてのレッスン
自分で練習してみよう: PHPオンラインコンパイラ