Robke

Weblog

Goede oude PHP

Op 3 januari 2007 om 23u11 in PHP.
9 reacties »

Sinds een half jaar ben ik terug redelijk intensief bezit met PHP. Het is de eerste taal waarmee ik een ongeveer zes jaar geleden, denk ik, mee in aanraking gekomen ben. In het laatste half jaar hebben we ook J2EE (Struts, JSF) gezien op school. Tot een tijdje geleden was ik er rotsvast van overtuigd dat Java de toekomst was voor server-side applicaties, ten nadele van PHP.

Maar toch is het een gezellig terugkeren naar PHP. Zo gezellig zelfs, dat ik PHP opnieuw meer en meer begin te appreciëren. Zeker met een MVC-framework erbij zoals Code Igniter of CakePHP, moet het qua onderhoudbaarheid zeker niet onderdoen voor Java.

Er zijn echter twee grote nadelen ten opzichte van Java:

  1. De API is rommelig, zijn functienamen zijn niet gestandaardiseerd en hij is niet objectgeoriënteerd.
  2. Er zijn geen grote degelijke ontwikkelplatformen (cfr. Eclipse, JDeveloper, IntelliJ, …).

Het eerste punt is voor discussie vatbaar, maar een feit is dat de functienamen niet altijd logisch zijn (het is bv. strip_tags en niet strip_slashes, maar stripslashes). Hopelijk betert dit in de toekomst.

Als IDE… euh editor… gebruik ik voorlopig TextMate. Een debugger kan ik missen, maar auto-aanvulling voor zelfgeschreven klassen zou toch handig zijn. Ik ga binnenkort zeker eens Zend Studio herbekijken. Het kost wel stukken van mensen en de GUI is ook net dat niet. Zend is samen met Eclipse ook bezig aan The PHP Development Tool (PDT) project, maar dat staat nog in zijn kinderschoenen.

Misschien moeten de PHP-ontwikkelaars wat meer ‘concurrentie’ beginnen ondervinden van Java op de webserver, zodat ze wat van deze puntjes eens gaan bekijken.

P.S.: Gelukkig nieuwjaar!!1!11

9 reacties

  1. Dietrich op 4 januari 2007 om 0u32:

    Men is toch al geruime tijd bezig met PHP 6, hier zijn zelfs al maandenlang zaken aangepast in CVS, zoals gedeeltelijke Unicode-support (zou moeten volledig zijn in de final versie, zonder mbstring-extensie), register_globals is verwijderd, safe_mode is verwijderd, enz…

    Zelf ben ik ook al geruime tijd bezig met PHP, vroeger had ik totaal geen last van de beperkingen van PHP, echter als je Java gewoon bent en je wilt na enkele weken Java PHP 5 gebruiken dan kom je al snel tot de vaststelling dat je probeert overloading te implementeren (werkt niet in PHP) en zelfs type hinting (werkt enkel met klassenamen of arrays). Enfin, er is dus nog veel werk aan de winkel voor het PHP-team willen ze met Java concurreren. Ik vrees echter dat ze die achterstand moeilijk zullen inhalen.

  2. Robin op 4 januari 2007 om 1u04:

    Volledig mee eens. Aan de andere kant: het mag natuurlijk geen Java-kloon worden. En qua concurrentie zijn ze voorlopig niet slecht bezig, maar ik weet niet of ze zich wel voldoende bewust zijn van Java. Het is in ieder geval niet echt te merken in de ontwikkeling van PHP zelf.
    Ik wil maar zeggen dat PHP leuk blijft om in te ontwikkelen. En het lijkt nog leuker met die frameworks, dewelke ik allemaal eens verder ga uitproberen. :)

  3. Sven P op 4 januari 2007 om 13u26:

    PHP was ook mijn eerste programmeertaal (behalve dan Pascal van tijdens het middelbaar). Nu ik er op terug kijk vind ik het maar een rommelige taal, en zoals je zegt zijn de functienamen niet altijd even logisch. Ik moet veel te veel naar php.net gaan kijken om te weten hoe ik een string moet bewerken. Dankzij het OO-model in Java is dat veel gemakkelijker.

  4. Robin op 4 januari 2007 om 14u03:

    Hier staat wat over de nieuwe dingen in PHP6: http://en.wikipedia.org/wik...
    Blijkbaar (nog) niks over de rommelige API…

  5. Dietrich op 4 januari 2007 om 14u42:

    Hier staat het een en ander over PHP 6: http://www.php.net/~derick/...

  6. Martijn Engler op 5 januari 2007 om 10u46:

    "Een debugger kan ik missen, maar auto-aanvulling voor zelfgeschreven klassen zou toch handig zijn."
    Al eens geprobeerd op Esc te drukken? Ik heb het zojuist geprobeerd in een PHP-documentje en dat werkt prima hoor.

  7. Robin op 5 januari 2007 om 15u34:

    Ik heb een klasse UserController, als ik die instantieer in bv. $u, dan zou ik na $u-> een lijst willen krijgen met de methodes van mijn klasse. Als ik daar op Esc druk in TextMate, krijk ik een foutgeluidje. :)

  8. Martijn Engler op 5 januari 2007 om 15u54:

    Ah ja, je moet eerst de eerste letter van je methode typen voor het lijstje. Omdat ik meestal toch al een paar letters getypt heb voor ik naar auto-aanvulling kijk heb ik dit nog niet gemerkt.

  9. Robin op 5 januari 2007 om 17u27:

    Cool, het is een begin. :) Bedankt voor de tip!

Reageer