Ringkasan Proyek
Termasuk bagian Pemrograman Berorientasi Objek dalam perjalanan PHP di Coddy. Pelajaran 82 dari 91.
Tantangan
MudahMari kita mulai proyek Sistem Manajemen Perpustakaan dengan menyiapkan fondasinya: sebuah class Book sederhana yang akan berfungsi sebagai object domain inti sepanjang bab ini.
Kamu akan menyusun kodemu dalam dua file:
Book.php: Buat classBookyang merepresentasikan buku perpustakaan. Bukumu harus memiliki tiga property:isbn(string),title(string), danauthor(string). Gunakan promosi constructor agar kodemu tetap rapi. Tambahkan method bernamagetInfo()yang mengembalikan string berformat dengan detail buku seperti ini:"[title] by [author] (ISBN: [isbn])"main.php: Sertakan file Book dan gunakan class-mu. Kamu akan menerima tiga input: ISBN, judul, dan penulis sebuah buku. Buat instanceBookdengan nilai-nilai ini, lalu cetak hasil pemanggilangetInfo().
Ini adalah blok bangunan pertama sistem perpustakaanmu. Dalam pelajaran mendatang, kamu akan mengembangkan fondasi ini dengan menambahkan pengguna, fungsionalitas peminjaman, dan fitur administratif, semuanya bekerja bersama sebagai aplikasi yang terpadu.
Coba sendiri
<?php
require_once 'Book.php';
// Baca input
$isbn = trim(fgets(STDIN));
$title = trim(fgets(STDIN));
$author = trim(fgets(STDIN));
// TODO: Buat instance Book dengan nilai input
// TODO: Tampilkan hasil pemanggilan getInfo()
?>Semua pelajaran di Pemrograman Berorientasi Objek
1Dasar-Dasar OOP
File EksternalPengenalan OOPclass vs objectKata Kunci $thismethodpropertyConstructor (__construct)Destructor (__destruct)Ringkasan: Kalkulator Sederhana4Pewarisan
Pewarisan DasarKata Kunci parent::Penimpaan methodKata Kunci finalClass AbstrakRingkasan: Hierarki Karyawan7Enkapsulasi
Public, Protected, PrivateModifier Akses secara MendalamGetter dan SetterPenyembunyian InformasiPromosi Constructor (8.0)Ulasan: Sistem Catatan Siswa2Namespace dan Autoloading
Pengenalan NamespaceKata Kunci useStandar Autoloading PSR-4Autoloader ComposerRingkasan: Proyek yang Terorganisasi5Interface dan Kontrak
Pengenalan InterfaceMengimplementasikan InterfaceImplementasi Beberapa InterfaceInterface vs Abstract ClassPetunjuk Tipe dengan InterfaceRekap: Kalkulator Bentuk8Magic Methods
Pengantar Magic Methods__toString & __debugInfo__get, __set, __isset, __unset__call & __callStatic__clone & Cloning Object__serialize & __unserializeRingkasan: Koleksi Kustom11Sistem Tipe Data dan Penanganan Error
Deklarasi TipeTipe NullableTipe Union dan IntersectionClass ExceptionHierarki Exception KustomTry, Catch, FinallyRekap: Validator Form14Proyek: Manajemen library
Ringkasan ProyekClass Buku dan Pengguna3Property dalam class
Property instance vs staticKonstanta dalam classMethod & property staticProperty private & protectedProperty readonly (PHP 8.1)Ulasan: Pengelola Rekening Bank6Polimorfisme
Meninjau Kembali Method OverridingPolimorfisme melalui AntarmukaPetunjuk Tipe dan Tipe UnionPengikatan Statis TertundaRangkuman: Pemroses PembayaranLatihan sendiri: Compiler PHP online