基本情況
軟體名稱:GCBTST
英文全稱:GENERATECODESBASEDONTEMPLATESWITHSHEN-TAGS
中文名稱:模板化軟體代碼生成工具
版本:2017版,免費版(32位、64位兼容版)
適用平台:winxp、win2003、win7、win8、win10等
開發語言:.net
軟體大小:6.74MB
簡介:
新一代基於帶標籤模板的自動化軟體代碼生成工具GCBTST2017(吉斯特2017),模板化代碼生成工具GCBTST,是一套免費的代碼生成工具軟體,可以自定義模板生成多種目標程式代碼。
本軟體由浙江大學沈東海開發,免費開源。
GCBTST套用舉例:
1、自動生成對資料庫的CRUD增刪改查相關方法代碼、配置檔案代碼等,直接生成完整的項目單元全部代碼;
2、資料庫表的生刪改查等sql語句;
3、支持jsp、java、asp/asp.net、vb/vb.net、C#、c、c++、delphi、c++builder、pb、php等幾乎所有的程式設計語言;
4、可以自定義模板,模板已經定義,已經實現一套shen-tag標籤語法引擎庫;
5、支持shenlanguage,可以採取類似javasript語言的方式編寫模板;
6、支持大多數數據,包括sqlserver、oracle、access等以及基於odbc的數據源、pdm檔案等。
其他功能支持:
1、萬能資料庫客戶端,支持查詢後實時更新提交;
2、unidoce碼及二、八、十、十六進制相互轉換;
3、檔案系統處理;
4、release項目更新包製作;
5、代碼行數自動統計等。
GCBTST常見問題:
1、無法載入sdh模板檔案,或載入時出錯
有兩種可能,其一結點配置錯誤,其二未將檔案按unicode格式存放
2、生成代碼時出錯
是因為配置了不存在的列名,請確認表結構信息和模板信息中是否存在列名稱
3、注意事項
請不要刪除或修改系統已經存在的配置,同時也不要增加系統關鍵子作為系統的附加列,關鍵字包括列名,結點名;所有輸入檔案都必須按unicode格式保存(可以用notepad打開後另外儲存為uniocode格式編碼).
4、附加功能:
實現對檔案系統的操作、UNICODE碼的互相轉換、軟體更新換包製作.
在使用本軟體之前需要花2小時學習SHEN-TAGS,教程請見相關內容.
軟體界面截圖
GCBTST軟體特點
1、GCBTST一貫秉承並且堅持長期發展快速編程、模板編程。。
2、GCBTST提供了一整套完整又完善的標籤庫(另外企業還可以根據需要對標籤庫進行擴展),允許企業自定義模板檔案來生成滿足企業需要的代碼,可以極度提高開發效率,據初步預計可將編碼成本降低到10%,降低維護成本70%,標籤復用率98%以上,從而使企業的軟體知識得到有效積累。
1、無法載入sdh模板檔案,或載入時出錯
有兩種可能,其一結點配置錯誤,其二未將檔案按unicode格式存放
2、生成代碼時出錯
是因為配置了不存在的列名,請確認表結構信息和模板信息中是否存在列名稱
3、注意事項
請不要刪除或修改系統已經存在的配置,同時也不要增加系統關鍵子作為系統的附加列,關鍵字包括列名,結點名;所有輸入檔案都必須按unicode格式保存(可以用notepad打開後另外儲存為uniocode格式編碼).
4、附加功能:
實現對檔案系統的操作、UNICODE碼的互相轉換、軟體更新換包製作.
在使用本軟體之前需要花2小時學習SHEN-TAGS,教程請見相關內容.
GCBTST更新日誌
2.1版更新日誌:
新增代碼行數統計,class檔案反編譯,sql語句執行客戶端,擴展標籤支持多條件和以內容作為條件,解析ODBC的實際資料庫類型最佳化操作,並且新增AJAX實例.
具體明細:
修正TAB按鍵順序;
退出按鈕無效,發布成功時sucess寫錯;
增加代碼行數統計(單行//-rem,跨行/**/),可配置;
新增sql語句執行界面;
增加列名相加方法--(包括加常量,兩列相加,可以指定其中某列的部分,替換);
unicode碼轉換錯誤,16進下制錯誤修正;
新增sql操作界面,增加數據導出到cvs(導出時按查詢的結果),和從cvs導入到表(導入時必須指定導入的語句);
SET列內置,並直接生成變數名首字母大寫;
增加根據列內容來選擇選換的方法;
利用jad增加class檔案反編譯;
login界面的隱藏問題;
自定義資料庫聯接字元串完全寫在表中,去除界面必添欄位;
列名相加的可以允許只取其中一部分而非全部;
添加對Excel和文本檔案的讀寫配置;
增加ajax按傳統思路;
增加解析"&"的特殊字元常量;
Ajax的實例,xml方式;
odbc,set列自動設定;
增加examples選單並按字母升序排序;
odbc判斷具體的數據類型,以及獲取配置信息,資料庫類型,伺服器,資料庫,(用戶名和密碼是界面輸入的);
增加列排除選擇方式(條件滿足的除外);
資料庫操作界面增加執行更新操作的方法;
修改struts實例使其更加智慧型化;
擴展2個條件,如一個是選中的,一個是數據類型;
當標籤錯誤時,詳細報錯出誤的檔案以及行數和改行的內容.
GCBTST2017版,更新日誌:
1、對64位、32位系統的兼容;
2、資料庫萬能客戶端;
3、新增編程模板ajax、ajax2、filesystem、ibatisnet、proc、shenlanguage、sql、struts、struts2等;
4、擴展標籤語言,支持shenlanguage語言標籤;
5、創立驅動反轉和注入倒置思想全新設計
(1)實現了三個解耦:資料庫與目標程式代碼解耦、引擎與目標程式代碼解耦、引擎與數據解耦,從最基本、最底層的面向對象思想出發,全新詮釋了高內聚低耦合思想,參考srping但又遠超越srping。
(2)一個驅動反轉:由引擎驅動改為由模板驅動。
(3)一個注入倒置:依賴引擎控制改為由標籤注入。
GCBTST設計理念
提高人類的勞動生產率,提高生產的自動化程度,一直是人類堅持不懈的追求目標,軟體開發也不例外。早在1982年美國國防部就提出了STARS工程,希望建立一個"用以支持需求定義、程式生成以及軟體維護等軟體生存期全部活動的,並把它們集成在一起的整個體系"。但早期的軟體開發環境工具較少,且不配套,支持需求分析等高層次生存期階段的工具更少,因此要求支持某類軟體開發方法的全過程已很不容易了。如Your-don公司的Cradle軟體開發環境支持Yourdon結構化開發方法,Jackson工具集支持Jackson開發方法。
相比目前國內外各類代碼生成工具,GCBTST體現出了強大的生命力,諸如RationalRose,Visio雖然也可以生成部分代碼,但是難以生成實際可用的代碼或無法適應複雜多變的情況;國內外各類專用工具,往往只能以單一的數據源和單一的代碼樣式來生成,難以適應變化;其他一些代碼生成工具,有的功能也很強大,但只定位在J2EE或.NET上而難以適應其他架構,而且因為不免費開源,使企業的投入成本明顯增加,另外學習成本也很高難以在短期內掌握。而GCBTST不僅不受數據源的限制,連目標代碼、目標框架也可以任意指定,充分體現了廣泛的適應性、強大的靈活性。Codesmith是前段時間國際上公認的最專業的代碼生成工具,GCBTST的標籤語法儘管沒有codesmith豐富,但標籤語法的強大性可以說是相當的,而在使用習慣上和使用的方便性上明顯優於了codesmith,也更適合中國人使用。
GCBTST設計思路
GCBTST採用了基於帶標籤模板的編程模式,基於模板編程的優越性:工程實踐往往需要我們保持整個工程項目具有相同的風格。包括界面風格、編碼規範等,因此在工程實踐中我們必須基於同一套模板來編程。GCBTST軟體基於一套自定義標籤shen-tags,可以生成基於任何語言的代碼(文本格式),包括java、jsp、.net、proc、asp、php、vb、delphi等;無論我們採用的是何種框架如STRUTS、SPRING,以及是否採用HIBERNATE等;無論採用何種程式語言,甚至是報表或其他只要與資料庫有關的都可以用。我們需要做的就是先定製一套模板,然後按照SHEN-TAGS標籤的規範進行替換,之後就可以快速編程,實現真正的編碼規範、算法效率、編程速度的統一。
GCBTST套用
GCBTST自成功運用以來,使企業各項工作進展順利,尤其是為各大中小型IT企業的研發工作帶來較大的收益,GCBTST已成功套用於電信、金融、電子政務、能源、製造等許多領域。GCBTST找到了軟體產業鏈的切入點,與開發商形成利益互補關係,GCBTST提供了一整套完整又完善的標籤庫(另外企業還可以根據需要對標籤庫進行擴展),允許企業自定義模板檔案來生成滿足企業所真正需要的代碼,可以最大限度地提高企業的研發效率,據初步預計可將編碼成本降低到8%,降低維護成本70%,標籤復用率95%以上,從而使企業的軟體文化得到有效積累。
GCBTST的進一步發展則是與其它軟體開發方法的結合,如與面向對象技術、軟體重用技術結合,以及智慧型化的I-GCBTST。
GCBTST的最終目標是實現套用軟體的全自動開發,即開發人員只要寫好軟體的需求規格說明書,軟體開發環境就自動完成從需求分析開始的所有的軟體開發工作,自動生成供用戶直接使用的軟體及有關文檔。
GCBTST作為和諧軟體過程的重要組成部分,是一套基於帶標籤模板的代碼生成系統。她與ITAOS(INFORMATIONTECHNOLOGYASSISTANTOPERATIONSYSTEM)一起,都是在充分理解STARS理念的基礎上,廣泛運用系統工程,共同打造了新一代文檔、數據模型、測試用例、原始碼等的生成工具,也是萬能資料庫客戶端、IT輔助系統,極大地提高了IT從業者的生產效率;她結合了中國社會建設理論與方法實踐,提出了在軟體工程領域也應當堅持學發展觀,強調資源節約型軟體工程模式;她吸取了數控技術的成功理念,重點突出以人為本,進一步強調機械問題工具化(機械問題工具化是和諧軟體過程的和諧宣言之一);她充分結合了中國傳統醫學的整體觀念與天地人相應的分層思想,對模板、標籤、數據源等進行了恰到好處的分離,並且允許進行人性化界面設定,使模板的功能得到充分有效的發揮;她充分考慮了中國人的使用習慣,並借鑑了微軟軟體一貫秉承的簡單化操作的成功經驗和敏捷過程的快速、法家的創新與效率、兵家的變通靈活等優秀哲學思想方法,使得使用更方便,同時實行模板編寫與模板使用相分離,也使得使用和諧軟體過程的簡單快捷思想得以充分體現,學習成本幾乎降到零;她更是免費且開源的軟體,使得各企事業的投入成本降到最低;她把人與自然和諧永續的循環發展模式在軟體行業落到了實處,可以最大限度地提高企業的研發效率,使企業的軟體文化可以得到有效的積累;是古為今用、洋為中用,充分融入哲學思想的方法論實踐軟體。國家發改委多次指出並不斷強調,自主創新、自主智慧財產權是發展戰略規劃的重重之重,重大成果推廣是科技強國戰略的重要環節;在全面落實科學發展觀的基礎上,強調資源節約、環境保護,十分重視全面協調進行現代化建設、重點突出以人為本,在軟體行業同樣任重道遠。
GCBTST秉承和諧軟體過程的基本理念,以樹我邦國的使命感、以海納百川的胸懷、以開物前民的精神,力爭開創軟體工程新紀元。