Apache::DBI

Hmm.. aišku bėdos su MySQL nesibaigia. to $dbh ||= triuko nepakako, teko skripto gale nutraukinėt ryšį su MySQL naudojant $dbh->disconnect; — tai veikia gerai, bet niekas nebekešuojama.

Ir čia į pagalbą atėjo Apache::DBI. Pasirodo užtenka jį užkrauti httpd.conf failiuke ir magiškai visos jungtys su MySQL tampa ‘persistant‘. Smagu ;)

Šios dienos svetainės pakeitimai

Šiandien čia padariau nemažai pakeitimų, bet ne viskas taip gerai ėjosi, kaip būtų galima pagalvoti.

Pirmiausia tai ką tik baigiau tvarkyti (atrodo lyg sutvarkiau) MySQL serverio problemą, mat jis ėmė ir užlinko. Na, čia aišku yra mano programavimo klaida, nes pirmą kartą Perlu darau webinę aplikaciją, kuri nėra rašyta CGI. Ši svetainė naudoja mod_perl, o tai reikškia, kad automatiškai visas Perl kodas (ir ne tik kodas) yra kešuojamas. Svetainės kodą aišku rašiau kaip CGI aplikaciją, nekreipdamas jokio dėmesio į tai kad viskas kešuojama. Vat to rezultatas — MySQL serveris pasakė ‘Too many connections’ ir pakratė kojas. Dabar atitinkamą prisijungimo prie serverio kodą $dbh = DBI->connect(... pakeičiau į $dbh ||= DBI->connect(... Programuoji ir mokaisi.

Kitas dalykas, kurį šiandien įdėjau — komentarai. Tiesa, jų neplanavau paleisti anksčiau nei dar po poros dienų, bet taip jau gavosi. To pasekmė — kodas pradėjo atrodyti tikrai Perliškai, t.y. visai neįskaitomai. Be to keletas dalykų pačiame kode man kol kas kelia nerimą, tad bent jau porą dienų, kol viską sutvarkysiu, nereiktų stebėtis jei čia atsiras klaidų. Nors pirmą svetainės kodo versiją ir galite atsisiųsti, bet nepatarčiau naudoti dėl tos MySQL problemos (na arba jei labai labai norit naudot, tai pakeiskit tą prisijungimo eilutę, arba naudokit tik CGI aplinkoje. Kai tik pats būsiu šiek tiek labiau patenkintas komentarų kodo kokybe, įdėsiu viską kad būtų galima parsisiųsti.

Kas bus po objektinio programavimo?

Žmonės kalba, kad objektinis programavimas pradeda atgyventi. Tai jau praeito dešimtmečio technologija (hm… PHP5 tuo tarpu iš naujo atradinėja objektiškumą), ir reikia ieškoti jai pakaitalų. Na bent jau taip mano American Scientist. Jų straipsnyje sakoma, kad ateitis slypi keistuose dalykuose kaip ‘Pattern oriented programming’, ‘qualities without a name’ ir ‘extreme programming’.

Šiaip idėja įdomi. Parašai keletą tų ‘patterns’, ir jie patys susilipdo į programą. Programuotojų rojus? Galbūt. Pažiūrėsim. Tuo tarpu aš einu toliau rašyt makaroniško kodo.

Kodo stiliai

Vat priėjom šiokį tokį ideologinį karą apie teisingą kodo stilių. Aš visad kodą formatavau pagal K&R stilių, nes pats mokiausi programavimo iš jų puikios knygos apie C. Kažkaip kitiem labiau patinka Allman’o stilius, nors man jis per daug vertikaliai išsidėsto. Na ir man reikia 8 tarpų tabo. Čia labai subjektyvu, bet man taip geriausia.

Įprastinių išraiškų straipsnio papildymai

Taip, žinau. Vis neprisiruošiu pabaigti normaliai to straipsnio apie RegExpus. Iki šiol jis buvo labai nepilnas. Šiandien bent jau pabandžiau labai labai (na tikrai jau labai) trumpai sudėti informaciją apie tai, ko dar neminėjau jame. Ten faktiškai gale tik krūva pavyzdžių (netgi ne krūva… tiesiog keletas) dabar. Reikėtų juos aprašyt normaliai. Na o po to reiktų ir antrą dalį parašyt, apie ‘extended’ sintaksę. Ir pritaikyt viską Perlui ;).

freesql.org — nemokamas duombazės palaikymas programuotojams

Galima sakyt netyčia atradau nemokamą MySQL ir PostgreSQL palaikymą. Teko ne kartą išgirst nusiskundimų, kad niekur nėra nemokamų duomenų bazių palaikymo, bet matyt kas ieško, tas randa. Tad kol dar visi lietuviai neatrado freesql.org reikia skubėti ;)

Na duomenų bazė skirtingame hoste nėra pats geriausias sprendimas, ypač kai tas duombazės serveris sėdi kažkur kitam Europos gale. Bet mokymuisi ir eksperimentams tai visai neblogai. Be to, juk NEMOKAMA! :)