Avatar billede dcheng Novice
27. december 2006 - 15:16 Der er 1 kommentar og
1 løsning

Objekt eksempel?

Er der nogle som kan give simpelt eksempel på hvad man bruger et objekt til og hvordan det præcis anvendes i PHP... Jeg er forsøger at forstå det, vha. en del guides og artikler..
Avatar billede allanrbo Nybegynder
27. december 2006 - 15:47 #1
PHP er ikke det ideele sprog til at forstå konceptet med objektorienteret design, da det i virkeligheden ikke er et objektorienteret sprog, men en slags sær blanding... Når det er sagt, kan jeg sige om objekter

- Et "objekt" i dit program skal tænkes som et objekt i virkeligheden. F.eks. hvis du lavede et program til at holde styr på dine DVD'er og CD'er, ville du måske lave en "klasse" der hed DVD, og en klasse der hed CD. Herefter ville du kunne lave DVD-objekter og CD-objekter af disse klasser.

- Et objekt indeholder sin egen data, og sin egen funktionalitet. Dvs. i vi i DVD-klassen både gemmer f.eks. titlen på DVD'en (altså data), men også definerer nogle funktioner til at gøre ting med denne DVD (funktioner kaldes metoder når man snakker objektorienteret). Et eksempel på en metode kunne være udskrivDvd().


Her er en stump kode der illustrerer dette DVD-eksempel:

<?php


class DVD {
  public $titel;
  public $udgivelsesÅr;

  function udskrivDvd() {
      echo "<p>".$this->titel." blev udgivet i ".$this->udgivelsesÅr."</p>";
  }
}

$minFørsteDvd = new DVD();
$minFørsteDvd->titel = "Ringenes Herre 1";
$minFørsteDvd->udgivelsesÅr= 2004;
$minFørsteDvd->udskrivDvd();

$minAndenDvd = new DVD();
$minAndenDvd->titel = "Hackers";
$minAndenDvd->udgivelsesÅr= 1994;
$minAndenDvd->udskrivDvd();

?>

(normalt ville man iøvrigt ikke ændre direkte i sine felter ($titel og $udgivelsesÅr) som jeg gjorde ovenfor, med f.eks. linjen $minFørsteDvd->titel = "Ringenes Herre 1";, men at forstå hvorfor man normalt ikke gør dette, kræver en lidt større introduktion til OO).

Objekt orienteret programmering er et stort felt, og denne introduktion til det er næsten ikke fair. Personligt synes jeg ikke det er værd at rode for meget med OO i PHP. Hvis man virkeligt vil noget med OO, bør man lære Java, der nemlig fokuserer på OO lige fra starten. Men det vil der være folk der er uenige i.

Prøv at google efter
object oriented programming
sådan generelt, og du finder helt sikkert nogle gode introduktioner til tankegangen.
Good luck :-)
Avatar billede dcheng Novice
28. december 2006 - 10:34 #2
Takker, det hjalp faktisk endel
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

Seneste spørgsmål Seneste aktivitet
I går 10:21 Ny printer, men hvilken Af mort1 i Printere
13/0819:41 USB på Linux Af Uvanga i Linux
12/0818:26 Hvilken type mus Af mort1 i PC
11/0813:21 ms Forms Af leahcim i Andet software
10/0821:30 Blokeret på Snapchat? Af LineP i Chat & Messaging