Programmation Objet en Php

Documents pareils
Programmation Objet - Cours II

Exo7. Calculs de déterminants. Fiche corrigée par Arnaud Bodin. Exercice 1 Calculer les déterminants des matrices suivantes : Exercice 2.

les Formulaires / Sous-Formulaires Présentation Créer un formulaire à partir d une table...3

Formation. Module WEB 4.1. Support de cours

FctsAffines.nb 1. Mathématiques, 1-ère année Edition Fonctions affines

CCI Génie Logiciel UFR - IMA. Objectifs du cours d'aujourd'hui. Génie Logiciel Validation par le test. Qu est-ce que tester un programme?

Cours Informatique Master STEP

CARPE. Documentation Informatique S E T R A. Version Août CARPE (Documentation Informatique) 1

Bases de données. Table des matières. Introduction. (ReferencePlus.ca)

Guide d installation CLX.PayMaker Office (3PC)

AGASC / BUREAU INFORMATION JEUNESSE Saint Laurent du Var - E mail : bij@agasc.fr / Tel : CONSIGNE N 1 :

8 : Comme ser e Cr e r e C.V.

DIDAPAGES : CREER UN LIVRE INTERACTIF

SQL Data Export for PS/PSS

CREATION D UNE EVALUATION AVEC JADE par Patrick RUER (

Procédures Stockées WAVESOFT ws_sp_getidtable Exemple : ws_sp_getnextsouche Exemple :... 12

Reaper : utilisations avancées

Styler un document sous OpenOffice 4.0

Guide : Répondre par voie électronique aux Marchés Publics - Version Janvier Répondre aux marchés publics par voie électronique

1 INTRODUCTION 3 2 CONTACTER VOTRE SUPPORT 3 3 PARAMETRER LE MODULE MESSAGERIE INTERNE 4 4 UTILISATION DE LA MESSAGERIE INTERNE 8

Date M.P Libellé Catégorie S.Catégorie Crédit Débit Solde S.B

Unity Real Time 2.0 Service Pack 2 update

SYSTEMES ELECTRONIQUES NUMERIQUES

Trousse de sécurité d'alarme - NVR

Comment installer un client Rivalis Devis factures

Utiliser sa boîte mail pour trouver un emploi

Gérer ses fichiers et ses dossiers avec l'explorateur Windows. Février 2013

Publipostage avec Calc

C++ COURS N 2 : CLASSES, DONNÉES ET FONCTIONS MEMBRES Classes et objets en C++ Membres d'une classe Spécification d'une classe Codage du comportement

ipra*cool v 1.08 guide de l utilisateur ipra*cool v.1-08 Guide de l'utilisateur ipra*cool v

Comment retrouver le fichier "bingo" sauvegardé dans l'ordinateur? Socle commun

Le partage du disque dur raccordé à la Bbox avec Windows Vista

Google Drive, le cloud de Google

1 Démarrage de Marionnet

Fiche Pratique. Présentation du problème. Installation du logiciel. Etape 1. MAJ le 17/10/2011

Assemblage couleur & trait en InDesign pour fichier Acrobat - 1

Installation / configuration des applications PreInscription et Inscription Web Ajax

Utiliser ma messagerie GMAIL

1. Création d'un état Création d'un état Instantané Colonnes Création d'un état Instantané Tableau... 4

AIDE TECHNIQUE POUR L UTILISATION DE GÉODEQ III VUES D ENSEMBLE DU QUÉBEC

Utilisation de la clé USB et autres supports de stockages amovibles

Compétences en fin de maternelle Comparer des quantités.

UTILISER LA MESSAGERIE

BADPLUS V5 MANUEL D'UTILISATION. Imports de données joueurs à partir de la base fédérale en ligne Poona. Stéphan KIEFFER - Dominique BOSSERT

Présentation Générale

Uniformiser la mise en forme du document. Accélère les mises à jour. Permets de générer des tables de matières automatiquement.

GUIDE D UTILISATION. Gestion de compte. à destination des intermédiaires

1. Introduction Création d'une macro autonome Exécuter la macro pas à pas Modifier une macro... 5

WinTask x64 Le Planificateur de tâches sous Windows 7 64 bits, Windows 8/ bits, Windows 2008 R2 et Windows bits

Les petits pas. Pour favoriser mon écoute. Où le placer dans la classe? Procédurier. Adapter les directives. Référentiel Présentation des travaux

VOS PREMIERS PAS AVEC TRACENPOCHE

Point 3.1. Publier des contenus dans un portail e-sidoc. Janvier 2013 Documentation détaillée V 2.2

Documentation module hosting

Mozaïk. Nouveautés et améliorations. de la version

Fluctuation d une fréquence selon les échantillons - Probabilités

Envoyer et recevoir son courrier

Notice d utilisation

.. CSS. Damien Nouvel. Damien Nouvel (Inalco) CSS 1 / 15

Guide d utilisation du service de transfert sécurisé de fichiers. Édition du 3 octobre 2011

GEST_INSTANCES APPLICATION DE GESTION DES INSTANCES ET REUNIONS EN EPLE ETABLISSEMENT PUBLIC LOCAL D ENSEIGNEMENT

NIGHT VISION STUDIOS GUIDE DU LOGICIEL. Produit Voyance. Version 1.5

Gestion d Active Directory à distance : MMC & Délégation

Directives d installation

Comment développer et intégrer un module à PhpMyLab?

Dans l'article précédent, vous avez appris

Je communique par

Programmation C++ (débutant)/instructions for, while et do...while

GE Security. KILSEN série KSA700 Centrale de détection et d alarme Incendie analogique adressable. Manuel d utilisation

Comment mettre en page votre livre

Le graphisme et l écriture, en lien avec les apprentissages en maternelle

Logiciel : GLPI Version : SYNCRHONISATION DE GLPI AVEC ACTIVE DIRECTORY. Auteur : Claude SANTERO Config. : Windows 2003.

Utilisation du nouveau webmail académique

TUTORIEL IMPRESS. Ouvrir Impress cocher «présentation vierge», «suivant» cocher «écran», «suivant» cocher «standard», «créer»

Créer des documents interactifs

IPS-Firewalls NETASQ SPNEGO

Carte encadrement glitter

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

L envoi d un formulaire par courriel. Configuration requise Mail Texte Mail HTML Check-list

LIVRET JEUNE OFFICIEL. Ligue de Bretagne de Badminton

BONNE NOUVELLE, À PARTIR DE DEMAIN 15 AOÛT 2014, l inscription en ligne sera disponible à partir du site de l ARO.

LA PLATE-FORME D'ALTERN C

Comment utiliser la feuille de style «CMLF2010.dot»

Objet : Guide d'installation et de maintenance pour "My IC Phone 8082" connecté à un OmniPCX Office R810

Notice d Utilisation du logiciel Finite Element Method Magnetics version 3.4 auteur: David Meeker

Cette notice d utilisation a pour vocation de vous aider à réserver vos produits sur Dispano.fr en toute simplicité!

Sauvegarde sous MAC avec serveur Samba

Date : Tangram en carré page

Configuration de Trend Micro Internet Security (PC-cillin version 11)

I - J inscris mon enfant pour le mois suivant (du 5 au 20 du mois en cours)

Guide d utilisation 2012

Chapitre 2. Classes et objets

LECON 2 : PROPRIETES DE L'AFFICHAGE Version aout 2011

ST1 (Installation-Protection) 1 ST1. Version 23. Janvier Calcul de structures. Installation Protection S E T R A

Veuillez noter que vous devez changer de Code d Accès Internet tous les 60 jours pour des raisons de sécurité.

Formation Site Web. Menu du jour. Le web comment ça marche? Créer un site web Une solution proposée pour débuter La suite?

FANTEC DB-229US Manuel de l'utilisateur

ÉCOLE POLYTECHNIQUE DE MONTRÉAL. Département de Génie Électrique. La technologie de TEXAS INSTRUMENTS DSP pour le cours Analyse des Signaux ELE2700

2 LES BASES DU HTML 19 Qu est-ce que le HTML? 20 De quand date le HTML? 20 Écrire son propre code HTML 22

Transcription:

Programmation Objet en Php - Exercices - Page 1 Programmation Objet en Php Exercices Auteur : E.Thirion Exercice 1 : La classe Conducteur Fichier à complèter : Etudiant/ConducteurAvecHeritage.php Un conducteur est une personne. On peut donc définir la classe Conducteur comme une sous-classe de la classe Personne. Définissez ces deux classes en respectant les consignes suivantes: La classe Personne Attributs de la classe Personne Les attributs de la classe Personne sont: Nom Alcool : degré d'alcool dans le sang. HeureSommeil : nombre d'heures de sommeil. Constructeur de la classe Personne Le constructeur de la classe Personne a deux paramètres : $n (nom) et $hs (heures de sommeil) et effectue les opérations suivantes: Affiche le message "Et voici un $n tout frais". Initialise le nom de la personne à $n. Initialise le degré d'alcool de la personne à 0. Initialise les heures de sommeil de la personne à $hs. La méthode AfficherAttributs de la classe Personne La méthode AfficherAttributs de la classe Personne n'a pas de paramètres. Elle affiche son nom, son degré d'alcool et ses heures de sommeil. Par exemple, pour une personne surnommée Tarzan avec 7 heures de sommeil, elle provoquerait l'affichage suivant: Etat de Tarzan 0 degres d'alcool dans le sang / 7 heures de sommeil

Programmation Objet en Php - Exercices - Page 2 La méthode BoireUnCoup de la classe Personne La méthode BoireUnCoup de la classe Personne a un paramètre $a. Lorsqu'on applique cette méthode à une personne son degré d'alcool dans le sang augmente de $a et un message est affiché. Pour une personne $p nommé Tarzan avec 0 degré d'alcool dans le sang, $p->boireuncoup (2) provoquerait l'affichage suivant: Tarzan boit un coup Il a maintenant 2 degres d'alcool dans le sang La méthode Dormir de la classe Personne La méthode Dormir de la classe Personne a un paramètre $hs. Lorsqu'on applique cette méthode à une personne, ses heures de sommeil deviennent égales à $hs. D'autre part, si le nombre d'heures de sommeil est supérieur ou égal à 5, son degré d'alcool redevient nul. La classe Conducteur Attributs de la classe Conducteur Les attributs de la classe Conducteur sont les suivants (en plus des attributs hérités de Personne) : HeuresConduite: nombre d'heures de conduite NbrDePoints : nombre de points de permis. Constructeur de la classe Conducteur Le constructeur de la classe Conducteur a des paramètres identitiques et exécute les mêmes opérations que celui de la classe Personne, plus les deux suivantes: il initialise les heures de conduites du conducteur à 0. il initialise le nombre de points de permis du conducteur à 12. Pour éviter une répétition inutile de code surchargez ce constructeur. La méthode AfficherAttributs de la classe Conducteur La méthode AfficherAttributs de la classe Conducteur effectue les mêmes opérations que celle de la classe Personne avec en plus l'affichage du nombres d'heures de conduite et du nombre de points de permis restant. Voici, par exemple l'affichage produit pour un conducteur nommé Bidochon: 2 degres d'alcool dans le sang / 2 heures de sommeil / 0 heures de conduite Nombre de points: 9 pour éviter une répétition inutile de code, surchargez cette méthode. La méthode Dormir de la classe Conducteur La méthode Dormir de la classe Conducteur est identique à celle de la classe Personne à un détail près: elle remet les heures de conduites à 0. Il est donc intéressant de surcharger cette méthode.

Programmation Objet en Php - Exercices - Page 3 La méthode Rouler de la classe Conducteur La méthode Rouler de la classe Conducteur a un seul paramètre $h: le nombre d'heure de conduite. Elle affecte $h aux heures de conduites d'un conducteur et affiche un message indiquant que cette personne a dormi $h heures. Par exemple, si $c est un conducteur nommé "Bidochon", l'appel de méthode $c->rouler (6) affecte la valeur 6 à l'attribut HeuresConduite de $p et affiche le message suivant: Bidochon roule 6 heures La méthode ControlePolice La méthode ControlePolice de la classe Conducteur n'a pas de paramètre. Appliquée à un conducteur, elle lui retire 3 point de permis si son degré d'alcool dans le sang est supérieur à 0.5. Elle affiche un message indiquant que cette personne c'est fait arrêté par la police. Test des méthodes Les méthodes sont appelées à la fin du script (partie du fichier à ne pas modifier). Pour les exécuter utilisez le lien dans le menu gauche du cours. Si vos méthodes ont été correctement écrites vous devriez obtenir l'affichage suivant: Et voici un Bidochon tout frais 0 degres d'alcool dans le sang / 2 heures de sommeil / 0 heures de conduite Nombre de points: 12 Bidochon boit un coup Il a maintenant 2 degres d'alcool dans le sang Bidochon roule 6 heures Bidochon se fait arreter par la police 2 degres d'alcool dans le sang / 2 heures de sommeil / 6 heures de conduite Nombre de points: 9 Bidochon dort 2 heures 2 degres d'alcool dans le sang / 2 heures de sommeil / 0 heures de conduite Nombre de points: 9 Et voici un Tarzan tout frais Tarzan boit un coup

Programmation Objet en Php - Exercices - Page 4 Il a maintenant 2 degres d'alcool dans le sang Tarzan dort 7 heures Etat de Tarzan 0 degres d'alcool dans le sang / 7 heures de sommeil Exercice 2 Fichier à complèter : Etudiant/ConducteurStatique.php Dans cet exercice nous reprenons encore une fois les deux classe Conducteur et Personne avec d'autres attributs et d'autres méthodes. Par contre la classe Conducteur est toujours considérée comme une sousclasse de la classe Personne. La classe Personne Les attributs de la classe Nom LesPersonnes: tableau contenant toutes les instances de cette classe. Cet attribut est un attribut de classe. Le constructeur Le constructeur de la classe Personne a un paramètre $n désignant le nom de la nouvelle personne. Il affiche le message "Et voici un $n tout frais", initialise le nom de la personne à $n et rajoute cette nouvelle personne dans le tableau LesPersonnes. La méthode AfficherLesPersonnes Cette méthode est une méthode de classe sans paramètre. Appliquée à la classe Personne elle affiche les noms de toutes les personnes contenues dans le tableau LesPersonnes. Supposons par exemple que l'on ai trois personnes nommée Bidochon, Lagaffe et James Bond. L'appel de méthode Personne::AfficherLesPersonnes( ) provoquera l'affichage suivant: Liste des personnes: Bidochon Lagaffe James Bond La méthode Tuer Cette méthode est une méthode de classe à un paramètre: le nom $n de la personne à tuer. Elle supprime cette personne dans le tableau LesPersonnes.

Programmation Objet en Php - Exercices - Page 5 La classe Conducteur Les attributs de la classe Aucun attribut spécifique. La méthode FaireUnAccidentAvec Cette méthode a un paramètre $n désignant le nom d'une personne. Appliquée à une personne $p elle tue cette personne ainsi que la personne nommée $n (que l'on supposera différente de la personne $p) et affiche un message. Supposons que l'on ait par exemple deux conducteurs: $Lagaffe nommé "Lagaffe" et $Bidochon nommé "Bidochon". Alors l'appel de méthode $Bidochon->FaireUnAccidentAvec("Lagaffe"), va tuer ces deux personnes et afficher le message suivant: Bidochon <--> Lagaffe : BOUM!!!! Pour écrire cette méthode, vous utiliserez obligatoirement la méthode Tuer de la classe Personne. Test des méthodes Les méthodes sont appelées à la fin du script (partie du fichier à ne pas modifier). Pour les exécuter utilisez le lien dans le menu gauche du cours. Si vos méthodes ont été correctement écrites vous devriez obtenir l'affichage suivant: Et voici un Bidochon tout frais Liste des personnes: Bidochon Et voici un Lagaffe tout frais Liste des personnes: Bidochon Lagaffe Et voici un James Bond tout frais Liste des personnes: Bidochon Lagaffe James Bond Bidochon <--> Lagaffe : BOUM!!!! Liste des personnes: James Bond

Programmation Objet en Php - Exercices - Page 6 Rappel sur les tableaux associatif en Php Pour ajouter au tableau $T, un nouvel élément de valeur $v: $T [] = $v; Pour répéter des instructions pour toutes les valeurs $v d'un tableau associatif $T: foreach ($T as $v) { instructions à répéter } Pour répéter des instructions pour toutes les paires (clef,valeur) ($c et $v), d'un tableau associatif $T: foreach ($T as $c=>$v) { instructions à répéter } Pour supprimer un élément de clef $c dans $T: unset($t[$c]);