杰克布JeecgBoot低代碼開發(fā)框架,優(yōu)秀的國產開源項目(杰克部落下載安卓版)
低代碼low-code,無代碼no-code,合稱LCNC,近年來獲得較快發(fā)展,一個重要的原因是需求推動,各個行業(yè)數(shù)字化升級和工業(yè)4.0,對軟件開發(fā)人員需求巨大。
一,LCNC解決方案
很多公司和創(chuàng)業(yè)者有想法沒團隊,為了降低軟件開發(fā)門檻,將通用代碼形成組件化模塊,通過圖形化界面來拖拽組件拼裝成應用。
降低培訓學習成本、降低開發(fā)投入、降低技術和業(yè)務人員門檻,這是LCNC平臺要解決的終極問題。
現(xiàn)在市場上已經有一些成熟的解決方案可用,比如國內的明道云、清流、搭搭云,國外的OutSystems等著名企業(yè)。當SaaS/PaaS平臺提供的通用服務模塊無法滿足業(yè)務需求時,推薦使用開源框架JeecgBoot。
二,JeecgBoot開源項目
JeecgBoot基于代碼生成器,支持無代碼配置化快速開發(fā),適用于常見的企業(yè)信息管理系統(tǒng)開發(fā),比如OA辦公、ERP系統(tǒng)、客戶關系管理系統(tǒng)等,顯著提高開發(fā)效率,降低開發(fā)成本。
代碼托管在Github和Gitee,star數(shù)量超14.7K,fork數(shù)量超5.7K,獲得多個獎項,連續(xù)五年中國最火TOP5、十大優(yōu)秀開源項目、2014年微信開發(fā)商大會第一名。
三,Jeecg開源社區(qū)
JeecgBoot和多個項目一起,形成了完善的解決方案。
1,JeecgBoot
基于代碼生成器的低代碼開發(fā)平臺,無代碼配置化,前后端分離架構,技術棧使用主流的Java Spring Boot MyBatis,前端使用node Ant Design。
最新版本JeecgBoot2.2.1,發(fā)布于2020年7月13日,包括多項功能優(yōu)化,支持Docker一鍵部署。
2,JeecgCloud
Jeecg Boot的微服務版本,基于Nacos服務注冊和發(fā)現(xiàn)框架。
最新版本1.0.0 Beta,發(fā)布于2020年5月21日。
3,JeecgUniApp
一站式跨平臺,完整的移動解決方案,采用Uniapp ColorUI 框架,APP、小程序、H5多終端適配。
版本1.0.0 Beta,發(fā)布于2020年6月8日,最新改版上線于8月17日。
4,JeewxBoot
基于Java Spring Boot開發(fā)的微信管理平臺,采用插件機制,支持公眾號、小程序、第三方平臺,包括公眾號基礎管理、群發(fā)、系統(tǒng)權限、抽獎活動、小程序官網等功能。
最新版本1.1.0,發(fā)布于2019年12月5日。
5,JeewxAppCMS
基于wepy語言開發(fā)小程序,包含CMS網站基本功能,快速開發(fā)應用。
最新版本1.1.0,發(fā)布于2020年5月30日。
四,軟件工程實踐改進
JeecgBoot功能強大,社區(qū)活躍,版本發(fā)布及時。但是當看到JeecgBoot版本升級說明不能做到平滑兼容時,就有點感概了。
“JeecgBoot屬于平臺級產品,每次升級改動內容較多,目前做不到平滑升級?!?/p>
作為忠實用戶,如果有新版本發(fā)布或者重大問題修復,是非常希望能夠平滑升級功能的。從幾方面提一些建議。
1,代碼質量保障,單元測試
打開JeecgBoot工程,僅有兩個單元測試,而且不能夠直接運行通過,需要準備好依賴環(huán)境。
單元測試好處,歡迎補充:
1) 保證代碼質量,及早發(fā)現(xiàn)bug。
2) 修改過的bug,避免再次發(fā)生。
3) 改動代碼時,避免引入新bug。
4) 回歸測試,保障功能兼容。
如何寫單元測試?Java開發(fā)時,常用JUnit Mockito,使用起來非常高效。
2,Git發(fā)布版本管理
Git提升團隊協(xié)作水平,團隊架構和代碼管理相對應,功能開發(fā)、代碼合并、測試發(fā)布,分支和標簽配合使用,清晰高效。
在并行功能開發(fā)較多時,上線順序不完全確定,結合多個分支,完成測試和發(fā)布版本時,打上對應標簽。
3,SQL腳本版本化管理
和代碼對應的數(shù)據(jù)庫SQL腳本,也應該包含在Release Tag中,建議引入Flyway。
Flyway是一個數(shù)據(jù)庫版本化管理工具,通過SQL腳本實現(xiàn)DB Migration自動化升級,支持獨立運行,也可以和構建工具或者Spring開發(fā)環(huán)境集成。
4,自動化部署,Docker-compose資源編排
打包Docker鏡像常采用的兩種方式:
一種是本地編譯,然后將得到的jar包文件加入到Docker鏡像中,這種方式速度較快,多用于本地開發(fā)測試。
另一種就是Dockerfile包括完整步驟,從編譯源碼開始,不依賴本地環(huán)境,全量構建,這種方式經常配合構建服務器,耗時較長,用于發(fā)布部署。
為了提高開發(fā)測試效率,經常配置兩個Dockerfile。
├── Dockerfile
├── Dockerfile_ce
5,持續(xù)集成,Docker鏡像自動構建
充分利用免費的阿里云容器鏡像服務,配置持續(xù)集成系統(tǒng),實現(xiàn)Docker鏡像自動構建功能。
登錄阿里云容器鏡像服務,增加Docker鏡像,配置代碼源,增加構建規(guī)則,指定Dockerfile路徑。
當有代碼提交時,將觸發(fā)構建,Docker-compose.yml引用鏡像,實現(xiàn)自動更新部署。