亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        代碼生成技術(shù)在軟件開發(fā)中的應(yīng)用

        2016-08-29 02:14:28重慶三峽職業(yè)學(xué)院現(xiàn)代教育技術(shù)中心
        電子世界 2016年15期
        關(guān)鍵詞:基類代碼生成用戶界面

        重慶三峽職業(yè)學(xué)院現(xiàn)代教育技術(shù)中心 唐 磊

        ?

        代碼生成技術(shù)在軟件開發(fā)中的應(yīng)用

        重慶三峽職業(yè)學(xué)院現(xiàn)代教育技術(shù)中心唐磊

        本文介紹了代碼生成技術(shù)的概念和特點,以及代碼生成器的分類,在此基礎(chǔ)上舉例說明代碼生成器在軟件項目開發(fā)中的應(yīng)用過程。

        代碼生成;軟件開發(fā);.NET;數(shù)據(jù)庫

        1.引言

        一直以來,軟件工程界在如何減少軟件工程師的工作量和提高工作產(chǎn)品的質(zhì)量的問題上做著不懈地探討和研究,用于解決這問題的新方法、新技術(shù)、新工具也不斷地涌現(xiàn)。一些應(yīng)用程序框架如J2EE,.NET的出現(xiàn),讓軟件工程師擺脫了編寫諸如數(shù)據(jù)庫訪問,web頁面UI設(shè)計等底層邏輯代碼帶來的煩惱,但軟件工程師面臨編寫基于這些應(yīng)用程序框架API的一些重復(fù)繁瑣的代碼,以及軟件系統(tǒng)需求或應(yīng)用程序框架API的變更導(dǎo)致軟件系統(tǒng)中代碼的多次修改等諸多問題。采用代碼生成技術(shù)可以成為解決之道。它實現(xiàn)了從手工作坊式的編程到對組件的自動裝配的轉(zhuǎn)變。

        2.代碼生成技術(shù)綜述

        所謂代碼生成技術(shù),即在開發(fā)應(yīng)用軟件之前,先設(shè)計一個程序,用它來自動生成目標(biāo)程序的代碼。隨著應(yīng)用程序開發(fā)環(huán)境的日益復(fù)雜,如J2EE、MFC和.NET等,代碼生成技術(shù)在專業(yè)應(yīng)用程序開發(fā)過程中的地位起來越重要。使用代碼生成技術(shù),可極大地加快應(yīng)用軟件的編程速度,降低錯誤發(fā)生率,從而提高應(yīng)用軟件的生產(chǎn)效率。

        代碼生成技術(shù)的優(yōu)點:

        質(zhì)量高:大量手寫代碼的質(zhì)量是參差不齊的,修改已完成的同類代碼的代價太大。使用代碼生成器,即使在調(diào)試時發(fā)現(xiàn)了錯誤,也可以修改模板和重新生成代碼。

        一致性好:代碼生成器生成的代碼整齊,對變量名的定義、API的調(diào)用等進(jìn)行規(guī)范,提高了代碼的可讀性。

        對項目開發(fā)經(jīng)理來說,應(yīng)用代碼生成技術(shù)還具有易于控制開發(fā)流程、提供高質(zhì)量的文檔和代碼的優(yōu)點。

        代碼生成器按輸入和輸出分可分為代碼Munger、內(nèi)嵌代碼擴(kuò)展、混合代碼生成器、部分類生成器和層生成器。代碼生成器按是否對生成代碼的維護(hù)可分為消極的代碼生成器和積極的代碼生成器。

        3.代碼生成技術(shù)實現(xiàn)

        現(xiàn)代企業(yè)應(yīng)用程序一般采用三層或多層模式,從下向上依次為數(shù)據(jù)庫訪問層、應(yīng)用邏輯層和用戶界面層。一個典型的在.NET平臺上開發(fā)的應(yīng)用軟件的模式為:

        數(shù)據(jù)訪問層:實現(xiàn)SQL語句和存儲過程與數(shù)據(jù)庫的訪問。

        應(yīng)用邏輯層:由一組.NET組件(.dll)構(gòu)成,是實現(xiàn)應(yīng)用程序的業(yè)務(wù)邏輯部分。應(yīng)用邏輯層通過調(diào)用數(shù)據(jù)庫訪問層中的類方法,實現(xiàn)ADO.NET與數(shù)據(jù)庫交換數(shù)據(jù)。

        用戶界面層:.NET平臺上的用戶界面可以采用兩種方式:Web Form和Windows Form。前者在服務(wù)器上運行,用戶通過計算機(jī)上的瀏覽器訪問;后者是運行于用戶計算機(jī)上的Windows應(yīng)用程序,通過Web Service與服務(wù)器上的應(yīng)用邏輯層交換數(shù)據(jù)。

        基于企業(yè)應(yīng)用程序目前采用的三層或多層模式,目前的商業(yè)代碼生成軟件大多為層生器類。軟件提供大量程序模板供選擇,可為數(shù)據(jù)訪問層、應(yīng)用邏輯層和用戶界面層等定義對應(yīng)的模板,通過數(shù)據(jù)庫中的表可批量生成每層相對應(yīng)的代碼,從而節(jié)約大量手工方式編碼的時間。通過軟件內(nèi)的文檔生成功能可生成對應(yīng)的數(shù)據(jù)庫設(shè)計文檔。至于應(yīng)用程序的報表問題,可采用成熟的每三方組件來完成,如著名的水晶報表。也可自行編制報表程序。

        4.代碼生成技術(shù)應(yīng)用

        動軟代碼生成器在目前軟件開發(fā)中應(yīng)用廣泛。它支持多種類型數(shù)據(jù)庫管理器,可以生成基于面向?qū)ο蟮乃枷牒腿龑蛹軜?gòu)設(shè)計的代碼,主要實現(xiàn)在對應(yīng)數(shù)據(jù)庫中表的基類代碼的自動生成,包括生成屬性、添加、修改、刪除、查詢、存在性和Model類構(gòu)造等基礎(chǔ)代碼片斷,支持不同3種架構(gòu)代碼生成。以下是動軟代碼生成器的操作步驟。

        第一步,在代碼模板中創(chuàng)建各層的代碼模板(如Model層,數(shù)據(jù)訪問層(DAL),應(yīng)用邏輯層(BLL)和用戶界面層),其中Model層代碼模板如圖 1所示。圖中TableHost host = (TableHost)(Host);表示獲取到的數(shù)據(jù)表對象,<#= host.TableDescription #>表示數(shù)據(jù)表的注釋名,<#= host.GetModelClass(host.TableName) #>表示數(shù)據(jù)表基類名稱,<#= CodeCommon.DbTypeToCS(c.TypeName) #> 表示數(shù)據(jù)表基類屬性數(shù)據(jù)類型,<#= c.ColumnName #>表示數(shù)據(jù)表基類屬性名稱。

        圖1  Model層代碼模板

        第二步,在代碼模板中創(chuàng)建各層的代碼模板(如Model層,數(shù)據(jù)訪問層(DAL),在數(shù)據(jù)庫視圖中創(chuàng)建并連接服務(wù)器,在出現(xiàn)的數(shù)據(jù)庫列表中任選一個數(shù)據(jù)庫,在出現(xiàn)的右鍵菜單中選擇“模板代碼批量生成”,在出現(xiàn)的窗口中選擇要生成代碼的數(shù)據(jù)庫,選擇表和視圖,選擇要模板,選擇“按模板和表獨立保存”,選擇生成代碼保存路徑,點擊“導(dǎo)出”按鈕,即在指定路徑下生成與代碼模板對應(yīng)的源代碼。窗口設(shè)置如圖 2所示。

        圖2  模板代碼批量生成窗口

        5.結(jié)論

        本文以動軟代碼生成器生成某個軟件項目代碼為例說明了代碼生成技術(shù)的應(yīng)用。代碼自動生成軟件是極有價值的應(yīng)用軟件開發(fā)工具,無論是選擇商業(yè)軟件還是自行開發(fā)代碼生成工具,正確地應(yīng)用和維護(hù)可以極大地提高軟件開發(fā)效率和軟件質(zhì)量。

        [1]劉鷹.代碼生成技術(shù)及其在企業(yè)開發(fā)中的應(yīng)用[J].西安文理學(xué)院學(xué)報:自然科學(xué)版,2006,9(3):98.

        [2]范小鋼.代碼生成技術(shù)的探討與實踐[D].中山:中山大學(xué),2004.

        [3]鄭斌.基于ASP.NET Web應(yīng)用的代碼生成技術(shù)[D].長沙:中南大學(xué),2011.

        [4]王忠杰,戰(zhàn)德臣,徐曉飛等.基于對象關(guān)聯(lián)模型的企業(yè)應(yīng)用軟件代碼生成器[J].計算機(jī)集成制造系統(tǒng),2007,13(5):1023.

        唐磊(1983—),男,重慶萬州人,重慶大學(xué)計算機(jī)技術(shù)工程碩士,現(xiàn)供職于重慶三峽職業(yè)學(xué)院現(xiàn)代教育技術(shù)中心,實驗師,研究方向:計算機(jī)網(wǎng)絡(luò),軟件開發(fā)。

        猜你喜歡
        基類代碼生成用戶界面
        自然用戶界面在智能家居系統(tǒng)中的應(yīng)用路徑創(chuàng)新研究:生成式人工智能技術(shù)的調(diào)節(jié)作用
        包裝工程(2023年16期)2023-08-25 11:40:58
        基于C#面向?qū)ο蟪绦蛟O(shè)計的封裝、繼承和多態(tài)分析
        基于CiteSpace的國外用戶界面體驗圖譜量化分析
        Lustre語言可信代碼生成器研究進(jìn)展
        UI用戶界面色彩設(shè)計研究
        流行色(2017年12期)2017-10-26 03:08:44
        空戰(zhàn)游戲設(shè)計實例
        基于XML的代碼自動生成工具
        電子科技(2015年2期)2015-12-20 01:09:20
        一種基于用戶興趣的STC改進(jìn)算法
        虛機(jī)制在《面向?qū)ο蟪绦蛟O(shè)計C++》中的教學(xué)方法研究
        基于B/S的跨平臺用戶界面可配置算法研究
        亚洲一区二区国产一区| 特级黄色毛片视频| 日本熟妇hd8ex视频| 国产女主播在线免费看| 中文字幕本久久精品一区| 亚洲综合激情五月丁香六月| 四虎永久免费一级毛片| 亚洲国产不卡av一区二区三区 | 中文字幕亚洲综合久久久| 在线麻豆精东9制片厂av影现网| 中文字幕免费不卡二区| 亚洲AV无码一区二区三区天堂网| 91精品国产乱码久久久| 45岁妇女草逼视频播放| 男女上下猛烈啪啪免费看| 国产欧美日韩午夜在线观看| 国产一级av理论手机在线| 日本一区二区在线免费视频| 亚洲av无码专区在线播放中文 | 国产美女爽到喷出水来视频| 亚洲有码转帖| 国产精品视频一区二区三区,| 国产色av一区二区三区| а√天堂资源官网在线资源| 久久AV老司机精品网站导航 | 人妻丰满多毛熟妇免费区| 亚洲一区二区三区美女av| 色婷婷av一区二区三区久久| 暖暖视频在线观看免费| 99热国产在线| 人妻少妇中文字幕久久hd高清| 丰满大爆乳波霸奶| 国产suv精品一区二区69| 日韩精品视频在线一二三| 国产色视频一区二区三区不卡| 亚洲国产精品va在线播放| 中文字幕亚洲精品第1页| 日本久久久精品免费免费理论| 欧美黑人又大又粗xxxxx| 欧美婷婷六月丁香综合色| 黄片在线观看大全免费视频|