本文概述
代碼生成
模型解析執(zhí)行
代碼生成優(yōu)點分析
1.應(yīng)用可以脫離開發(fā)平臺任意部署
2.可以保護開發(fā)商的知識產(chǎn)權(quán)
3.很好地融入客戶的IT架構(gòu)中
4.生成的代碼更容易理解
由于是生成了指定語言的源代碼,對該語言熟悉的技術(shù)人員可以很容易地讀懂和理解軟件的處理邏輯。而模型解析則由于其技術(shù)封閉性,客戶無法閱讀和了解軟件的處理邏輯和流程。當(dāng)軟件運行出現(xiàn)問題時只能依賴平臺商的技術(shù)支持,而這種支持由于平臺商需要同時支持大量的客戶群,無法提供及時有效地支持。特別是由于軟件問題是由于平臺本身的問題所引起的時,只能等到平臺升級后才能夠解決,這對于許多客戶來說是難以接受的。
5.對于需要提供源代碼的客戶更有吸引力
6.更容易利用和整合已有的IT成果
代碼生成平臺由于其技術(shù)的開放性,可以很好地與目標(biāo)語言的各種已有的資源進行集成。這樣前期已完成的軟件模塊(例如:jar包、DLLs、Java包、JS控件等)可以很容易地集成到開發(fā)平臺,這就避免了重復(fù)開發(fā)工作。甚至隨著這些模塊的進一步完善,可以作為平臺插件成為平臺的擴展包。這種模式使得代碼生成技術(shù)開發(fā)平臺具有很好的擴展性和兼容性。
7.提供額外的編譯檢查
代碼生成需要對生成的源代碼進行編譯,而編譯器會對生成的代碼進行語法檢查,針對編譯器檢查出來的錯誤平臺會主動處理以保證代碼質(zhì)量。有些代碼生成技術(shù)開發(fā)平臺還會提供不同層次的質(zhì)量檢查工具,例如:模型級檢查工具、源代碼級檢查工具、網(wǎng)絡(luò)運行安全檢查工具等,甚至能夠集成流行的代碼檢查工具。而模型解析平臺則必須靠自己的技術(shù)來解決這個問題,同時開發(fā)環(huán)境與運行環(huán)境必須緊耦合以消除開發(fā)環(huán)境與運行環(huán)境的不同帶來的軟件運行潛在問題。
8.提供Debug功能
模型解析優(yōu)點分析
1.一站式解決方案
采用模型解析技術(shù)的廠商傾向于將開發(fā)與運行融為一體給客戶一個“一站式”IT解決方案,這一點對于中小企業(yè)客戶有很大的吸引力。但是“一站式”解決方案牽扯到技術(shù)與管理等方方面面,對于廠商的挑戰(zhàn)極大。另外,廠商也需要經(jīng)過較長時間的積累使得平臺更加成熟??蛻舨幌M约涸诘痛a平臺的投入由于廠商技術(shù)的限制或生存能力的限制打了水漂,“一站式”解決方案的技術(shù)封閉性使得客戶在平臺上開發(fā)的應(yīng)用無法移植到任何其它平臺上。
2.模型的調(diào)整更容易
模型的調(diào)整不需要重新顯式地進行生成、編譯、重構(gòu)、測試、部署等步驟,這樣會大大降低周轉(zhuǎn)時間。
3.可以在運行時對模型進行實時調(diào)整
由于模型是運行時可用,因此可以在不停止運行應(yīng)用的情況下對模型進行調(diào)整。
4.模型的兼容性更強
原則上解析器會開發(fā)一個能夠在不同平臺上獨立運行的解析器,這樣只要有相同的解析器就能夠在該平臺上運行模型。而代碼生成模式需要針對不同的平臺生成對于的語言代碼。
5.模型應(yīng)用發(fā)布簡單
在模型解析場景下,只要啟動模型解析器并將開發(fā)的模型導(dǎo)入即可。這樣,領(lǐng)域?qū)<抑恍枰P(guān)注于模型建立,模型創(chuàng)建成功后,點擊“發(fā)布”按鈕即可實現(xiàn)應(yīng)用的發(fā)布。
6.升級便捷而且具有很好的系統(tǒng)可伸縮性
這個優(yōu)點主要是針對云平臺模式,因為云平臺本身具有非常好的系統(tǒng)可伸縮性。
7.系統(tǒng)更安全
由于模型解析平臺的相對封閉性,再加上云平臺運行模式,普通人無法接觸到文件系統(tǒng)及模型定義文件。這樣就避免了模型被破壞的風(fēng)險。
8.更靈活
解析器比代碼生成器更簡單也需要更少的代碼來實現(xiàn)相同的功能,因此也更容易進行功能擴展。
9.能夠?qū)崿F(xiàn)運行時Debug
在應(yīng)用運行時可以提供針對模型級的調(diào)試跟蹤。
結(jié)論
在對上述兩種低代碼技術(shù)進行分析后,我們發(fā)現(xiàn)兩種技術(shù)各有春秋,換句話說“沒有最好的,只有最合適的”。那么,企業(yè)用戶如何選擇適合自己低代碼平臺呢?這可能取決于企業(yè)規(guī)模、企業(yè)管理水平、企業(yè)信息化建設(shè)階段、開發(fā)應(yīng)用業(yè)務(wù)領(lǐng)域、企業(yè)IT戰(zhàn)略及企業(yè)內(nèi)部IT團隊的技術(shù)技能等要素。鑒于國內(nèi)低代碼平臺技術(shù)的成熟度與國外知名企業(yè)還有一定的差距,因此,建議企業(yè)在選擇低代碼平臺時要綜合考慮更多的要素并與自身特點、技術(shù)需求進行匹配,這樣才能夠選出更適合自己的低代碼平臺,畢竟這與企業(yè)購買一款應(yīng)用軟件完全不同。關(guān)于如何選擇低代碼平臺的建議,這里暫時賣個關(guān)子,我將會在另一篇文章中詳細介紹。