星期四, 10月 30, 2008

Coding

之前為了準備結果爛掉的乙組比賽,所以coding停止了兩個禮拜。最近又死灰復燃XD

根據phpGACL的usage pattern做出來的權限物件可以說幾乎完工,可以開始使用的程度,而且除了phpGACL原本的用法以外,還支援「請把這個使用者可以做的事全部列出來」這種特殊的查詢,client端(使用他的php)可以把結果存在$_SESSION陣列等地方cache起來,變成使用者登入一次只需要一次查詢,而非每個檢查權限的地方都要查一次(Mambo開發者好像就是為了這個原因才放棄phpGACL的),至於一些原本想要的,很炫的其他進階功能,就先算了吧XD,其實聽網路上開發者說phpGACL的功能其實已經有點Overkill了說

除此之外最近還仿照Cache_lite順手寫了個使用硬碟的Cache物件,其實Cache_lite內部架構很簡單,唯一比較麻煩的地方就是他是別人的Code,而且使用要裝PEAR,不能很自然的整合進Project裡面,所以就根據裡面的概念自己重寫了一個,應該馬上可以讓權限物件拿來用,比其原來的Cache_lite物件,cache key的部份我的版本還可以傳陣列進去,雖然裡面只不過是把它serialize一下,可是client端語意上就方便很多。

系學會我又打算Code重整一次,主要是為了接案可以有個作品展示XD。前版的權限物件後來仍然有缺陷,Table設計上有很多不合理的地方,未來擴展可能會造成奇怪的bug。而且設計上很封閉,一定要學校信箱才能註冊成功,表示權限系統當初設計就有問題。再來SQL物件那些「方便的builder」使用的有點太過頻繁,有點想把他改掉說.....

程式設計還是會隨著經驗有所差距,學越久考慮的東西越多,看哪天能不能到達可以看懂CakePHP的程度XD 全文連結

0 意見: