Grijze Vos schreef op donderdag 07 mei 2009 @ 11:29:
[...]
Sorry hoor, maar volgens mij mis jij een stuk van het verhaal. OO bestond al voordat concepten als application/session/request scope in de webapplications wereld opkwamen. Sterker nog, OO is een
taal paradigma, die verschillende scopes zijn dat niet. Het doel van OO is overigens ook niet het maken van softawre die efficient geheugen gebruikt, het doel is om de complexiteit van software te beteugelen door het overzichtelijk te houden.
Wellicht had ik het anders kunnen formuleren, maar om dan op zo'n ondertoon te beginnen..
Ik bedoelde:
Het gebruikmaken van objecten (een kenmerk van OO) die over meerdere requests gebruikt kunnen worden is onhandig
in PHP omdat je geen application scope hebt en je een grote overhead krijgt door steeds de gegevens opnieuw te moeten verwerken, MITS je geen gebruik maakt van omwegen zoals memcached. Jezus wat een zin.
Uiteraard kun je OO gebruiken om de complexiteit van je applicaties te verminderen, het is een van de grootste, zo niet de grootste, voordelen van OO.
Echter, de handigheid van OO zit voor mij ook in het feit dat objecten een langere levensduur hebben en dat je deze steeds opnieuw kunt opvragen zonder bijvoorbeeld opnieuw een zware query op de database uit te moeten voeren.
Ik zeg nergens dat je geen OO fatsoenlijk kunt gebruiken zonder application scope, ik zeg dat ik het onhandig vind. En daar blijf ik ook gewoon bij.
Verder vergelijk je de taal php met volledige platforms, dat is natuurlijk ook geen zinnige vergelijking.
Voor mij wel. Beiden talen/platforms/oplossingen of hoe je het ook wilt noemen zijn er om een doel te bereiken: dynamische pagina's. Aan de ene kant kan ik php installeren, en aan de andere kant tomcat. Wat zou mij het uitmaken dat het ene een platform is/levert en de ander een taal? In essentie maakt het vrij weinig uit voor de vergelijking. Dan maken ze van php maar een volledig platform.
Geen enkele taal ondersteund 'native' application scopes, want het is geen taalconcept.
Granted, maar ik vind dit een beetje nitpicking
Zoals ik al eerder aangaf kun je prima zelf je (apache/)php platform
Oh nou ga je er wel een platform van maken, enkel door het toevoegen van een
externe applicatie? Dan is php +95% van de tijd onderdeel van een platform daar het merendeels gebruikt wordt in samenwerking met apache (en een database)
uitbreiden met application scope ondersteuning, wellicht heeft iemand dat al voor je gedaan. Het verschil met .NET/J2EE is dan dat het daar al voor je gedaan is. Dat staat verder los van C#/VB.Net/Java.
Dan doen ze dat toch lekker voor php ook? Bundel het samen en bied het als download aan, mits ik het allemaal vanuit php kan aanspreken, zonder externe calls te moeten gaan doen.
Mr_Light schreef op vrijdag 08 mei 2009 @ 02:59:
[...]
[...]
Ik weet niet wat jouw notie van 'geshare root' is. kan ik lastig beantwoorden - makkelijkste mannier is even de servlet specificatie door te lezen, nu snap ik dat niet iedereen dit ziet zitten.. kan je je vraag ook anders stellen?
ik volg niet helemaal wat er nu 'inderdaad' is, mischien dat ik er overheen blijf lezen. Als dat over de applicatie scope gaat - dat was de notie van Janoz. (who was poking phun at Mithras). En ik gaf daar bijval bij.
Ik ging even in op je gedachte (beetje raar woord zo) dat de application scope ging over de lengte dat de applicatie leefde. Zo kun je het uiteraard ook opvatten, daar php gewoon wordt afgesloten als de opgevraagde pagina klaar is. Ik denk dat ik hier wat onduidelijk (of wellicht fout) was. Dingen als Coldfusion, jsp en asp (iirc) hebben dan weer wel een gezamenlijke 'applicatie' of root, waaruit dingen voortkomen. Ik dacht dat je dat ook bedoelde met je servlet container.
Pong is probably the best designed shooter in the world.
It's the only one that is made so that if you camp, you die.