Ecco degli esercizi semplici con soluzione per praticare le basi delle interfacce e programmazione ad oggetti in PHP.
Esercizio 1
Creare un'interfaccia "FormaGeometrica" con un metodo "calcolaArea()". Creare una classe "Quadrato" che implementa l'interfaccia e implementa il metodo "calcolaArea()" per calcolare l'area del quadrato.
Esercizio 2
Creare un'interfaccia "Suonabile" con un metodo "suona()". Creare una classe "Chitarra" che implementa l'interfaccia e implementa il metodo "suona()" per far suonare la chitarra.
Esercizio 3
Creare un'interfaccia "Volante" con un metodo "volare()". Creare una classe "Aereo" che implementa l'interfaccia e implementa il metodo "volare()" per far volare l'aereo.
Esercizio 4
Creare un'interfaccia "Animale" con un metodo "emettiVerso()". Creare una classe "Cane" che implementa l'interfaccia e implementa il metodo "emettiVerso()" per far abbaiare il cane.
Esercizio 5
Creare un'interfaccia "Logger" con un metodo "log($messaggio)". Creare una classe "FileLogger" che implementa l'interfaccia e implementa il metodo "log($messaggio)" per scrivere il messaggio su un file di log.
Esercizio 6
Creare un'interfaccia "SchedaAudio" con un metodo "riproduciAudio()". Creare una classe "SchedaAudioUSB" che implementa l'interfaccia e implementa il metodo "riproduciAudio()" per riprodurre l'audio attraverso una scheda audio USB.
Esercizio 7
Creare un'interfaccia "Database" con metodi "connetti()", "eseguiQuery($query)" e "chiudiConnessione()". Creare una classe "MySQLDatabase" che implementa l'interfaccia e implementa i metodi per la connessione, l'esecuzione delle query e la chiusura della connessione a un database MySQL.
Esercizio 8
Creare un'interfaccia "Autenticabile" con un metodo "autentica($username, $password)". Creare una classe "Utente" che implementa l'interfaccia e implementa il metodo "autentica($username, $password)" per autenticare un utente.
Esercizio 9
Creare un'interfaccia "Serializable" con metodi "serialize()" e "unserialize($data)". Creare una classe "Oggetto" che implementa l'interfaccia e implementa i metodi per la serializzazione e la deserializzazione dell'oggetto.
Esercizio 10
Creare un'interfaccia "Pagabile" con un metodo "calcolaTotale()". Creare una classe "Ordine" che implementa l'interfaccia e implementa il metodo "calcolaTotale()" per calcolare il totale dell'ordine.