๐Ÿš€ go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: be.comp.programming
Article #5324

Re: PHP probleempje

#5324
From: Roel Schroeven
Date: Mon, 12 May 2003 18:18
38 lines
3008 bytes
Ward Poelmans wrote:
> JeroenV <jeroenv@pebbels.be.remove> wrote in 
> news:47848962.TS4J97216d@jvaes.cjb.net:
> 
> 
>>Voor toondata() mss wel, maar waarom met haaldata()? Dan is het abstracte
>>van je klasse weg...
> 
> 
> Ik heb nog nooit met klassen gewerkt en dit was gewoon een testje.
> Maar wat bedoel je met abstract?

Een abstractie is het verstoppen van de implementatiedetails, die de 
gebruiker van de abstractie toelaten op een hoger niveau te denken en te 
werken. Een filesystem is bijvoorbeeld een abstractie, omdat het je 
toelaat te werken met files en directories in plaats van cilinders en 
sectoren. Bonus is dat je dikwijls de implementatie kan veranderen, en 
toch dezelfde interface behouden. Zo kan je probleemloos verschillende 
filesystems gebruiken (ext2, ext3, vfat, nfs, smbfs, ...) zonder al je 
programma's te moeten aanpassen.

Software is eigenlijk een stapel van de ene abstractielaag bovenop de 
andere. Een klasse is een goede methode om interface en implementatie 
gescheiden te houden, en dus om een abstractie te cre๏ฟฝren. Over het 
algemeen is het een goed idee de onderdelen van je programma zo abstract 
mogelijk te houden, maar zoals zo dikwijls kan overdaad ook schadelijk 
zijn, zoals Joel Spolsky beschrijft: 
http://www.joelonsoftware.com/articles/LeakyAbstractions.html

Jeroen bedoelt hier dat je haaldata() op een andere manier zou kunnen 
implementeren, of andere functies maken die hetzelfde doen, zonder dat 
je de klasse hoeft te veranderen.


-- 
"Codito ergo sum"
Roel Schroeven
http://roelschroeven.net
Technical Details
Message-ID: <ZzRva.86004$t_2.8055@afrodite.telenet-ops.be>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-03!sn-xit-01!sn-xit-09!supernews.com!diablo.theplanet.net!zen.net.uk!btnet-peer1!btnet-peer0!btnet-peer!btnet!newsfeed.london1.eu.level3.net!level3eu!ossa.telenet-ops.be!afrodite.telenet-ops.be.POSTED!not-for-mail
References: <pan.2003.05.11.14.54.45.290882@my-mail.ch.REMOVE_THIS> <hduva.83942$t_2.7923@afrodite.telenet-ops.be> <47848962.TS4J97216d@jvaes.cjb.net> <Xns9379B0A9EE129WardPoelmanspandorab@195.130.132.65>

Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII
X-Google-Thread: fcea4,bef9cac2557c1711
X-Google-Attributes: gidfcea4,public
X-Google-ArrivalTime: 2003-05-12 11:20:03 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-03!sn-xit-01!sn-xit-09!supernews.com!diablo.theplanet.net!zen.net.uk!btnet-peer1!btnet-peer0!btnet-peer!btnet!newsfeed.london1.eu.level3.net!level3eu!ossa.telenet-ops.be!afrodite.telenet-ops.be.POSTED!not-for-mail
From: Roel Schroeven <j4nff5m02@sneakemail.com>
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.3) Gecko/20030312
X-Accept-Language: nl-be, nl, en-us, en
MIME-Version: 1.0
Newsgroups: be.comp.programming
Subject: Re: PHP probleempje
References: <pan.2003.05.11.14.54.45.290882@my-mail.ch.REMOVE_THIS> <hduva.83942$t_2.7923@afrodite.telenet-ops.be> <47848962.TS4J97216d@jvaes.cjb.net> <Xns9379B0A9EE129WardPoelmanspandorab@195.130.132.65>
In-Reply-To: <Xns9379B0A9EE129WardPoelmanspandorab@195.130.132.65>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 39
Message-ID: <ZzRva.86004$t_2.8055@afrodite.telenet-ops.be>
Date: Mon, 12 May 2003 18:18:33 GMT
NNTP-Posting-Host: 81.83.126.43
X-Complaints-To: abuse@telenet.be
X-Trace: afrodite.telenet-ops.be 1052763513 81.83.126.43 (Mon, 12 May 2003 20:18:33 MET DST)
NNTP-Posting-Date: Mon, 12 May 2003 20:18:33 MET DST
Organization: Telenet Internet