當前,嚴重依賴個體表現、類手工作坊式的軟件開發,其效率正在日益拖慢我們的應用交付速度和質量。我們一直都在期望着有一款無代碼編程的軟件,能夠將大量的開發人員從繁重的代碼中解脫出來,多學學設計,多點時間和精力寫些高、精、尖的代碼。
在做項目的過程中,很多很多的功能都貌似相同,卻要重新開發,讓我們實在是很無耐。這樣做很浪費工時,企業的成本在不斷地加大,員工進步很慢,效益年復一年地不好。
為解決這方面的問題,市面上出現了兩種解決方案。
1 面向編程人員的開發平台及工具
包括各種中間件、開發框架、開源組件等,它們通過提供編程人員常用的各種程序組件庫,以及通用開發框架和開發環境,來減輕程序員的工作量,提高程序員的開發效率。這些工具帶來的好處是,程序員一旦掌握后,能夠較輕松完成一些更強大的、平台支持的任務,但是,缺點也是明顯的,一是掌握起來,不亞於掌握一門程序語言,即入門慢;二是仍然非常依賴高水平的程序員,而這些程序員目前在市面上非常緊缺;第三,更為重要的是,所有這些程序組件和公共框架,是需要程序員根據實際情況進行修改的,通過他們手寫的程序進行重組、調用和串起,從而最終實現我們的應用。這就意味着新寫的代碼必然帶來BUG,由此衍生出更多的測試、返工成本。
2 面向設計人員的應用交付平台
傳統的方式是,設計人員對應用需求進行分析后,通過各種輔助設計工具,對該應用的架構、數據模型、界面、關鍵算法等進行設計,其中不同的部分使用不同的工具,如涉及數據模型的,使用Power Designer,涉及界面的,使用Axure RP等等,最終這些結果會傳遞到編程人員,編程人員選擇好開發框架后,進行編程,期間歷經單元測試、聯合測試、壓力測試等環節的不斷檢驗修正后,最終方可交付應用。
面向設計人員的應用交付平台,能夠提供設計工具,讓設計人員在平台上方便地進行可視化的業務設計,然后由平台直接解析設計並最終生成該設計對應的應用安裝包,直接交付安裝實施。整個過程,除一些很特別的業務邏輯構件,需要由編程人員完成外,其余全部無需程序員的參與。
這種“設計即應用,應用自動生成”的全新的應用開發模式將徹底變革整個軟件行業,將極大的改善應用軟件面臨到的交付問題,我們不妨把這種平台叫做AGP(Application Generating Platform)應用生成平台。
目前,市面上已經出現一些特定行業或特定終端上的面向設計的應用生成平台,如SALESFORCE是一款在CRM領域的應用生成平台,而很多在線的快速APP網站,則是在移動領域的應用生成平台。還有一些專門做門戶網站、電商網站的AGP平台。