終於有了些許時間,讓我整理一下自己的思路,順便寫一下博客,開博那麼久,幾乎沒有寫過真正意義上的隨筆,實在是汗顏...
書歸正傳,代碼生成工具這個東東,自然不用我在這裡解釋是做什麼用的了,今天我特地要介紹一下>北京湛藍科技推出的代碼自動生成工具。大家都知道自己平時在寫實體類和一些數據訪問的代碼的時候,都是做一些非常煩瑣又非常枯燥的重復步驟,數據訪問層也是被各種牛人寫了N個版本,但是大部分都大同小異,在程序抽象上或工作應用中感覺再去研究這些有些走彎路。所以在經過了入門階段,自己開始對面向對象有了更深一層的了解後,我開始使用各種各樣的代碼生成器來減少我工作的負擔,有些朋友肯定會BS使用代碼生成器甚至說自己寫的類更靈活,我覺得不盡然,代碼生成器幫我定義好實體類,並且生成每個實體類的增刪改方法(事實證明代碼生成器可以做更多工作),讓我們重點關心業務邏輯,把程序員從重復的工作中解脫出來,節省開發周期,我覺得這是最重要的。
不知道朋友們有沒有使用過別的自動代碼生成器,確實有一些非常優秀的工具,幫助我們減少很多負擔,但是大部分代碼生成器都是生成好類文件和存儲過程後,自己手工添加到項目中,對於只要求生成實體類和數據訪問方法的用戶,這已經夠了,直到我使用了湛藍科技的代碼自動生成工具,我才知道原來代碼生成器可以生成如此完美的項目。
湛藍代碼生成器不僅可以生成實體類和數據訪問方法,還可以生成定義好了的體系架構,而且有6、7中體系架構供選擇,其中流行的體系架構基本都包括在內,不僅如此,生成器生成的代碼是一個有機的整體, 軟件中的類, 層之間已經實現了無縫連接, 不存在代碼不匹配問題.您沒有看錯,是的,生成器可以生成多層,甚至將您生成的ASP.Net程序發布到IIS.我使用已經有一年時間了,當時是vs2003的時候,作者Mike yulong 就已經在完善體系架構等方面和用戶體驗等的問題,我很佩服作者的求新精神,湛藍代碼自動生成器在第一時間把vs2003的代碼升級到了Framework 2.0,支持范型和更多的web2.0的體驗(據說在增加AJax方面的東東),其中作者自己架構的湛藍體系,我一直在使用,基本上考慮的非常全,把用戶可能使用到的方法和功能都已經包含在列,並且層與層之間無縫結合,我幾乎不用關心任何的代碼就可以實現一個小的應用,前一段時間我幫我們部門做的每天的工作計劃和內容的web應用,我把數據庫建立好以後,直接生成的方案我只修改了一下我們公司特有的標志和布局,代碼不用做任何修改就可以滿足自己的要求,所有代碼都有完整的注釋,並且預留了擴展的接口,如果看懂了代碼,可以自己繼承生成的父類,擴展自己需要的功能等等。
數據庫操作支持儲存過程和Text兩種,並且可以直接生成在數據庫中,簡直太方便了。斷斷續續的使用了一年多,我也僅僅是使用了幾個自己常用的功能,大部分功能我還沒有使用,比如可以定制自己的代碼生成習慣、模型分組等等。可惜我生成的代碼有自己公司的字樣(保留點隱私,呵呵),其實我很想把代碼生成器生成的類關系圖貼出來給大家看看,朋友們可以自己去下載生成一個看看,就知道我所言非虛。
如果您認為我說的這些是廣告,您完全可以一笑了之,如果您敢興趣,想提高自己的工作效率(哪怕學習一下作者生成的體系架構,也是不錯的嘛,呵呵),您可以去他們的官方網站上下載使用,我跟作者打過交道,作者非常謙虛,並且有程序員特有的謹慎,我個人真的很佩服他。
我自己也曾經改過一個代碼生成器,是根據國外的LLBLGen改寫,它只能生成實體類,我改了一下中間生成了一個業務邏輯類,花去了我不少時間,我深深的知道做這樣一個大而全的東東是需要多廣闊的視角和足夠的耐心。
>北京湛藍科技還推出了其他的產品,比如《湛藍.Net代碼生成器》和《湛藍本地化工具》兩款軟件自動化生產工具,組建的《.Net Windows開發》,《.Net web開發》,《軟件國際化》三條流水開發線已經成功的開發了多個案例.
謹以此文廖表我對作者的敬意,希望更多的人可以使用到湛藍代碼自動生成器。