在線圖形化編程系統的制作方法
【技術領域】
[0001]本發明涉及一種能夠脫離客戶端,直接在線操作的在線圖形化編程系統。主要涉及專利分類號G06計算;推算;計數G06F電數字數據處理G06F9/00程序控制裝置,例如,控制器G06F9/06應用存入的程序的,即應用處理設備的內部存儲來接收程序并保持程序的G06F9/44用于執行專門程序的裝置。
【背景技術】
[0002]隨著計算機科學技術的普及,人們和計算機、網絡的聯系越來越緊密,對于軟件的需求也越來越大,但是軟件開發一直是專業人士的領域,特別是計算機程序設計,涉及到大量的計算機基礎知識、數據結構和算法、設計模式、編程語言語法等大量專業知識.對于并不具備計算機專業技術的用戶來說,想開發一款屬于自己的軟件,幾乎是不可能完成的夢雄
V QjN O
[0003]由MIT多媒體實驗室開發的Scratch是目前圖形化編程系統的代表,其面向8到16歲的用戶,以制作游戲、動畫等作品為應用背景。Scratch將編程語句封裝成有溝槽的圖形塊,用不同的顏色來區分不同類型的編程塊,方便兒童識別和查找。但這些編程塊的形狀本身沒有語義信息,功能和參數也都是純文本顯示,兒童只能靠理解文字含義來判別編程塊的功能。其次,Scratch把傳統文本程序命令細化到每個編程塊中,這雖然提高了系統可實現程序的復雜度,但也使得其編程塊數量多、尺寸小,這不利于兒童點選、拖放和修改參數等。此外,Scratch中沒有明顯的多場景概念,需要復雜的編程塊組合才能實現類似場景轉換的效果,這對大部分兒童來說是比較困難的。Scratch提供的運行時反饋是逐個高亮編程塊,生動性不足。另一方面,國內這方面的研究還很少,大多數針對中國兒童的圖形化編程軟件均源于國外軟件的漢化版本,沒有充分考慮地域文化的特點。
【發明內容】
[0004]本發明針對以上問題的提出,而研制的一種在線圖形化編程系統,包括:
[0005]圖形元素庫,該元素庫存儲有支持拖拽操作的多種類型顏色的邏輯圖形塊;
[0006]代碼存儲單元,該單元存儲有所述的多種邏輯塊對應的代碼;
[0007]提供所述的邏輯圖形塊排列組合區域的操作界面單元以及代碼組合單元和預覽單元;
[0008]工作時,使用者將不同的邏輯圖形塊按順序拖拽至所述的操作界面單元,該界面單元識別當前拖拽的邏輯圖形塊;所述的代碼組合單元根據識別結果,調取所述代碼存儲單元中存儲的當前邏輯圖形塊對應的代碼,與之前的邏輯圖形塊代碼組合,生成程序,該程序由所述的輸出,完成圖形化編程。
[0009]作為優選的實施方式,所述的邏輯圖形塊包括:
[0010]起始圖形塊,作為當前程序的起始,該圖形塊具有供其它一個或多個邏輯塊插入的寬度可變的填充區和設置的起始圖形塊尾部的連接端;
[0011]段起始圖形塊,作為程序段的起始,該圖形塊具有供其它一個或多個邏輯塊插入的寬度可變的填充區和設置的起始圖形塊尾部的連接端;
[0012]該段起始圖形塊填充在所述的填充區內或承接在所述的起始圖形塊的連接端,作為程序段的起始;
[0013]承接圖形塊,填充在所述起始圖形塊內的填充區內或承接在所述的起始圖形塊后;
[0014]所述的多個承接邏輯塊、段起始圖形塊和至少一個起始圖形塊形成多段可執行程序。
[0015]更進一步的,所述的起始圖形塊和段起始圖形塊的填充區的前端和所述邏輯圖形塊的末端設有多種類的提示部;所述的段起始圖形塊和承接圖形塊的前端設有與所述的提示部相配合的配合部;
[0016]編程時,將配合部與當前目標圖形塊提示部一致的段起始圖形塊和承接圖形塊放置對應的目標圖形塊內的填充區或圖形塊后部。
[0017]作為優選的實施方式,所述的起始圖形塊、段起始圖形塊和承接圖形塊內部還設有供嵌套圖形塊插入的設定填充區:
[0018]所述的嵌套圖形塊與設定填充區的形狀相配合,至少包括:
[0019]用于定義變量類型的變量塊;
[0020]完成指定運算和數值選擇的運算塊;
[0021 ]設定目標物體運動變化和力學參數的物理塊;以及
[0022]用于設定程序轉變條件的偵測塊。
[0023]作為優選的實施方式,存儲程序背景和元素的素材庫;
[0024]使用時,操作界面單元調用所述素材庫中存儲的程序背景圖片和元素,生成程序背景;元素通過所述的邏輯圖形塊完成定義和與程序的銜接,最終實現程序的表達。
[0025]更進一步的,所述的素材庫位于云端,合法注冊用戶在素材庫中發布新的素材,并設置新發布素材的開放權限,獲取開放權限的系統用戶可下載所述的素材。
[0026]作為優選的實施方式,具有語法檢查單元,該單元與所述的代碼組合單元通信,根據設定的語法規則對所述的組合形成程序的代碼進行校驗;
[0027]若當前程序與語法規則有沖突,則通過所述的操作界面單元發出提示。
[0028]更進一步的,所述的語法檢查單元記錄當前語法規則沖突所涉及的邏輯圖形塊和正確的連接方案,按邏輯圖形塊作為索引,將當前采取的連接方案存入沖突數據庫;
[0029]當出現沖突時,所述的邏輯界面單元在所述的沖突數據庫中按當前邏輯圖形塊調取沖突解決方案,呈現給使用者。
[0030]更進一步的,在線圖形塊編程系統基于HTML5協議且設置在云端。
[0031]由于采用了上述技術方案,本發明所述公開的一種在線圖形化編程系統,具備如下的優點:無需安裝,打開網頁即可使用。項目數據云端保存,為用戶移動辦公提供便利,同時能夠避免因個人計算機損害導致的文件、數據丟失等狀況。簡單易學:用戶無需具備專業的編程技巧,甚至不需要初級編程基礎,即可快速掌握,易學易用,適合零基礎人群學習,同時能為專業人士提供編程捷徑,節省時間,提高效率。功能強大:在完美實現預計功能的情況下,通過圖形元素的合理組合拼裝,可簡化編程過程,將復雜的操作變得輕松快捷。可擴充性強:用戶可以使用最初的素材來開發自己的圖形元素,具有極強的可塑性。同時,上傳后可供其他用戶使用,提供了可擴充模板。
【附圖說明】
[0032]為了更清楚的說明本發明的實施例或現有技術的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖做一簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
[0033]圖1為本發明動作的邏輯圖形塊的示意圖
[0034]圖2為本發明控制的邏輯圖形塊的示意圖
[0035]圖3為本發明嵌套邏輯圖形塊中變量塊的示意圖
[0036]圖4為本發明嵌套邏輯圖形塊中運算塊的示意圖
[0037]圖5為本發明嵌套邏輯圖形塊中偵測塊的示意圖
[0038]圖6為本發明的系統模塊圖
【具體實施方式】
[0039]為使本發明的實施例的目的、技術方案和優點更加清楚,下面結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚完整的描述:
[0040]如圖6所示:一種在線圖形化編程系統,將傳統的編程語句按規則進行分類,并且將特定分類的語句存儲成特定形狀的邏輯圖形塊,并且在邏輯圖形塊上做相關的標識,供使用者拖拽使用。
[0041]對于功能相同或者相近似的邏輯圖形塊,可分別設定不同的顏色和形狀,便于操作者直觀快速的尋找到的所要尋找的邏輯圖形塊。
[0042]比如,附圖1中,將關于播放的程序語句形成藍色邏輯圖形塊。附圖2中,則將全部是關于控制的語句,此類語句被設定成黃色。
[0043]相應的,本系統涉及有分類存儲上述邏輯圖形塊的圖形元素庫,作為可實現的優選的實施方式,將所述的邏輯圖形塊主要劃分為:動作、控制、變量、運算、物理、偵測、聲音、動畫、外觀和畫筆等大類,可設計成二級或者多級下拉菜單,便于使用者在使用時選擇。
[0044]相應的,為了能夠實現邏輯圖形塊的程序功能,還必須能夠將邏輯圖形塊所代表的程序進行整合,才能夠生成可執行的程序。
[0045]在本發明中還設有代碼存儲單元,該單元存儲所述的邏輯圖形塊所對應的編程語言或者代碼。
[0046]為了能夠實現完整的程序,還設有供所述的邏輯圖形塊排列組合區域的操作界面單元以及代碼組合單元。
[0047]編程時,使用者根據自身需求將選定的邏輯圖形塊按設定的順序拖拽至所述的操作界面單元,所述的代碼組合單元調取所述的代碼存儲單元中存儲的代碼,組合形成能夠執行和結束的完整的程序代碼,完成本次編程動作。
[0048]作為優選的實施方式,所述的邏輯圖形塊按在程序中所起的段落劃分作用來說,主要分為如下幾類:
[0049]起始圖形塊,作為當前程序的起始,該圖形塊具有供其它一個或多個邏輯塊插入的寬度可變的填充區和設置的起始圖形塊尾部的連接端。作為優選的實施方式,如圖2所示,圖2中所述顯示的4個圖形塊,除右上的圖形塊外,類C型的圖形塊即為所述的起始圖形塊。
[00