Tuesday, September 7, 2010

Sissejuhatus

Selle blogi ülesandeks on jagada kogemusi, mis on tekkinud enam kui 10 aasta jooksul, mil ma olen PHP-ga kokku puutunud. Esimeseks PHP variandiks oli 3.0.6 ja andmebaasina kasutasin Oraclet (!). Hiljem on PHP versioonid muutunud, andmebaasina olen ikka kasutanud MySQL-i, mis ka muutunud 3-st versioonist 5-ks, sisuliselt on aga tegu ikka sellesama PHP ja MySQL-iga. Seega võiks blogi nimeks olla pigem "PHP & MySQL koolitus", kuid jätan esialgu nime selliseks nagu on.

Koolitus ei ole mõeldud päris algajale, vaid pigem nendele, kelle on juba olemas esmane kogemus ning tahavad teada, kuidas paremini edasi minna.

Lisaks: kõik allolev ja ülalolev ja muidu selles blogis on rangelt minu isiklik arvamus läbi minu subjektiivse pilgu ning kindlasti ei kandideeri ma absoluutse tõe kuulutajaks. Niiet kui kellelgi on ültemist, siis see pole absoluutselt keelatud, kuid ma jätan endale õiguse kas nõustuda või mitte nõustuda vaideljaga.
Samas tahaks rõhutada, et ma pole töötanud PHP programmeerijana, pigem on see olnud mulle hobi, mis ei muuda olematuks kogemusi selle keele osas.

Ajalugu

Kes tahab täpsemalt uurida PHP ajalugu, siis võib alustada siit. Minu jaoks on selle arengus olnud olulised järgmised etapid:
  • PHP-ga tutuvmine, MySQL-iga tutuvmine
  • LAMP- Apache, MySQL-i ja PHP kokkukompileerimine ühtseks tervikuks
  • PHP versioon 4.1 - superglobalite ($_GET, $_POST jt) tulek, $GLOBALS ärakadumine (loodan, et kirjutasin selle nüüd õigesti, pole ammu kasutand :)).
  • MySQL 4.1 - TIMESTAMP formaadi muutus
  • PHP 5.0 - objektimudel muutus, lisaks objekti edasiandmine mäluviibana, mitte eraldi objektina

Miks on PHP populaarne?

Eks sellele ole ka piisavalt proovitud leida (vastuseid võib leida näiteks siit ). Enda jaoks olen selle lahti mõtestanud järgmiselt:
  • C-laadne lähenemine keele ehituses (enamus skriptikeeli kasutab sellist lähenemist)
  • tasuta
  • lihtne paigaldada
  • lihtne alustada
  • tulemus on kohe näha
  • piisavalt suur programmeerijate kogukond
  • suur toetus hostingumasinates
  • võimalus laiendada ja liidestada väga erinevate süsteemidega (ise olen oma töö tõttu pidanud liidestama SAP majandustarkvaraga ja see oli täiesti võimalik)

Nõrkused

Keeleliselt on kõige suuremaks puuduseks muutujate tüpiseerimise ebamäärasus. Muutujad luuakse siis, kui neile osundatakse. Muutujad võivad muuta oma tüüpi ka programmi töö käigus, mis raskendab koodist arusaamist. Loomulikult on võimalik seda minimeerida, kasutades alati muutujaid ühe tüübi piires ning neid alati õige tüübiga algväärtustades.
Teiseks suureks nõrkuseks on aga populaarsusega seotud aspektid. Kuna ta on lihtne, kergesti installeeritav ja kiirelt kasutuselevõetav, on ka päris palju programmeerijaid, kes suudavad genereerida väga halba koodi. Just selliste "programmeerijate" tõttu on PHP maine kohati madal. Samuti on viidatud jõudlusele, kuid kui vaadata ilmas ringi, siis Facebook on kirjutatud PHP-s, Eesti suurimad portaalid (Delfi, Postimees jt) kasutavad PHP-d, rääkimata Rate.ee-st. Seega pole asi mitte sisse-ehitatud viletsast perfomance-st kuivõrd halvast koodist.

Järgmises peatükis vaataks üle erinevad võimalused failide, eelkõige siis PHP failide, poole pöördumisel.

No comments:

Post a Comment