Care e problema cu PHP?

Tine minte cineva “Familia Bundy” sau “Married with children”, in engleza? Mi-am adus aminte de o gluma din acest serial. Tot timpul cand cineva o intreba pe Peggy cu ce se ocupa sotul ei, ea prefera sa zica ca Al e gunoier.

Cam asa e in ziua de azi cu noi, cei ce ne castigam existenta din PHP. Cred ca de multe ori scapi mai usor daca spui cuiva ca pur si simplu lucrezi in Word sau Excel decat sa recunosti ca ai o relatie mai apropiata cu PHP-ul. Citind bloguri ce tin de programare si sectiunea dedicata programarii de pe reddit, iti dai seama ca pentru foarte multa lume PHP nu e altceva decat o gluma sau un motiv de a face misto.

De ce nu ia lumea PHP-ul in serios?

In primul rand trebuie sa lamurim un lucru. PHP nu e chiar un limbaj de programare, ci e un limbaj de “scripting” care e foarte usor de invatat si de cele mai multe ori te ajuta sa faci foarte multe lucruri foarte usor si intr-un timp destul de scurt.

Tocmai de aici vine problema principala. Oricine poate scrie un script PHP, toata lumea ofera pachete de gazduire ieftine sau chiar gratuite ce contine PHP+MySQL. PHP este astfel un limbaj extrem de accesibil si atragator chiar si pentru cei ce nu au experienta cu programarea. Nu vreau sa spun ca e ceva in neregula cu simplitatea si accesibilitatea PHP-ului, dimpotriva, e chiar foarte bine ca a ajuns sa fie chiar atat de raspandit.

Partea proasta la PHP e ca nu e un limbaj prea organizat, si intr-un fel iti cere si te implora sa scrii cod complet dezorganizat (nu exista un standard in denumirea functiilor, ordinea parametrilor la unele functii din aceeasi categorie e diferita de la o functie la alta samd) in care imbini partea de logica sau procesare cu partea de prezentare iar in goana de a rezolva problemele cat mai repede nimeni nu se mai uita la fond, pentru ca tot ceea ce conteaza e sa ai o aplicatie ce functioneaza.

Ce e de facut?

Dupa cum spuneam si mai sus, pentru ca este un limbaj destul de usor de stapanit, nimeni nu mai incearca sa citeasca carti despre PHP si, de obicei, nimeni nu citeste documentatia oficiala. PHP are una dintrele cele mai bune documentatii pe care le-am vazut pana acum. Cred ca fiecare aspect al acestui limbaj e documentat si discutat pe site-ul oficial.

Citind documentatia, citind carti si articole vei reusi foarte usor sa evoluezi incetul cu incetul in a scrie cod din ce in ce mai bun. Daca ma gandesc bine, mie mi-e si groaza sa ma uit in trecut la ce scriam acum 3-4 ani. Si acum mai am foarte multe de invatat iar daca deschid un fisier la care am lucrat acum o luna, stau si imi zic: “problema asta asta putea fi rezolvata mult mai bine asa…”. In programare tot timpul cred ca este loc de mai bine si in fiecare zi poti sa inveti si sa te perfectionezi.

Concluzia

Chiar daca este vazut ca un Visual Basic al internetului, PHP-ul cred ca e doar putin neinteles si nefolosit corespunzator. In orice limbaj poti sa scrii cod bun si in orice limbaj poti sa scrii cod mai putin bun. Eu trebuie sa recunosc, dupa ce am lucrat in C si Java, PHP-ul a fost un pas inapoi, cel putin cand vine vorba de “curatenia” codului. Incetul cu incetul poti sa ajungi la un nivel destul de ridicat si in PHP, trebuie doar munca si pasiune. Si daca (acum urmeaza lista clasica a aparatorilor PHP) Yahoo, Wikipedia, Facebook, Flickr, Digg, WordPress etc. au reusit sa faca niste aplicatii solide, scalabile, la un asemenea nivel, noi de ce nu am reusi acelasi lucru, la un nivel mult mai mic, bineinteles.

Linkuri

PHP Best Practices – un ghid foarte bun despre cum se poate trece peste unele dintre problemele de design ale PHP-ului

Documentatia oficiala – stiu, am mai pus o data linkul in acest post, dar aici chiar chiar veti gasi tot ce vreti sa stiti despre PHP, de la exemple foarte bune pana la functii si instructiuni foarte detaliate.

Tags: , , ,

2 Responses to “Care e problema cu PHP?”

  1. Programare Sociala 7 May, 2008 at 16:01 #

    ?i eu credeam c? cei care se rateaz? ca programatori într-un limbaj gen C sau Java ajung s? programeze, pardon scripteze în PHP. :)

  2. mns 7 May, 2008 at 16:08 #

    Nu, aia lucreaza in .NET :D

Leave a Reply