低代碼的起因、開發(fā)、趨勢交流分享(低代碼的概念)
客戶的需求是不斷變化,這就導致軟件開發(fā)過程的不斷重復,從需求整理、需求分析、設計、開發(fā)、測試、部署實施及一系列軟件開發(fā)過程,這就造成了造成了開發(fā)的重復開發(fā)或者是無效開發(fā),需求變化的邊界越大越快,造成的影響越大,所以說軟件需求的唯一不變的就是變化,所以需要一種適配需求變化的平臺或者方式來滿足不斷變化的需求。
1、個人簡介
- 我叫劉志虎,目前擔任博云科技系統(tǒng)架構(gòu)師,負責公司的基礎架構(gòu)及技術方案設計
- 擅長 Java、Spring boot、 Spring cloud、微服務、Docker、Kubernetes、Mybatis、DEVOPS,SAAS、PAAS 架構(gòu)設計
- 尤其在低代碼、微服務、容器化、混合云、SAAS低代碼方面有豐富的項目及實踐經(jīng)驗
- 經(jīng)常在頭條分享技術文章,涉及到微服務、低代碼、devops、混合云、SAAS等等方面
- 多次參加線上、線下活動分享及給軟件公司培訓低代碼、微服務、devops等方面技術
- NextArch基金會大使,專注在低代碼、云原生等領域的推廣和布道
2、低代碼起因
- 需求的多變性
客戶的需求是不斷變化,這就導致軟件開發(fā)過程的不斷重復,從需求整理、需求分析、設計、開發(fā)、測試、部署實施及一系列軟件開發(fā)過程,這就造成了造成了開發(fā)的重復開發(fā)或者是無效開發(fā),需求變化的邊界越大越快,造成的影響越大,所以說軟件需求的唯一不變的就是變化,所以需要一種適配需求變化的平臺或者方式來滿足不斷變化的需求。
- 更快的交付實施
快速的滿足客戶的需求,及時的讓客戶使用上業(yè)務需求功能,快速的實施方式起著很大的作用,這就需要一個強大的平臺,縮短這個軟件工程的周期,同時最快的交付是讓客戶能自己參與進來,自己設計自己的需求,這樣催生了低代碼方式的產(chǎn)生。
3、低代碼開發(fā)
- 低代碼開發(fā)流程
低代碼開發(fā)其實跟通用的開發(fā)并沒有不同,只是開發(fā)的抽象程度更好,因為更多的是開發(fā)一個平臺、一個工具,提供持續(xù)的二次開發(fā)能力,所以在軟件開發(fā)過程中,從需求到技術的抽象或者映射過程是非常重要的,直接決定了低代碼提供服務能力的顆粒度,當然抽象的好壞及模型建設的合理性,也影響開發(fā)實現(xiàn)的難易度、復雜度。
- 低代碼實現(xiàn)過程
低代碼主要是通過提供可視化界面,使用者直接設計頁面、表單、規(guī)則,不考慮數(shù)據(jù)模型,用戶根據(jù)提供的UI控件實現(xiàn)布局、表單、頁面、單據(jù)設計,頁面顯示就是把設計的時候還原呈現(xiàn),最后直接供最終使用者使用,其他流程、報表、看板思路基本類似。
4、代碼發(fā)展趨勢
- 垂直聚焦平衡發(fā)展
- 垂直
整體方式可以實現(xiàn)某一業(yè)務或者行業(yè)的系統(tǒng),有低代碼實現(xiàn),深入業(yè)務需求、深挖業(yè)務模型、實現(xiàn)垂直的業(yè)務需求低代碼系統(tǒng)或平臺。
- 聚焦
以一種模塊或者子系統(tǒng)的方式跟主系統(tǒng)結(jié)合,低代碼主要實現(xiàn)局部的業(yè)務需 求、頁面定義,比如:頁面設計、流程定義、規(guī)則定義、單據(jù)局部定義等等,來輔助主要的業(yè)務系統(tǒng)。這類系統(tǒng)一般都是業(yè)務需求比較復雜,單純的依靠低代碼很難完全實現(xiàn)。
5、擁抱云
低代碼適應變化能力非常強,隨著云原生的成熟,屏蔽了大量IAAS、PAAS層的基礎設施,讓開發(fā)者或者使用者更專注于業(yè)務需求的實現(xiàn),這個思路跟低代碼很吻合,都是加速業(yè)務需求的快速實現(xiàn)、交付實施,這兩者可以很好的結(jié)合起來,尤其是Serviceless跟低代碼更是無縫銜接。低代碼與云的結(jié)合會上低代碼有更多的適應場景、更強的服務能力。
大家可以關注我的頭條號“微服務布道者”,歡迎溝通交流