Kuick 是以 .Net 4.0 with C# 寫出有 32,788 行的程式碼,包含以下兩個部份:
1. Application Framework 應用程式架構
形成且控管軟體執行期生命周期,建立可模組化與具備擴充性的系統,規範一致的開發準則,降低系統與開發者的相依性,達成軟體永續發展。
2. ORM Framework 程式物件與關聯式資料庫物件對應架構
商業邏輯集中在程式碼裡,透過物件導向程式語言的封裝、繼承、多型特性,建立結構化的商業邏輯,達成可快速因應商業模式改變與行銷需求的系統。
試著以『軟體開發者』與『公司經營者』兩個不同角度思考幾件事情:
一、面臨的問題
<軟體開發者面臨的問題>
開發者窮於應付新技術的發展,何來多餘心力處理商業邏輯。
開發者專業價值不易被市場認定,對自己未來的發展感到茫然。
<公司經營者面臨的問題>
開發者與系統之間的相依性太高,時常因為開發者離職而成為孤兒系統,維護孤兒系統是公司永遠的痛。
商業邏輯不易記錄、傳承與普及,公司發展受到技術限制。
二、願望清單
<軟體開發者的您,您的願望清單是什麼?>
不用維護別人開發的程式,最好也不需要維護自己寫的。
已經為公司開發這麼多系統,公司沒有我不行,所以公司要為我加薪。
<公司經營者的您,您的願望清單是什麼?>
系統不再被開發者綁架,商業邏輯得以累積。
公司不受技術限制,能夠思考如何永續經營。
寫程式就像寫散文,無論文風為何或是自成一格,寫出人人看得懂是基本要求,但是對於軟體開發團隊,這是個不易達成的事,何況軟體開發不只是寫出看得懂的程式。Kuick 雖然只是提供軟體開發者使用的架構 (Framework),而伴隨她而來的是軟體開發方法論 (Methodology)。軟體開發規範,從基本的程式碼編寫習慣以及設計規範 (Coding Conventions and Design Guideline),如何採行 Best Parctice 與 Design Pattern 設計軟體,再到軟體架構的建立,這些都將程度解決上述面臨的問題,也將程度實現上述的願望。
如果,軟體開發者能夠從專注於技能發展,進階專注於領域知識累積,並建立個人專業品牌。
如果,公司的商業邏輯能夠獲得傳承與普及,進而專注如何達成永續經營之道。
這是 Kuick 努力的目標。
========================================
鐵人賽分享列表:Kuick Application & ORM Framework
開放原始碼專案:kuick.codeplex.com
直接下載原始碼:Kuick
下載相關文件檔:C# Code Conventions and Design Guideline
相關教學影片區:Kuick on YouTube