26.6.2006 | 17:34
Næsta kynslóð vefumhverfa?
Eins og glöggir menn vita þá er mbl.is (og blog.is) vefur smíðaður í umhverfi sem heitir Mason. Mason er í raun öflugt templating kerfi með caching, þar sem Perl er notað til að prósessa templatin.
Mason byggir allt upp á svokölluðum Mason componentum, sem eru í raun blanda af HTML og perl, ekki ósvipað PHP og öðrum "embedded" málum að sumu leiti, nema Mason býður uppá mun meiri strúktur, componentnum er skipt í blokkir sem eru keyrðar á mismunandi tímum, þ.m.t. er möguleiki á method blokkum, sem leyfir manni að búa til methodur sem aðrir Mason módúlar geta einnig kallað á.
Eins og í flestum svona umhverfum erfir keyrslu umhverfið einhverja hluti sem leyfa manni að vinna með umhverfi sitt, svo sem $m mason hlutinn, $r request hlutinn. Mason hluturinn inniheldur ýmis föll til að bæði kalla í aðra Mason módúla, stjórna cache-i ofl.
Mason keyrandi undir Apache með mod_perl er ansi hraðvirkt, og caching kerfið er skemmtilegt -- eftir 1 ár og 9 mánuði ca. af því að vinna með þetta kerfi finnst mér það mun þægilegra en t.d. PHP, fyrir utan skiptingu hvers módúls í blokkir, má segja að aðal ástæðan fyrir því að Mason verður þægilegra sé að það notar autohandlera. Autohandler er í raun mason component sem maður setur í möppu og er keyrður á undan öllum componentunum í möppunni. Þar getur maður auðveldlega t.d. wrappað öllu outputti inní eitthvað umlykjandi template, passað uppá HTTP authorization, osfrv -- allt í einni skrá, án þess að koma nálægt hinum skránnum. Componentarnir sem autohandlerinn keyrir svo geta síðan átt frekar frumstæð samskipti við autohandlerinn gegnum attributes sem er ein tegund af blokkum í Mason componentum, svo autohandlerinn getur vitað hitt og þetta um componentinn sem hann er að umlykja, og hægt er að taka gáfulegri ákvarðanir.
Mason er ekki fullkomið en það er frekar þægilegt, og var svolítill eye-opener fyrir mig, þar sem ég hafði í nokkur ár, fyrir kynni mín af Mason, einungis forritað fyrir vefinn með PHP, og svo plain CGI.
Eftir að hafa fiktað með Mason er ég með ágætlega opinn huga og hef í hyggju að kynna mér nokkur önnur vefumhverfi, en þar ber helst að nefna Ruby on Rails, Django, og TurboGears. Þessi síðari tvö eru fyrir python, en það er mál sem mér finnst ansi skemmtilegt, en kannski aðallega vegna þess að python túlkurinn hegðar sér eins og gagnvirk forritunarskel ef ræstur upp án parametra, og því mjög auðvelt og skemmtilegt að kanna málið og fikta.
Það væri áhugavert að heyra reynslusögur fólks af einhverjum af þessum vefumhverfum sem eru að ryðja sér rúms núna, og kannski smá lýsingar umfram "Rails er frábært", eða þann kalíber sem maður sér þetta yfirleitt á, kannski hægt að miða við þessa half-assed lýsingu mína á Mason?
Meginflokkur: Bloggar | Aukaflokkur: Vefurinn | Breytt 18.7.2006 kl. 16:50 | Facebook
Athugasemdir
Skondið að lesa um forritun á íslensku. Skildi ekki baun. Hefði sennilega skilið meira ef þetta hefði bara verið á ensku. Ég er alls ekki ð gagnrýna orðin sem notuð eru, þvert á móti, ef tölvuorðin eru íslenskuð hefði ég skilið ennþá minna.
Villi Asgeirsson, 26.6.2006 kl. 18:45
Þetta er nú ansi slettótt grein hjá mér, notaði íslenskuna bara þar sem mér þótti eðlilegt :-) .. annars er þetta allt útí ensku.
Steinn E. Sigurðarson, 27.6.2006 kl. 10:25
Krulla: nei, ég reikna ekki með að yfir meðallagi lesandi skilji þessa færslu. Líklega innan við 50 manns á landinu sem hafa einhvern áhuga á þessu.
En svo ég segi ekki meira, þá var æðri tilgangur með þessari frekar lélegu blogfærslu minni ;-)
Steinn E. Sigurðarson, 27.6.2006 kl. 17:52
hehe :)
bubbi (IP-tala skráð) 28.6.2006 kl. 19:02
Bæta við athugasemd [Innskráning]
Ekki er lengur hægt að skrifa athugasemdir við færsluna, þar sem tímamörk á athugasemdir eru liðin.