視覺化程式設計能夠取代高階語言嗎?即使現代的計算機技術得到了飛速發展,視覺化程式設計取代高階語言依舊是其行業內最高理想。本文將從國內外流行的視覺化程式設計商業工具入手,分析現階段視覺化程式設計的侷限性,以及未來視覺化程式設計的發展前景。
之前在知乎看到了一則較早的問題 現在的視覺化程式設計發展到什麼程度了,什麼時候可以取代高階語言? 這在視覺化程式設計行業內可是最高理想。但期中有乙個回答真實反應了現實——視覺化程式設計無法取代高階語言。接下來分析幾款國內外視覺化程式設計商業工具(可以做出商業產品),從而分析一下視覺化程式設計的桎梏,以及可能的發展前景。
全行業做低**開發幾乎都用積木的方式去做,確實積木的拼接組合操作很容易,也符合程式設計師的操作習慣,但全行業似乎陷入了創意沼澤。這時候 mendix 出現在我眼前,流程圖式程式設計是哪個神經病想的,真有意思(下文的 outsystems 也是相同的形式)。這裡引用一下別人對 mendix 的基本介紹:
「專攻企業應用開發,面向 b 端使用者,一般是面向有開發團隊的中大型企業,提供模型驅動 ide 和微流,減少**量,使業務人員可以通過視覺化元件參與到開發過程中,與程式設計師在 mendix platform 上合作開發本企業的應用。提供一些企業解決方案、模板,開發平台上也支援自定義 ui 和元件。擁有 atlas ui framework 開發框架,根據應用和業務型別,會推薦相關的模板和元件,達到快速開發的目的。內建 devops 功能,可以持續交付,也可以使用 mendix platform api 整合其他 devops 工具。」
和 mendix 一樣也是針對企業的視覺化工具,註冊需要企業郵箱。較早版本只包含基本的前端 ui 元件,目前已經豐富了很多。支援資料驅動的 list 元件,每種元件都有封裝的事件(這點大同小異,視每個工具的設計思路,有需要可以發郵件提)。css 樣式的編輯及其複雜,基本就是原生 css,沒有經過任何的封裝,說白了還是給前端程式設計師做的。
scrtch 在視覺化程式設計領域很具有代表性,但相對初級,僅針對兒童教育。另外像部分 apaas 的 crm 編輯器由於功能太過單一也沒有拿出來說。
看了之前介紹的產品,即便是當中功能最完備的,相比起一門語言來說是不是依舊顯得單薄無力。即便可以代替傳統程式設計師開發中檔產品,但要說視覺化能取代高階語言無疑是在宣稱製造零件不需要自然資源,不論用什麼新材料新工藝製造零件,其本源都要依賴自然資源。利用高階語言開發好比將礦石做成零件再拼裝,視覺化程式設計好比拿到現有的零件組裝。零件是否好用只能依賴別人,雖然像 ivx、mendix 有自定義元件的功能,但那依舊是對已有元件的封裝,無法真正意義上與 w3c 完美對接。一門高階語言有多少的操作空間?想想 3-4 年前 js 都能寫人工智慧了呢。視覺化工具要想寫深度學習該怎麼做?估計只能引用外部介面。
效能問題就更不用說了,由於視覺化程式設計的目的基於開發商業產品,其限定死了程式的執行只能是單執行緒的,最終將使用者的 js 用 evil 嵌入最終的包。因此沒有一款編輯器敢開放 web worker 功能。
廣州vi設計公司
與開源的框架不同,視覺化編輯器是開發團隊賴以為生的產品,除了麻省的 scratch、pblock 面向教育的公益類視覺化開源專案外,其他不管 to b 還是 to c 的產品基本都要收費(outsystems、mendix 針對在校生免費,ivx 在一定流量額度下免費,其餘國內大部分產品只要使用都收費)。這導致的第乙個問題是生態的缺乏,乙個人想要學習使用還要有這樣那樣的條件限制,那在校生或剛入行的人寧願去選擇行業認可的技術。第二個問題是由於市場沒有被某個或某些廠家壟斷(想想 dji 出數字圖傳套件前 fpv 圈子的生態),導致了一家乙個標準。乙個程式設計師熟練使用 5 個主流語言 3 款框架就差不多了,因為主流語言就那麼多,但是市場上的視覺化程式設計公司幾百家,而且做得好的都是自研,沒有統一的標準,每家的特色和亮點都不同,到底選誰是很大的問題,都選怕你時間不夠。這種混亂導致了小白的迷茫和程式設計師的不屑,不如學好基礎自己開發。
low code develop 是國外傳入的概念,被中國網際網路人翻譯為低**開發,在國外炒了有一陣了。相關的技術文章有多少呢?先從 eric 查一下國外的研究狀態,完全搜不到相應的研究,怎乙個慘子了得:再來看看 cnki,3 個結果,一篇真相關還是科普文,學教育技術的同學你們的研究方向有了!
從技術角度說一款圖形 ide 無論如何做不到一門語言的完整性,作為一種開發方案,視覺化程式設計極力做到錦上添花,簡化開發流程,節約開發成本,完善最終編譯結果,代替一般 web/ 小程式專案的開發模式是完全沒問題的。
視覺化程式設計storyBoard
1.針對空模板,先把自動建立的window刪除 2.建立乙個storyboard 3.在general中將maininte ce選為建立的storyboard 4.新建立的storyboard裡什麼也沒有,拖拽乙個viewcontroller上去 5.選中viewcontroller,在工具欄選擇第...
視覺化程式設計原理
視覺化程式設計原理 物件 安裝的程式 事件 滑鼠雙擊 單擊 右鍵 回車等快捷鍵的觸發 事件 我們對不同的物件實施相同的事件,結果可能不相同。為什麼?右鍵事件觸發的方法 不一樣。視覺化程式設計介面設計 ui 窗體 控制項 窗體是來存放控制項的容器 例子事件 click mouseclick load ...
資料視覺化 R語言實現網路視覺化
最近在學習貝葉斯網路,當用k2演算法建立了貝葉斯網路結構之後,用r語言工具可以很清楚地實現網路視覺化。例如,在鐵達尼號資料集中,最後生成的貝葉斯網路結構如下 age,portembarked,numparentschildren,age numparentschildren,passengercla...