iH8 schreef op dinsdag 23 november 2010 @ 14:01:
[...]
Nogmaals, dat jij zoiets binnen een paar minuten schrijft, ok. Voor anderen is dat misschien niet zo. Die zullen beter moeten letten op de pitfalls die authenticatie met zich mee brengt en dan voel je jezelf een stuk veiliger wetende dat er voor je op de flaws gelet wordt.
Mja, tot je erop rekent dat zo'n framework dat je zelf niet geschreven hebt inderdaad rekening houdt met alle pitfalls en je een keer ongenadig hard op je gat gaat omdat ze dat dus niet voor elke pitfall doen.
Daarnaast ben ik helemaal niet zo'n bijzonder goeie developer die alles weet. Mijn expertise ligt weliswaar bij PHP, maar ik heb pas twee jaar echt professionele ervaring. Ten tijde van het schrijven van mijn LDAP-klasse was ik net een half jaartje aan de slag als fulltime PHP-ontwikkelaar. Als ik er destijds al in een paar minuten een oplossing voor schrijf, dan kan een ander dat ook.
Wat jij bloated noemt dat noem ik mooi meegenomen. Vertel me dan eens wat er zo bloated is aan dat component? Aangezien ik je nogsteeds niet gehoord heb over de class die de TS aandraagt, ben ik erg benieuwd.
Gebruikers valideren in AD met PHP
Wat heb ik te maken met een random class die iemand van het internet plukt? Die heb ik niet geschreven noch raad ik hem aan. Dat heeft niets te maken met het feit dat een algemene class in een random framework (of dat nu ZF is of niet) geschreven is om vooral maar zoveel mogelijk features te faciliteren. Als je die features niet gebruikt, dan heet dat bloat.
Daar mee wilde ik alleen maar zeggen dat de door Cheatah aangedragen benchmark niet meer relevant is. Natuurlijk is een geoptimaliseerde right-to-the-point oplossing sneller. Als developmenttijd toch geen factor is dan kun je natuurlijk ook zelf opcode schrijven. Zal nog wel sneller zijn als je weet waar je meebezig bent. Of je slim bezig bent is een tweede.
Doe eens niet zo overchargeren. Mijn drie functiecalls zijn niet meer of minder codewerk dan jouw Zend_Auth. Bovendien zijn ze geschreven in dezelfde programmeertaal als ZF, dus je complete vergelijking gaat mank. Daarnaast zei ik dat devcode geen issue was
omdat het even lang duurt om 3 native functies aan te roepen als wanneer je een aantal methods van een random framework gebruikt. Ik heb nooit gezegd dat devtijd niet uitmaakt, ik heb gezegd dat het in het hier besproken voorbeeld compleet irrelevant is als argument.
Als je het artikel goed leest dan zie je dat het geen pro-ZF benchmark is. Het toont alleen aan dat er geen goede manier is om frameworks eerlijk te benchmarken. Je kunt zelf uitmaken hoe je je framework gebruikt. Dat zal voor een amateur betekenen dat hij inderdaad eerst een paar rondjes in z'n nieuwe ferarri doet met traction en launchcontrol enabled.

Er is wel een goeie manier om frameworks te benchmarken, namelijk dezelfde dingen proberen te doen, beiden met default options. Dat is namelijk de standaard toolbox die je krijgt van je framework, dát is een eerlijke benchmark. Een framework op zo'n manier benchmarken dat je weet dat hij een oneerlijk voordeel krijgt (door stukjes code te skippen en vervolgens die vergelijkbare optimalisatieslag niet in de andere frameworks te maken) is gewoon kinderachtig. Die blogpost is dus redelijk kansloos en IMO een stuk oneerlijker dan de benchmark die Cheatah aanhaalt.
Is dat niet totaal onmogelijk? Wat je ook doet je zult logica om die native functies heen moeten schrijven wil je er mee werken, dat kun je benchmarken. Ik volg je redenatie niet.

Je hoeft helemaal geen logica om je native functies heen te schrijven als je dat wil. Iemand die graag mysql_query aanroept in zijn code in plaats van een databaseclass te schrijven die nog wat meer fancy spul doet mag dat best, en dat outperformt die custom class ook gegarandeerd. Het hangt van de situatie af of het gebruiken van native functionaliteit al dan niet beter is dan het gebruiken van een framework. ZF is niet zomaar per definitie de juiste oplossing net zoals native PHP gebruiken niet per definitie altijd de juiste oplossing is.
De stelling was, ik heb deze class gevonden, is dat wat, of moet ik zelf iets schrijven, of iets anders bestaands gebruiken. Nu kunnen jullie er allemaal hard over vallen dat er dan iemand een class uit ZF aanbiedt, dat gaat nergens over natuurlijk. Je kunt ook gewoon de TS meteen rond zijn oren slaan met zoals Freeaqingme het noemt " Not invented here syndrome of een Please Reinvent The Wheel mentality"
Wij vielen er hard over dat een class uit een framework wordt aangeboden die niks extra's biedt boven het veel beter performende setje native functies dat in PHP zit. Daarna worden de valide argumenten genoemd dat zo'n ZF-module bloated is, trager werkt en een dependency vereist, terwijl het
in dit geval geen devtijdverkorting oplevert. Wat is dan nog je argument om het wel te gebruiken? Je zit ons steeds te manen tot het geven van argumenten waarom wij vinden dat het niet gebruikt moet worden in deze situatie, maar jij geeft nergens aan waarom het in deze specifieke situatie nou zo'n geweldig goed idee is.
Zoals hier boven gesteld wordt er alleen gereageerd op het opperen van ZF. Dat dat dan gepaard moet met het voor waar verklaren van non-argumenten die niet gestaaft kunnen, tsja. Ik noem dat niet constructief reageren, ik noem dat trollen. Dan haal je het beste uit een ZF gebruiker boven inderdaad. Sommigen (zoals gezegd, jammer genoeg moderators) trekken het hier zwaar offtopic door te beginnen over het gebruik van frameworks, overhead en dergelijke. En dat dan alleen omdat het over ZF gaat. Dat gedrocht van een class in de TS wordt voor het gemak over het hoofd gezien. Beetje jammer allemaal, maar zo leer je wel de mensen kennen.
Mja, leuk, die Calimero-houding, zo win je eens discussie. Sowieso heb ik de discussie afgesplitst dus guess what: we zijn niet meer offtopic. We gebruiken valide argumenten, jij noemt er eentje, namelijk devtijd. Die kan ik uit praktijkervaring ontkrachten. Wat blijft er nog over van je argumentatie?
En nogmaals: niemand heeft dat "gedrocht van een class" in de topicstart aangeraden en niemand heeft gezegd dat het een goede oplossing was. Sterker nog, niemand heeft er iets van gezegd omdat de topicstarter het zelf al afgeschreven heeft. Wat wil je dat ik er verder nog over zeg?
[
Voor 5% gewijzigd door
NMe op 23-11-2010 14:32
]