两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種基于json數(shù)據(jù)格式模塊加載的方法及系統(tǒng)的制作方法

文檔序號:8298886閱讀:557來源:國知局
一種基于json數(shù)據(jù)格式模塊加載的方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及應(yīng)用程序處理領(lǐng)域,尤其涉及一種基于json數(shù)據(jù)格式模塊加載的方法及系統(tǒng)。
【背景技術(shù)】
[0002]現(xiàn)有技術(shù)中,動態(tài)加載為動態(tài)加載腳本并直接運(yùn)行,這樣的動態(tài)加載方式不夠靈活,受限于腳本語言本身。因?yàn)閯討B(tài)加載腳本方式,是一次性把腳本內(nèi)的命令都執(zhí)行完成,不能自由的停留在某一命令中,因此,執(zhí)行命令不夠靈活。且腳本里描述的是命令,沒有對自定義對象進(jìn)行描述的功能,不能描述或執(zhí)行命令和對象相結(jié)合的情況。
[0003]模塊加載方法一般是通過程序內(nèi)部邏輯調(diào)用加載,也就是說是固定的加載方法。比如:老師講課時,想先讓同學(xué)進(jìn)行朗讀再做題,就需要用到朗讀模塊和發(fā)題模塊,并且設(shè)置的順序是先執(zhí)行朗讀模塊后執(zhí)行發(fā)題模塊,程序就會先加載朗讀模塊然后再加載發(fā)題模塊,但是如果下節(jié)課的另一個老師想先發(fā)題后朗讀,或者先發(fā)兩道題,再進(jìn)行朗讀。如果用程序內(nèi)部邏輯進(jìn)行加載就需要修改程序代碼,而且每堂課都很有可能會不一樣,那就需要給每堂課開發(fā)一款軟件,這明顯是不現(xiàn)實(shí)的,所以需要一種動態(tài)加載模塊的方式。

【發(fā)明內(nèi)容】

