Classes, structures... in php

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Onder het motto 1 gek kan meer vragen dan 10 wijzen kunnen antwoorden:

Hoe werkt nou precies een class (in normaal Nederlands aub!), wat is eigenlijk een structure, en heb je die ook in php (klingklang waar hangt de klepel?)?

Alvast bedankt!

Acties:
  • 0 Henk 'm!

Verwijderd

Yikes, OO 101 .... :)

Een class is een soort 'blue print', een soort bouwvoorschrift voor een object. Een object is een verzameling van methodes, functies en properties, met daarachter een geprogrammeerd gedrag.

Nu zal je waarschijnlijk denken: "WTF moet ik daar nou weer mee???" Goeie vraag. Dat is nou Object Oriented programming.

Neem als voorbeeld een auto. Als je een auto wil rijden, dan wil je weten hoe je die moet bedienen. Je hebt dingen als een stuur, een gaspedaal, rempedaal en ga zo maar door, en die gebruik je, maar wat daarachter gebeurt weet je niet. Je weet wel wat het te verwachten gedrag is voor bijvoorbeeld het draaien van het stuur. Daarnaast heb je ook nog wat metertjes war je gegevens van kan aflezen, zoals je brandstofpeil.

Okay, je auto is dus een object. De meters zijn properties, het stuur, de pedalen, etc zijn methods en functions. Het ontwerp dat gebruikt is om je auto te bouwen is dan de class. En zo kan je de vergelijking redelijk doortrekken is software.

Waarom zou je nou een class maken? Waarom zou je een class gebruiken? Allebei weer goeie vragen!

Een class maken is erg handig als je
1) je code wil gaan hergebruiken
2) je heeft modulair wil gaan programmeren
3) je met andere mensen samenwerkt die jouw code wel moeten gebruiken maar niet precies moeten weten hoe het gebeurt maar alleen dat je code een bepaalde functionaliteit biedt

Een class gebruiken is erg handig als je een class hebt die precies doet wat jij wil, zodat je lekker lui kan zijn en je niet hoeft af te vragen hoe dat precies gebeurt.

Nou wil je zeker ook een goed voorbeeld hebben? Nou ja, een conceptueel voorbeeld dan.

Stel, jij maakt veel websites waarbij gebruikers moeten inloggen. Je hebt een mooi stuk code dat je al in 6 maanden niet meer hebt aangepast, en je cut&paste het de hele tijd als je een nieuw systeem begint. Maar omdat je werk echt druk wordt, moeten er nieuwe mensen aangenomen worden die jou komen helpen. Jij wil dat ze jouw code gaan gebruiken, want het wile hoeft niet twee keer uitgevonden te worden. Dus maak jij een mooie class van je code, legt je nieuwe collega's uit hoe ze de properties, functions en methods van de class kunnnen gebruiken zonder dat ze zich zorgen hoeven te maken over HOE de code werkt. Jij blij, zij blij, je baas blij, vette bonus, dikke winst.

Mooi he? En wat is dus jouw excuus om geen classes te gebruiken? :)

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Yo, thanks, maarre hoe doe ik dat dan?
Hoe maak ik een class in php, die voorbeelden in de manual maken het voor mij niet makelijker.

class Auto() {

en dan?

En wat weten we van structures?

Acties:
  • 0 Henk 'm!

  • Tuinhark
  • Registratie: April 2000
  • Laatst online: 06:55

Tuinhark

Retro

In PHP gaat het wat simpeler dan in, say, Java. :)

class Naam
{
var $een; //attributen
var $twee;

function Naam($boe) //constructor
{
$this->een = 1;
$this->twee = $boe
}

function met1() //methode
{
$this->strax(4);
return $this->een;
}

function strax($koe)
{
$this->twee = $koe;
}
}

Om maar een voorbeeldje te noemen.

:Y)

NB: Applaus voor MrX voor zijn uitleg!! :):):)
(Je zou haast denken dattie al die tekst in een paar bestandjes heeft klaarstaan, voor als de situatie zich voordoet.. :+)

Acties:
  • 0 Henk 'm!

Verwijderd

<BLOCKQUOTE><font size=1 face=Verdana, Arial, Helvetica>quote:</font><HR>NB: Applaus voor MrX voor zijn uitleg!!
(Je zou haast denken dattie al die tekst in een paar bestandjes heeft klaarstaan, voor als de situatie zich voordoet.. )[/quote]*LOL*
Dat zou ik wel willen, maar helaas! Ik heb het eelt op mijn vingers getypt daarop. :)