Eri Drekaj

old school developer since the new century
sq·en·sr
26 aug 26Ishte nje epoke me pak framework-e dhe me shume kaos, por edhe me shume liri per te krijuar dicka direkt nga zero.

Si programonim ne fillim te shekullit

Back to blog
Si programonim ne fillim te shekullit
#php #mysql #index #singlefile
PHP i viteve 2005-2006 ishte shume ndryshe nga ai qe njohim sot. Atehere ishte tashme nje nga gjuhet me te perdorura per krijimin e faqeve te internetit, por menyra se si punohej me te ishte me e thjeshte, me e crregullt dhe shpesh shume me kaotike.

Ne ate periudhe, PHP 4 ishte ende shume i perdorur, ndersa PHP 5 sapo kishte filluar te sillte disa koncepte me moderne, sidomos ne programimin e orientuar drejt objekteve. Shumica e faqeve ndertoheshin me kombinimin klasik PHP, MySQL, Apache dhe Linux, ate qe njihej si LAMP.

Kodi zakonisht ishte i drejtperdrejte. Nje zhvillues mund te hapte nje file PHP, te lidhej me databazen, te merrte nje vlere nga URL-ja dhe te shfaqte rezultatin direkt ne faqe. Nuk kishte gjithmone nje ndarje te qarte mes logjikes, HTML-se dhe databazes. Shpesh te gjitha gjendeshin ne te njejtin file.

Nje faqe mund te kishte nje index.php qe permbante HTML, kod PHP, query SQL dhe forma per perdoruesin, te gjitha te perziera bashke. Ne nje projekt te vogel kjo funksiononte pa problem. Madje per shume zhvillues, kjo ishte menyra normale e programimit.

PHP 4 ishte kryesisht procedural. PHP 5 filloi te sillte nje menyre me moderne pune me klasa dhe objekte, por kalimi drejt OOP nuk ndodhi menjehere. Shume zhvillues vazhdonin te punonin me funksione, variabla globale dhe file si functions.php, config.php, header.php dhe footer.php.

Ne ate kohe, komandat si mysql_connect(), mysql_query() dhe mysql_fetch_array() ishin kudo. Sot keto funksione jane histori, por atehere perbenin menyren me te zakonshme per komunikimin mes PHP dhe MySQL.

Framework-et ekzistonin, por nuk kishin rolin qe kane sot. CodeIgniter, CakePHP dhe Symfony sapo po fitonin popullaritet, por nje pjese e madhe e internetit ndertohej ende me projekte te krijuara nga zero. Shpesh zhvilluesi shkarkonte nje script ne ZIP, e ngarkonte ne hosting, ndryshonte kredencialet e databazes dhe faqja ishte gati per perdorim.

Nuk kishte Composer, Packagist apo nje sistem modern per menaxhimin e paketave. Nese kishe nevoje per nje biblioteke, zakonisht e shkarkoje manualisht dhe e vendosje ne nje folder te projektit. Pastaj e perfshije me require_once().

Siguria ishte nje nga problemet me te medha te asaj periudhe. SQL Injection ishte shume i zakonshem sepse te dhenat nga formulari ose URL-ja vendoseshin direkt ne query. Shume faqe ruanin fjalekalimet pa hash, ose perdornin MD5 si nje zgjidhje normale sigurie.

Edhe konfigurime si register_globals dhe magic_quotes_gpc ishin pjese e realitetit te perditshem te nje zhvilluesi PHP. Sot keto duken si kujtime nga nje epoke e erret e zhvillimit web, por ne ate kohe ishin normale.

Frontend-i ishte gjithashtu shume ndryshe. HTML, CSS dhe JavaScript ishin me te thjeshta. Layout-et me tabela ende ekzistonin ne shume faqe dhe AJAX sapo kishte filluar te ndryshonte menyren se si funksiononin aplikacionet ne internet. Gmail dhe Google Maps ishin shembujt qe tregonin se nje faqe web mund te fillonte te sillej me shume si nje aplikacion.

Ndoshta ndryshimi me i madh eshte menyra se si mendonim per zhvillimin e nje faqeje. Sot mund te kesh routing, controllers, models, services, API, framework-e dhe dhjetera paketa te instaluara me nje komande.

Ne vitin 2005, shpesh mjaftonte te hapje index.php dhe te filloje te shkruaje kod.

Nje file mund te vendoste se cila faqe do te hapej, te lidhej me databazen, te kontrollonte nese perdoruesi ishte i loguar dhe te shfaqte HTML-ne. Ishte nje menyre pune shume me direkte.

PHP i viteve 2005-2006 mund te dukej kaotik, i pasigurt dhe i vjeter sipas standardeve te sotme. Por kishte edhe dicka te vecante. Ishte nje kohe kur krijimi i nje faqeje interneti ndihej me i thjeshte. Nuk kishe nevoje te instaloje nje ekosistem te tere, te mesoje dhjetera teknologji apo te krijoje nje arkitekture te komplikuar.

Hapje nje file, lidheshe me MySQL, shkruaje HTML-ne dhe faqja fillonte te funksiononte.

Ne nje menyre te caktuar, PHP i asaj kohe ishte me pak "software engineering" dhe me shume nje menyre per ta ndertuar internetin direkt me duar.