[0004]本發(fā)明所要解決的技術(shù)問題是:提供一種能夠靈活的加載命令和對象、自由控制命令的執(zhí)行順序基于json數(shù)據(jù)格式模塊加載的方法及系統(tǒng)。
[0005]為了解決上述技術(shù)問題,本發(fā)明采用的技術(shù)方案為:
[0006]一種基于json數(shù)據(jù)格式模塊加載的方法,包括以下步驟:
[0007]S100、創(chuàng)建json數(shù)據(jù)格式的功能文件,所述功能文件包括一個以上有序的功能模塊,所述功能文件包括第一功能模塊;
[0008]S200、主程序讀取所述功能文件,形成文件流;
[0009]S300、解析步驟S200所得文件流,讀取第一功能模塊,加載第一功能模塊;
[0010]S400、運(yùn)行步驟S300所加載的第一功能模塊。
[0011]本發(fā)明采用的另一技術(shù)方案為:
[0012]一種基于json數(shù)據(jù)格式模塊加載的系統(tǒng),包括:編輯器、第一讀取單元、解析器、第二讀取單元、加載單元和運(yùn)行器;
[0013]所述編輯器,用于創(chuàng)建json數(shù)據(jù)格式的功能文件,所述功能文件包括一個以上有序的功能模塊,所述功能模塊包括第一功能模塊;
[0014]所述第一讀取單元,用于主程序讀取所述功能文件,形成文件流;
[0015]所述解析器,用于解析所述文件流;
[0016]所述第二讀取單元,用于讀取第一功能模塊;
[0017]所述加載單元,用于加載第一功能模塊;
[0018]所述運(yùn)行器,用于運(yùn)行所加載的第一功能模塊。
[0019]本發(fā)明的有益效果在于:通過讀取功能文件,形成文件流,解析文件流,讀取功能模塊,并加載和運(yùn)行功能模塊,實(shí)現(xiàn)模塊動態(tài)加載,通過本發(fā)明提供的方法及系統(tǒng),能夠靈活的加載命令和對象、自由控制命令的執(zhí)行順序,也有利于系統(tǒng)功能的擴(kuò)展。
【附圖說明】
[0020]圖1為本發(fā)明【具體實(shí)施方式】的基于json數(shù)據(jù)格式模塊加載的方法的步驟圖;
[0021]圖2為本發(fā)明【具體實(shí)施方式】的基于json數(shù)據(jù)格式模塊加載的系統(tǒng)的結(jié)構(gòu)示意圖;
[0022]標(biāo)號說明:
[0023]10、編輯器;20、第一讀取單元;30、解析器;40、第二讀取單元;50、加載單元;60、
運(yùn)行器。
【具體實(shí)施方式】
[0024]為詳細(xì)說明本發(fā)明的技術(shù)內(nèi)容、所實(shí)現(xiàn)目的及效果,以下結(jié)合實(shí)施方式并配合附圖予以說明。
[0025]本發(fā)明最關(guān)鍵的構(gòu)思在于:通過讀取功能文件,形成文件流,解析文件流,讀取功能模塊,并加載和運(yùn)行功能模塊,實(shí)現(xiàn)模塊動態(tài)加載。
[0026]請參照圖1,為本發(fā)明【具體實(shí)施方式】的基于json數(shù)據(jù)格式模塊加載的方法的步驟圖,具體如下:
[0027]—種基于json數(shù)據(jù)格式模塊加載的方法,包括以下步驟:
[0028]S100、創(chuàng)建json數(shù)據(jù)格式的功能文件,所述功能文件包括一個以上有序的功能模塊,所述功能文件包括第一功能模塊;
[0029]S200、主程序讀取所述功能文件,形成文件流;
[0030]S300、解析步驟S200所得文件流,讀取第一功能模塊,加載第一功能模塊;
[0031]S400、運(yùn)行步驟S300所加載的第一功能模塊。
[0032]從上述描述可知,本發(fā)明的有益效果在于:通過讀取功能文件,形成文件流,解析文件流,讀取功能模塊,并加載和運(yùn)行功能模塊,實(shí)現(xiàn)模塊動態(tài)加載,通過本發(fā)明提供的方法,能夠靈活的加載命令和對象、自由控制命令的執(zhí)行順序,也有利于系統(tǒng)功能的擴(kuò)展。
[0033]進(jìn)一步的,所述步驟S100還包括:預(yù)設(shè)一存儲單元,用于存儲所述功能文件。
[0034]由上述描述可知,通過預(yù)設(shè)一存儲單元,將創(chuàng)建的功能文件放置在指定位置,便于主程序讀取。
[0035]進(jìn)一步的,所述功能模塊為數(shù)據(jù)、事件或動作。所述文件流為功能文件的二進(jìn)制代碼。
[0036]由上述描述可知,所述功能模塊為數(shù)據(jù)、事件或動作,通過動態(tài)加載,所呈現(xiàn)的效果不一樣,實(shí)現(xiàn)動態(tài)目的。
[0037]進(jìn)一步的,所述步驟S400具體為:預(yù)設(shè)一顯示界面,運(yùn)行步驟S300所加載的功能模塊,并顯示在所述顯示界面上。
[0038]由上述描述可知,通過預(yù)設(shè)一顯示界面,可用于顯示運(yùn)行結(jié)果。
[0039]進(jìn)一步的,方法還包括所述步驟S500具體為:判斷是否所有功能模塊已運(yùn)行,若是,結(jié)束步驟;若否,返回步驟S300。
[0040]進(jìn)一步的,所述步驟S300的功能模塊加載過程為:
[0041]S301、主程序創(chuàng)建一模塊對象列表,初始化預(yù)設(shè)模塊位置;
[0042]S302、主程序讀取json數(shù)據(jù)文件模塊位置的json對象,返回json對象的標(biāo)簽下模塊名稱和模塊屬性對應(yīng)的屬性值,所述模塊名稱的屬性值為N,所述模塊屬性的屬性值為A;
[0043]S303、主程序根據(jù)步驟S302所得N和A創(chuàng)建模塊對象;
[0044]S304、主程序?qū)⒉襟ES303所得模塊對象加入到對象列表中,所述對象列表長度加I ;
[0045]S305、主程序判斷所述模塊位置的長度是否大于對象列表的長度,如果所述模塊位置的長度大于對象列表的長度,則返回到步驟S302,執(zhí)行步驟S302到步驟S304 ;如果小于或等于對象列表的長度,則進(jìn)入步驟S306 ;
[0046]S306、主程序加載步驟S305的模塊位置的對象列表。
[0047]請參照圖2,為本發(fā)明【具體實(shí)施方式】的基于json數(shù)據(jù)格式模塊加載的系統(tǒng)的結(jié)構(gòu)示意圖,具體如下:
[0048]一種基于json數(shù)據(jù)格式模塊加載的系統(tǒng),包括:編輯器10、第一讀取單元20、解析器30、第二讀取單元40、加載單元50和運(yùn)行器60 ;
[0049]所述編輯器10,用于創(chuàng)建json數(shù)據(jù)格式的功能文件,所述功能文件包括一個以上有序的功能模塊,所述功能模塊包括第一功能模塊;
[0050]所述第一讀取單元20,用于主程序讀取所述功能文件,形成文件流;
[0051]所述解析器30,用于解析所述文件流;
[0052]所述第二讀取單元40,用于讀取第一功能模塊;
[0053]所述加載單元50,用于加載第一功能模塊;
[0054]所述運(yùn)行器60,用于運(yùn)行所加載的第一功能模塊。
[0055]從上述描述可知,本發(fā)明的有益效果在于:通過讀取功能文件,形成文件流,解析文件流,讀取功能模塊,并加載和運(yùn)行功能模塊,實(shí)現(xiàn)模塊動態(tài)加載,通過本發(fā)明提供的系統(tǒng),能夠靈活的加載命令和對象、自由控制命令的執(zhí)行順序,也有利于系統(tǒng)功能的擴(kuò)展。
[0056]進(jìn)一步的,系統(tǒng)還包括存儲單元,用于存儲功能文件。
[0057]由上述描述可知,通過預(yù)設(shè)一存儲單元,將創(chuàng)建的功能文件放置在指定位置,便于主程序讀取。
[0058]進(jìn)一步的,系統(tǒng)還包括顯示單元,用于將運(yùn)行后的功能模塊,顯示在所述顯示界面上。
[0059]由上述描述可知,通過預(yù)設(shè)一顯示界面,可用于顯示運(yùn)行結(jié)果。
[0060]進(jìn)一步的,系統(tǒng)還包括判斷單元,用于判斷是否所有功能模塊已運(yùn)行。
[0061]實(shí)施例一
[0062]步驟1、創(chuàng)建、編輯json數(shù)據(jù)格式的功能文件,并放置指定位置,所述功能文件包含一系列功能模塊,且所述功能模塊是有序的;
[0063]步驟2、主程序從
當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
陆河县| 固始县| 阜城县| 琼结县| 同德县| 兴安盟| 沁源县| 昌江| 兴海县| 滕州市| 柳林县| 巫溪县| 丹棱县| 蕲春县| 乌兰察布市| 平顶山市| 响水县| 满洲里市| 信阳市| 上虞市| 鄂伦春自治旗| 凉山| 库伦旗| 重庆市| 汉沽区| 洪湖市| 伊金霍洛旗| 冀州市| 黎城县| 安岳县| 慈溪市| 崇明县| 无棣县| 太湖县| 凯里市| 嘉荫县| 达日县| 桦川县| 拉孜县| 渭源县| 晋宁县|