欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      軟件設(shè)計(jì)模式淺析論文

      時(shí)間:2019-05-13 18:19:32下載本文作者:會(huì)員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關(guān)的《軟件設(shè)計(jì)模式淺析論文》,但愿對(duì)你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫還可以找到更多《軟件設(shè)計(jì)模式淺析論文》。

      第一篇:軟件設(shè)計(jì)模式淺析論文

      軟件設(shè)計(jì)模式淺析

      陳亞東

      (中原工學(xué)院軟件學(xué)院,河南 鄭州450000)

      摘要:什么是軟件設(shè)計(jì)模式呢?其實(shí)廣義的來講,軟件設(shè)計(jì)模式是可解決一類軟件問題并且能反復(fù)使用的軟件設(shè)計(jì)方案;狹義的來講,軟件設(shè)計(jì)模式是對(duì)被用來在特定場景下解決一般設(shè)計(jì)問題的類和相互通信的對(duì)象的描述。是在類和對(duì)象的層次描述的可反復(fù)使用的軟件設(shè)計(jì)問題的解決方案。軟件設(shè)計(jì)模式通常描述了一組相互緊密作用的類與對(duì)象。

      在課堂學(xué)到的軟件設(shè)計(jì)模式,我學(xué)習(xí)的并不好,對(duì)各種模式的運(yùn)用和實(shí)現(xiàn),感覺簡單,但是要做起來還是有些難度。本文簡單講述了以面向?qū)ο蠹夹g(shù)為基礎(chǔ)的軟件設(shè)計(jì)模式的分析。

      關(guān)鍵詞:設(shè)計(jì)模式;設(shè)計(jì)方案;面向?qū)ο?/p>

      中國分類號(hào):TP311.5文獻(xiàn)標(biāo)志碼:A

      Software design patterns is

      analysed

      Chenyadong

      (Zhongyuan University of TechnologySoftware college,henan zhengzhou450000)Abstract: What is a software design pattern? Actually, broadly speaking, the software design pattern is a type of the software can solve the problem and the repeated use of the software design;Narrowly speaking, the software design pattern is to be used in specific scenarios and communicate with each other to solve the problem of general design of the description of the object.Is described in the level of the classes and objects can be repeated use of the software design of the solution of the problem.Software design patterns usually describes a set of mutually close function classes and objects.Learned in the class of software design pattern, I'm not a very good learning, for the use of various patterns and implementation, feeling is simple, but want to do or some difficulty.This article simply describes the software design based on object-oriented technology pattern analysis.Key words: design patterns;Design scheme;object-oriented

      對(duì)于軟件設(shè)計(jì)模式,從上課到現(xiàn)在,我在頭腦中還沒有一個(gè)完整的概念,主要是因

      為我的基礎(chǔ)比較差,憑自身能力還不能寫出

      來一個(gè)項(xiàng)目。通過上網(wǎng)搜索,知道了什么是

      軟件設(shè)計(jì)模式,它是一套被反復(fù)使用,多數(shù)

      人知曉的,經(jīng)過分類編目的,代碼設(shè)計(jì)經(jīng)驗(yàn)的總結(jié),使用設(shè)計(jì)模式是為了可重用代碼、讓代碼更容易被他人理解、保證代碼可靠性

      [1]廠模式、單例模式、生成器模式、工廠方法模式、原型模式、適配器模式等等。

      一、設(shè)計(jì)模式 模式是用來描述所交流的問題及解決方案的,一個(gè)完整的設(shè)計(jì)模式主要由模式名稱、問題、解決方案、效果四個(gè)基本要素組成。設(shè)計(jì)模式體現(xiàn)的是程序整體的一種構(gòu)思,所以有時(shí)候它也會(huì)出現(xiàn)在分析或者是概要設(shè)計(jì)階段中,設(shè)計(jì)模式的核心思想是通

      過增加抽象層,把變化部分從那些不變的部[2][2]。軟件設(shè)計(jì)模式分為基礎(chǔ)模式、委托模式、接口模式、代理模式、創(chuàng)建型模式、抽象工

      分中分離出來。這就是我所了解的設(shè)計(jì)模式。設(shè)計(jì)模式有五種原則,“開-閉”原則(OCP)、單一職責(zé)原則(SRP)、里氏代換原則(LSP)、依賴倒置原則(DIP)和接口隔離原則(ISP)[3],設(shè)計(jì)模式就是實(shí)現(xiàn)了上面所說的五種原則,從而達(dá)到了代碼復(fù)用、增加可維護(hù)性的目的。

      在設(shè)計(jì)模式經(jīng)典著作《GOF95》中,設(shè)計(jì)模式從應(yīng)用的角度上被分為三個(gè)大的類型,分別是創(chuàng)建型模式、結(jié)構(gòu)型模式和行為型模式。又根據(jù)模式的范圍分,模式既用于類又用于對(duì)象,類模式是處理類和子類之間的關(guān)系,這些關(guān)系通過繼承建立,是靜態(tài)的,在編譯時(shí)刻便確定下來了;對(duì)象模式是處理對(duì)象間的關(guān)系,這些關(guān)系在運(yùn)行時(shí)刻是可以變化的,更具動(dòng)態(tài)性。從某種意義上來說,幾乎所有模式都使用繼承機(jī)制,所以“類模式”只指那些集中于處理類間關(guān)系的模式,而大部分模式都屬于對(duì)象模式的范疇。

      二、設(shè)計(jì)模式的分類

      創(chuàng)建型設(shè)計(jì)模式是用來創(chuàng)建對(duì)象的模式,抽象了實(shí)例化過程,工廠模式、抽象工廠模式、單件模式、生成器模式、原型模式都屬于創(chuàng)建型設(shè)計(jì)模式。簡單來說一下創(chuàng)建型結(jié)構(gòu)模式有哪幾種模式吧,首先說一下工廠模式,工廠模式:客戶類和工廠類分開,消費(fèi)者任何時(shí)候需要某種產(chǎn)品,只需要向工廠請(qǐng)求即可,消費(fèi)者無須修改就可以接納新產(chǎn)品;缺點(diǎn)就是當(dāng)產(chǎn)品修改時(shí),工廠類也要做出相應(yīng)的修改。比如:如何創(chuàng)建及如何向客戶端提供。抽象工廠模式:為一個(gè)產(chǎn)品族提供統(tǒng)一的創(chuàng)建接口,當(dāng)需要這個(gè)產(chǎn)品族的某一系列的時(shí)候,可以從抽象工廠中選出相應(yīng)的系列創(chuàng)建一個(gè)具體的工廠類。單件模式:保證一個(gè)類有且僅有一個(gè)實(shí)例,提供一個(gè)全局訪問點(diǎn)。生成器模式:將復(fù)雜對(duì)象創(chuàng)建與表示分離,同樣的創(chuàng)建過程可創(chuàng)建不同的表示,允許用戶通過指定復(fù)雜對(duì)象類型和內(nèi)容來創(chuàng)建對(duì)象,用戶不需要知道對(duì)象內(nèi)部的具體構(gòu)建細(xì)節(jié)。原型模式:通過“復(fù)制”一個(gè)已經(jīng)存在的實(shí)例來返回新的實(shí)例(不新建實(shí)例)。被復(fù)制的實(shí)例就是“原型”,這個(gè)原型是可定制的。原型模式多用于創(chuàng)建復(fù)雜的或者耗時(shí)的實(shí)例,因?yàn)檫@種情況下,復(fù)制一個(gè)已經(jīng)存在的實(shí)例使程序運(yùn)行更高效;或者創(chuàng)建值相等,只是命名不一樣的同類數(shù)據(jù)。這幾種模式老師也讓做過作業(yè),做起來感覺也挺簡單的。

      結(jié)構(gòu)型模式討論的是類和對(duì)象的結(jié)構(gòu),它采用繼承機(jī)制來組合接口或?qū)崿F(xiàn)(類結(jié)構(gòu)型模式),或者通過組合一些對(duì)象來實(shí)現(xiàn)新的功能(對(duì)象結(jié)構(gòu)型模式)。結(jié)構(gòu)型模式有這幾種模式,組合模式:定義一個(gè)接口,使之用于單一對(duì)象,也可以應(yīng)用于多個(gè)單一對(duì)象組成的對(duì)象組。裝飾模式:給對(duì)象動(dòng)態(tài)添加額外的職責(zé),就好像給一個(gè)物體加上裝飾物,完善其功能。代理模式:在軟件系統(tǒng)中,有些對(duì)象有時(shí)候由于跨越網(wǎng)絡(luò)或者其他障礙,而不能夠或者不想直接訪問另一個(gè)對(duì)象,直接訪問會(huì)給系統(tǒng)帶來不必要的復(fù)雜性,這時(shí)候可以在客戶程序和目標(biāo)對(duì)象之間增加一層中間層,讓代理對(duì)象來代替目標(biāo)對(duì)象打點(diǎn)一切,這就是代理模式。享元模式:Flyweight是一個(gè)共享對(duì)象,它可以同時(shí)在不同上下文(Context)使用。外觀模式:外觀模式為子系統(tǒng)提供了一個(gè)更高層次、更簡單的接口,從而降低了子系統(tǒng)的復(fù)雜度,使子系統(tǒng)更易于使用和管理。外觀承擔(dān)了子系統(tǒng)中類交互的責(zé)任。橋梁模式:橋梁模式的用意是將問題的抽象和實(shí)現(xiàn)分離開來實(shí)現(xiàn),通過用聚合代替繼承來解決子類爆炸性增長的問題。適配器模式:將一個(gè)類的接口適配成用戶所期待的接口。一個(gè)適配器允許因?yàn)榻涌诓患嫒荻荒茉谝黄鸸ぷ鞯念惞ぷ髟谝黄?,做法是將類自己的接口包裝在一個(gè)已存在的類中。對(duì)于這幾種模式,我理解的太籠統(tǒng),也不太明白,只是根據(jù)這些定義來用心理解來消化。

      行為型設(shè)計(jì)模式著力解決的是類實(shí)體之間的通訊關(guān)系,希望以面向?qū)ο蟮姆绞矫枋鲆粋€(gè)控制流程。行為型設(shè)計(jì)模式種類比較多,其中觀察者模式和訪問者模式運(yùn)用的比較多。模版模式:定義了一個(gè)算法步驟,并允許子類為一個(gè)或多個(gè)步驟提供實(shí)現(xiàn)。子類在不改變算法架構(gòu)的情況下,可重新定義算法中某些步驟。觀察者模式:定義了對(duì)象之

      間一對(duì)多的依賴,當(dāng)這個(gè)對(duì)象的狀態(tài)發(fā)生改變的時(shí)候,多個(gè)對(duì)象會(huì)接受到通知,有機(jī)會(huì)做出反饋。迭代子模式:提供一種方法順序訪問一個(gè)聚合對(duì)象中各個(gè)元素, 而又不需暴露該對(duì)象的內(nèi)部表示。責(zé)任鏈模式:很多對(duì)象由每一個(gè)對(duì)象對(duì)其下一個(gè)對(duì)象的引用而連接起來形成一條鏈。請(qǐng)求在這個(gè)鏈上傳遞,直到鏈上的某一個(gè)對(duì)象決定處理此請(qǐng)求。發(fā)出這個(gè)請(qǐng)求的客戶端并不知道鏈上的哪一個(gè)對(duì)象最終處理這個(gè)請(qǐng)求,這使系統(tǒng)可以在不影響客戶端的情況下動(dòng)態(tài)的重新組織鏈和分配責(zé)任。備忘錄模式:在不破壞封裝性的前提下,捕獲一個(gè)對(duì)象的內(nèi)部狀態(tài),并在該對(duì)象之外保存這個(gè)狀態(tài)。這樣以后就可將該對(duì)象恢復(fù)到原先保存的狀態(tài)。命令模式:將請(qǐng)求及其參數(shù)封裝成一個(gè)對(duì)象,作為命令發(fā)起者和接收者的中介,可以對(duì)這些請(qǐng)求排隊(duì)或記錄請(qǐng)求日志,以及支持可撤銷操作。狀態(tài)模式:允許一個(gè)“對(duì)象”在其內(nèi)部狀態(tài)改變的時(shí)候改變其行為,即不同的狀態(tài),不同的行為。訪問者模式:表示一個(gè)作用于某對(duì)象結(jié)構(gòu)中的各元素的操作。可以在不改變各元素的類的前提下定義作用于這些元素的新操作。解釋器模式:給定一個(gè)語言,定義它的文法的一種表示,并定義一個(gè)解釋器,這個(gè)解釋器使用該表示來解釋語言中的句子。中介者模式:用一個(gè)中介對(duì)象來封裝一系列的對(duì)象交互。策略模式:定義一組算法,將每個(gè)算法都封裝起來,并且使它們之間可以互換。策略模式使這些算法在客戶端調(diào)用它們的時(shí)候能夠互不影響地變化。因?yàn)槭菍W(xué)時(shí)太少的原因,老師講的模式并不多,這幾個(gè)模式好多都沒有講,我們只能根據(jù)一些書籍和資料來學(xué)習(xí)。

      三、模式分析

      對(duì)于工廠模式,是最常見的一種模式之一。在面向?qū)ο缶幊讨? 常用的方法是用new操作符構(gòu)造對(duì)象實(shí)例,但在有些情況下,new操作符直接生成對(duì)象會(huì)帶來一些問題。創(chuàng)建對(duì)象之前必須清楚所要?jiǎng)?chuàng)建對(duì)象的類信息,但個(gè)別情況下無法達(dá)到此要求,譬如打開一個(gè)視頻文件需要一個(gè)播放器對(duì)象,但是用戶可能不知道具體播放器叫什么名字,需要系統(tǒng)分派給這個(gè)視頻文件一個(gè)合適的播放器,這種情況下用new運(yùn)算符并不合適。許多類型對(duì)象的創(chuàng)造需要一系列步驟,比如需要計(jì)算或取得對(duì)象的初始設(shè)置,需要選擇生成哪個(gè)子對(duì)象實(shí)例,在生成需要對(duì)象之前必須先生成一些輔助功能對(duì)象。在這些情況, 新對(duì)象的建立就是一個(gè) “過程”,而不僅僅是一個(gè)操作。為了能方便地完成這些復(fù)雜的對(duì)象創(chuàng)建工作,可引入工廠模式。工廠模式的實(shí)例分析: // EventFactory類

      public class EventFactory:LogFactory{

      public override EventLog Create(){

      return new EventLog();} }

      // FileFactory類

      public class FileFactory:LogFactory{

      public override FileLog Create(){

      return new FileLog();} }

      客戶程序有效避免了具體產(chǎn)品對(duì)象和應(yīng)用程序之間的耦合,增加了具體工廠對(duì)象和應(yīng)用程序之間的耦合,在類內(nèi)部創(chuàng)建對(duì)象通常比直接創(chuàng)建對(duì)象更靈活,通過面向?qū)ο蟮氖址ǎ瑢⒕唧w對(duì)象的創(chuàng)建工作延遲到子類,提供了一種擴(kuò)展策略,較好的解決了緊耦合問題。

      工廠模式客戶端程序: public class App {

      public static void Main(string[] args){

      LogFactory factory = new EventFactory();

      //FileFactory factory = new FileFactory();

      Log log = factory.Create();

      log.Write();} }

      對(duì)于抽象工廠模式,在軟件系統(tǒng)中,經(jīng)常面臨“一系列相互依賴對(duì)象”的創(chuàng)建工作,由于需求變化,這“一系列相互依賴的對(duì)象”也要改變,如何應(yīng)對(duì)這種變化呢?如何像工廠模式一樣繞過常規(guī)的”new”,提供一種“封裝機(jī)制”來避免客戶程序和這種“多系列具體對(duì)象創(chuàng)建工作”的緊耦合呢?其中有一種說法就是可以將這些對(duì)象一個(gè)個(gè)通過工廠模式來創(chuàng)建。但是,既然是一系列相互依賴的對(duì)象,它們是有聯(lián)系的,每個(gè)對(duì)象都這樣解決,如何保證他們的聯(lián)系呢?所以運(yùn)用抽象工廠模式,是一種有效的解決途徑。抽象工廠模式提供一個(gè)創(chuàng)建一系列相關(guān)或相互依賴對(duì)象的接口,而無需指定他們具體的類。適用于一個(gè)系統(tǒng)獨(dú)立于其產(chǎn)品創(chuàng)建、組合和表示時(shí),一個(gè)系統(tǒng)由多個(gè)產(chǎn)品系列中的一個(gè)來配置時(shí),強(qiáng)調(diào)一系列相關(guān)產(chǎn)品對(duì)象的設(shè)計(jì)以便進(jìn)行聯(lián)合時(shí),提供一個(gè)產(chǎn)品類庫,只想顯示其接口而非實(shí)現(xiàn)時(shí)。抽象工廠模式的結(jié)構(gòu),如下圖:

      圖1抽象工廠模式的結(jié)構(gòu)

      抽象工廠模式與工廠模式的區(qū)別就在于工廠模式提供一個(gè)接口,用于創(chuàng)建相關(guān)和依賴對(duì)象的家族,而不需要明確指定具體類。抽象工廠模式允許客戶使用抽象接口來創(chuàng)建一組相關(guān)產(chǎn)品,而不需要關(guān)心具體實(shí)際產(chǎn)出的產(chǎn)品是什么。

      對(duì)于適配器模式,是將一個(gè)類的接口,轉(zhuǎn)換成客戶期望的另一個(gè)接口,適配器讓原本接口不兼容的類可以一起工作。打個(gè)比方

      說,一個(gè)team要為外界提供S類服務(wù),但team里面沒有能夠完成此項(xiàng)任務(wù)的member,只有team外的A可以完成這項(xiàng)服務(wù)。為保證對(duì)外服務(wù)類別的一致性(提供S服務(wù)),一是將A招安到team內(nèi),負(fù)責(zé)提供S類服務(wù),二是A不準(zhǔn)備接受招安,可安排B去完成這項(xiàng)任務(wù),并讓B做好A的工作,讓B工作的時(shí)候向A請(qǐng)教,此時(shí),B是一個(gè)復(fù)合體(提供S服務(wù),是A的繼承弟子)。這種模式的使用過程是客戶通過目標(biāo)接口調(diào)用適配器的方法對(duì)適配器發(fā)出請(qǐng)求,適配器使用被適配者接口把請(qǐng)求轉(zhuǎn)換成被適配者的一個(gè)或者多個(gè)調(diào)用接口,客戶接收到調(diào)用的結(jié)果,但并未察覺這一切是適配器在起轉(zhuǎn)換作用。就是將一個(gè)類的接口轉(zhuǎn)換成客戶希望的另外一個(gè)接口,使得原本由于接口不兼容而不能一起工作的類可以一起工作。適配器模式有三種適用場合,一是使用一個(gè)已經(jīng)存在的類,而它的接口不符合要求,二是創(chuàng)建一個(gè)可以復(fù)用的類,該類可以與其他不相關(guān)的類或不可預(yù)見的類(即那些接口可能不一定兼容的類)協(xié)同工作,三是使用一些已經(jīng)存在的子類,但不可能通過子類化以匹配各自接口。對(duì)象適配器可以適配它的父類接口。適配器模式還分為了累適配器和對(duì)象適配器兩種,這里就不再具體介紹了。適配器模式的優(yōu)點(diǎn)就是方便設(shè)計(jì)者自由定義接口,不用擔(dān)心匹配問題,而它的缺點(diǎn)是這個(gè)模式屬于靜態(tài)結(jié)構(gòu),由于只能單繼承,所以不適用于多種不同的源適配到同一個(gè)目標(biāo)。

      對(duì)于命令模式,將一個(gè)請(qǐng)求封裝為一個(gè)對(duì)象,可用不同請(qǐng)求對(duì)客戶進(jìn)行參數(shù)化;對(duì)請(qǐng)求排隊(duì)或記錄請(qǐng)求日志,以及支持可撤消的操作。這種模式的適用性是抽象出待執(zhí)行的動(dòng)作以參數(shù)化某對(duì)象,在不同時(shí)刻指定、排列和執(zhí)行請(qǐng)求,支持取消操作,支持修改日志,用構(gòu)建在原語操作上的高層操作構(gòu)造一個(gè)系統(tǒng)。命令模式的實(shí)現(xiàn):

      public class Receiver{//接收者public void action(){

      System.out.println(“我在行動(dòng)

      ");} }

      public interface Command {//抽象命令

      public abstract void execute();} public

      class

      ConcreteCommand

      implements Command{//具體命令Receiver rcv;//含有接收者的引用

      ConcreteCommand(Receiverrcv){this.rcv=rcv;}publicvoid execute(){rcv.action();}//執(zhí)行命令}

      public class Invoker{//請(qǐng)求者Command command;public command){

      this.command=command;}

      public void startExecuteCommand(){command.execute();} }

      public class Application{//客戶程序public static void main(String args[]){Command ConcreteCommand(r);

      Invoker i=new Invoker();i.startExecuteCommand();} }

      命令模式的結(jié)構(gòu):

      command=new

      void

      setCommand(Command

      圖2命令模式的結(jié)構(gòu)

      命令模式中請(qǐng)求者不直接與接收者交互,即請(qǐng)求者不包接收者的引用,徹底消除了彼此之間的耦合。滿足“開-閉原則”。如果增加新的具體命令和該命令的接受者,不必修改調(diào)用者的代碼,調(diào)用者就可以使用新的命令對(duì)象;反之,如果增加新的調(diào)用者,不必修改現(xiàn)有的具體命令和接受者,新增加的調(diào)用者就可以使用已有的具體命令。由于請(qǐng)求者的請(qǐng)求被封裝到了具體命令中,就可以將具體命令保存到持久化的媒介中,在需要的時(shí)候,重新執(zhí)行這個(gè)具體命令。因此,使用命令模式可以記錄日志。使用命令模式可以對(duì)“請(qǐng)求”進(jìn)行排隊(duì)。每個(gè)請(qǐng)求都各自對(duì)應(yīng)一個(gè)具體命令,因此可以按一定順序執(zhí)行這些具體命令。

      四、總結(jié)

      在現(xiàn)代軟件開發(fā)當(dāng)中,軟件設(shè)計(jì)模式起

      到至關(guān)重要的作用。尤其是自從面向?qū)ο蟮恼Z言普遍使用以后,促成了團(tuán)隊(duì)合作設(shè)計(jì)的軟件設(shè)計(jì)幾乎成了不可能完成的任務(wù)。軟件設(shè)計(jì)模式在程序中的運(yùn)用是非常廣的,在程序設(shè)計(jì)的過程中,是對(duì)反復(fù)出現(xiàn)的問題的很用設(shè)計(jì)模式可確保更快的開發(fā)正確的代碼,并且降低在設(shè)計(jì)或者視線中出現(xiàn)的錯(cuò)誤的可能性。通過學(xué)習(xí)軟件設(shè)計(jì)模式這門課程,了解到這么多種模式,雖然還不能熟練運(yùn)用和操作,但是我會(huì)在以后的工作和實(shí)踐中去多加鍛煉。

      Receiverr=new Receiver();熱潮,而在此時(shí),沒有一個(gè)好的設(shè)計(jì)模式,i.setCommand(command);好的解決辦法,是良好思路的經(jīng)驗(yàn)集成。使

      參考文獻(xiàn):

      [1]鐘茂生,王文明。軟件設(shè)計(jì)模式及其使用[J].計(jì)算機(jī)應(yīng)用,2002,22(8):32-35 [2]Gamma E.Design patterns elements of reusable object-oriented software[M].北京:機(jī)械工業(yè)出版社,2002

      [3]廖志剛,李增智。設(shè)計(jì)模式在系統(tǒng)中的應(yīng)用[J]。計(jì)算機(jī)工程與應(yīng)用,2002,(12):7-10

      第二篇:軟件設(shè)計(jì)模式課程教學(xué)設(shè)計(jì)

      軟件設(shè)計(jì)模式課程教學(xué)設(shè)計(jì)

      軟件設(shè)計(jì)模式課程教學(xué)設(shè)計(jì)

      ***

      (*****************)

      摘要:本文結(jié)合教學(xué)實(shí)踐從學(xué)習(xí)需要分析、學(xué)習(xí)者分析、教學(xué)目標(biāo)的設(shè)計(jì)、教學(xué)策略的設(shè)計(jì)、教學(xué)媒體的設(shè)計(jì)、教學(xué)過程的設(shè)計(jì)、教學(xué)設(shè)計(jì)的評(píng)價(jià)這六個(gè)方面對(duì)操作系統(tǒng)課程的教學(xué)模式進(jìn)行了探討

      關(guān)鍵詞:教學(xué)設(shè)計(jì)模式;雙主模式;教學(xué)策略 中圖分類號(hào):G423.1

      Instructional design for software design patterns Abstract:Combining with teaching practice from the learning needs analysis, learner analysis, design of teaching goal, teaching strategy design, design of teaching media, teaching process design and evaluation of the six aspects of teaching design of operating system course teaching mode are discussed in this paper Key words: teaching design pattern;Double main mode;Teaching strategies 0引言

      近年來,以計(jì)算機(jī)技術(shù)為支撐的信息產(chǎn)業(yè)迅速發(fā)展,以及全球化浪潮所導(dǎo)致的信息技術(shù)人才新需求,對(duì)軟件工程教育產(chǎn)生了巨大的影響。在軟件產(chǎn)品、項(xiàng)目的研發(fā)過程中,不僅需要大量的初、中級(jí)人才來完成程序編寫工作,更需要能完成軟件設(shè)計(jì)的高級(jí)人才,目前總體來看,高校對(duì)該類人才的培養(yǎng)還遠(yuǎn)遠(yuǎn)未達(dá)到產(chǎn)業(yè)界的實(shí)際要求,沒有真正把軟件開發(fā)原理中的思維和內(nèi)涵傳授給學(xué)生,更多的時(shí)候還處在傳授計(jì)算機(jī)軟件開發(fā)技術(shù)層面,一定程度上制約了學(xué)生激發(fā)自己學(xué)習(xí)的潛力。

      在信息技術(shù)的推動(dòng)下,網(wǎng)絡(luò)教育以其獨(dú)特的魅力逐漸成為一種重要的教育手段。在網(wǎng)上開展教學(xué),使得網(wǎng)絡(luò)課程的設(shè)計(jì)和開發(fā)成為必然,軟件設(shè)計(jì)模式與其結(jié)合,才能提高教學(xué)效果和教學(xué)效率,才能更充分的發(fā)揮網(wǎng)絡(luò)多媒體技術(shù)的特點(diǎn)與優(yōu)勢,更有效的支持學(xué)生富有創(chuàng)造性的個(gè)性化學(xué)習(xí)。

      設(shè)計(jì)模式作為軟件設(shè)計(jì)研究領(lǐng)域新的熱點(diǎn),隨著其理論成果的不斷取得一級(jí)在軟件與設(shè)計(jì)中所起到的舉足輕重的作用,受到了軟件產(chǎn)業(yè)界廣泛一致認(rèn)同,特別是設(shè)計(jì)模式更多地關(guān)注了程序開發(fā)基本原理,而并非一味追求所謂技術(shù)創(chuàng)新,通過學(xué)習(xí)這些基本原理,有助于擺脫定式思維的桎梏,加深對(duì)軟件開發(fā)的理解,該課程的總體安排、教學(xué)方法、理論與實(shí)踐課的內(nèi)容以及安排甚至教材的選定都需要進(jìn)一步的探索和研究。

      軟件設(shè)計(jì)模式課程教學(xué)設(shè)計(jì) 教學(xué)設(shè)計(jì)的一般模式

      教學(xué)設(shè)計(jì),就是為了達(dá)到一定的教學(xué)目的,對(duì)教什么和怎么教進(jìn)行設(shè)計(jì)。教學(xué)設(shè)計(jì)的模式既是教學(xué)設(shè)計(jì)理論的具體化,也是教學(xué)設(shè)計(jì)實(shí)踐活動(dòng)的升華1。從教學(xué)設(shè)計(jì)的角度看,構(gòu)成教學(xué)設(shè)計(jì)模式的基本要素主要有四個(gè),即教學(xué)對(duì)象、教學(xué)目標(biāo)、教學(xué)策略、教學(xué)評(píng)價(jià)。而組成教學(xué)設(shè)計(jì)模式的因素有以下幾個(gè)方面:(1)學(xué)習(xí)需要分析,包括學(xué)習(xí)需求分析、學(xué)習(xí)者分析(2)教學(xué)目標(biāo)的設(shè)計(jì);(3)教學(xué)策略的設(shè)計(jì);(4)教學(xué)媒體的設(shè)計(jì);(5)教學(xué)過程的設(shè)計(jì);(6)教學(xué)設(shè)計(jì)的評(píng)價(jià).

      2軟件設(shè)計(jì)模式課程教學(xué)設(shè)計(jì)探析

      2.1 學(xué)習(xí)需要分析:

      學(xué)習(xí)需要的核心是發(fā)現(xiàn)問題,而不是解決問題的方法。包括三方面的工作:一是通過調(diào)查研究,分析教學(xué)中是否存在要解決的問題;二是分析問題存在的性質(zhì),以判斷教學(xué)系統(tǒng)設(shè)計(jì)是不是解決該問題的合適途徑;三是分析現(xiàn)有資源和約束條件,以論證解決該問題的可能性。

      2.1.1 學(xué)習(xí)需求分析

      設(shè)計(jì)模式,它描述了在面向?qū)ο筌浖O(shè)計(jì)過程中針對(duì)特定問題的簡潔而優(yōu)雅的解決方案。所有結(jié)構(gòu)良好的面向?qū)ο筌浖w系架構(gòu)中都包含了許多設(shè)計(jì)模式,特別是在J2EE的架構(gòu)中使用了大量的設(shè)計(jì)模式,使系統(tǒng)架構(gòu)精巧,簡潔和易于理解,同時(shí)也給我們提供了學(xué)習(xí)典范。與之同時(shí)設(shè)計(jì)模式被認(rèn)為是的軟件復(fù)用的目標(biāo)2。

      本課程主要介紹軟件復(fù)用基本概念,設(shè)計(jì)模式的原則,典型的GOF的設(shè)計(jì)模式,并列舉的大量的可運(yùn)行代碼,結(jié)合實(shí)例使課程生動(dòng)。通過講授,使學(xué)生理解設(shè)計(jì)模式的概念、作用以及在軟件開發(fā)中的應(yīng)用,掌握設(shè)計(jì)模式使用原則。同時(shí)通過使用復(fù)用技術(shù),改造代碼,從而使用合適的設(shè)計(jì)模式。

      2.1.2學(xué)習(xí)者分析:

      每個(gè)學(xué)習(xí)者都有各自不同的先天素質(zhì)和后天通過學(xué)習(xí)得到的素質(zhì),這就造成了學(xué)習(xí)者與學(xué)習(xí)者之間學(xué)習(xí)現(xiàn)狀和學(xué)習(xí)目標(biāo)的不同。對(duì)學(xué)習(xí)者進(jìn)行分析就是要弄

      軟件設(shè)計(jì)模式課程教學(xué)設(shè)計(jì)

      清楚他們具有什么樣的先天素質(zhì)、已習(xí)得哪些后天的能力及學(xué)習(xí)需要是什么,因此在對(duì)學(xué)習(xí)者進(jìn)行分析時(shí)就包括對(duì)其一般個(gè)性心理特征進(jìn)行分析、對(duì)其學(xué)習(xí)風(fēng)格進(jìn)行分析、對(duì)其已習(xí)得的能力的分析和學(xué)習(xí)需要進(jìn)行分析四個(gè)方面。

      要使分析結(jié)果客觀真實(shí),相應(yīng)的調(diào)查問卷的設(shè)計(jì)是關(guān)鍵,筆者在實(shí)踐工作中設(shè)計(jì)并采用了“一般個(gè)性心理特征調(diào)查問卷”、“學(xué)習(xí)風(fēng)格分析調(diào)查問卷”、“習(xí)得的能力調(diào)查問卷”等來進(jìn)行分析;根據(jù)設(shè)計(jì)的調(diào)查問卷首先對(duì)學(xué)生進(jìn)行分析,為制定教學(xué)策略方案尋找相應(yīng)的依據(jù)。2.2 教學(xué)目標(biāo)的設(shè)計(jì):

      通過這門課程的學(xué)習(xí),為計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)學(xué)生,傳授軟件設(shè)計(jì)與方法的基礎(chǔ)知識(shí),培養(yǎng)科學(xué)思維和軟件開發(fā)的基本能力。了解軟件設(shè)計(jì)一般過程和掌握軟件設(shè)計(jì)的原則,加強(qiáng)學(xué)生的面向?qū)ο笤O(shè)計(jì)開發(fā)思想、理解設(shè)計(jì)模式的概念、掌握常用的設(shè)計(jì)模式的使用方法,提高學(xué)生的軟件系統(tǒng)架構(gòu)設(shè)計(jì)能力。樹立學(xué)生正確的軟件設(shè)計(jì)思想,基本具備創(chuàng)建可維護(hù)的、靈活的和清晰的應(yīng)用程序的能力。

      我們對(duì)學(xué)習(xí)目標(biāo)的描述應(yīng)力求做到精確化,避免傳統(tǒng)描述中存在的模糊性;我在進(jìn)行相應(yīng)目標(biāo)描述時(shí),采用了學(xué)習(xí)結(jié)果的分類方法,對(duì)每一部分的教學(xué)目標(biāo)的成分進(jìn)行分析時(shí),都分別從學(xué)習(xí)者可以習(xí)得的智慧技能、言語信息技能、認(rèn)知策略、動(dòng)作技能和態(tài)度情感等五個(gè)大的方面去進(jìn)行分析;在具體描述時(shí)對(duì)對(duì)象、行為、條件和標(biāo)準(zhǔn)四方面進(jìn)行描述,這樣就基本上做到了對(duì)教學(xué)目標(biāo)描述的精確化,為后面的教學(xué)評(píng)價(jià)提出了具體的標(biāo)準(zhǔn)。

      進(jìn)行本課程學(xué)習(xí)的學(xué)生,也有基礎(chǔ)較好,其中也有一部分學(xué)生需要系統(tǒng)扎實(shí)的學(xué)習(xí)理論知識(shí),以便于進(jìn)一步深造,同時(shí)也注重實(shí)踐活動(dòng);另一部分學(xué)生則面臨將走上工作崗位的壓力,根據(jù)社會(huì)對(duì)人才的需要要求提高理論知識(shí)和應(yīng)用能力,多學(xué)習(xí)一些基本技能,提高操作能力;對(duì)于學(xué)習(xí)的目的比較明確,希望通過學(xué)習(xí)提高自己實(shí)際的應(yīng)用能力.即將走向工作崗位的同學(xué)具有較強(qiáng)的自學(xué)能力,希望在學(xué)習(xí)上改變過去那種死記硬背的作法,多理論聯(lián)系實(shí)際、所學(xué)知識(shí)能對(duì)今后實(shí)際應(yīng)用工作有較強(qiáng)的指導(dǎo)作用.即學(xué)以致用,而不是純粹的理論學(xué)習(xí).我認(rèn)為,在教學(xué)過程中,應(yīng)該根據(jù)不同班級(jí),采取不同的策略,對(duì)于基礎(chǔ)較好的學(xué)生,使學(xué)生在系統(tǒng)掌握基本理論的基礎(chǔ)上,提高實(shí)際應(yīng)用能力.對(duì)于即將走上工作崗位的學(xué)生,側(cè)重于以學(xué)生為中心的教學(xué)模式,以學(xué)生在掌握基本理論、基本分析方法的基礎(chǔ)上,注重實(shí)際分析問題、解決問題能力的培養(yǎng). 對(duì)所有學(xué)生都應(yīng)注重實(shí)際學(xué)習(xí)效果.對(duì)每一堂課的教學(xué)活動(dòng)都應(yīng)該具有實(shí)效,能解決學(xué)習(xí)上碰到的問題.

      軟件設(shè)計(jì)模式課程教學(xué)設(shè)計(jì)

      2.3 教學(xué)策略的設(shè)計(jì)

      教學(xué)策略的設(shè)計(jì),是有效地解決 “如何教”、“如何學(xué)”的問題.只有采取了相應(yīng)的教學(xué)策略,才能完成預(yù)期的教學(xué)目標(biāo).在現(xiàn)代教學(xué)設(shè)計(jì)研究領(lǐng)域,已形成兩大流派:一是以“教”為中心的教學(xué)設(shè)計(jì)理論;二是以 “學(xué)”為中心的教學(xué)設(shè)計(jì)理論.以 “教”為中心的教學(xué)設(shè)計(jì)理論的研究重點(diǎn)放在將知識(shí)和技能加以分解,使之符合一定的加工順序,以及以什么樣的媒體形式呈現(xiàn)才會(huì)有利于信息加工等方面.這種教學(xué)設(shè)計(jì)只關(guān)注知識(shí)的傳遞,教師被看作是知識(shí)的主要來源.

      針對(duì)以上情況的分析,我認(rèn)為應(yīng)該從教學(xué)形式、教學(xué)方法、信息呈現(xiàn)方式和程序四個(gè)方面進(jìn)行了規(guī)劃設(shè)計(jì);在教學(xué)形式上,主要采取集體教學(xué)與小組合作學(xué)習(xí)相結(jié)合的方式,也鼓勵(lì)學(xué)習(xí)者根據(jù)自身情況進(jìn)行些個(gè)別化學(xué)習(xí);在教學(xué)方法上,采用了講授法、討論法、演示法、設(shè)問法等多種方法;在信息的傳遞方式上,采用了傳統(tǒng)與現(xiàn)代媒體來呈現(xiàn)信息的方式;課程教學(xué)的基本程序是:問題——相關(guān)理論——實(shí)踐——評(píng)價(jià)。2.4 教學(xué)媒體的設(shè)計(jì)

      學(xué)生獲取知識(shí)不再是單純從書本上、教師的課堂講解中,而是已經(jīng)可以立體化,全方位的從學(xué)習(xí)環(huán)境中取得.學(xué)習(xí)環(huán)境是學(xué)習(xí)資源和人際關(guān)系的組合.學(xué)習(xí)資源包括學(xué)習(xí)材料、幫助學(xué)習(xí)者學(xué)習(xí)的認(rèn)知工具、學(xué)習(xí)空間等等.我們提供了便于自學(xué)的文字材料、電子教案及多媒體課件,從媒體的有機(jī)組合上來實(shí)現(xiàn)教學(xué)過程的優(yōu)化.便于學(xué)生利用計(jì)算機(jī)網(wǎng)絡(luò)進(jìn)行遠(yuǎn)距離交互式學(xué)習(xí).教師不再是學(xué)習(xí)材料的主要來源.教師通過人際交往來影響和引導(dǎo)學(xué)生管理自己的學(xué)習(xí)活動(dòng),并且應(yīng)以學(xué)生的身份參與到學(xué)生的學(xué)習(xí)活動(dòng)中去.教師不再是個(gè)體學(xué)習(xí)的輔導(dǎo)者,而是群體學(xué)習(xí)的參與者。針對(duì)以上情況,我認(rèn)為現(xiàn)行的教學(xué)模式,從網(wǎng)站下載課件和源碼的方式固化,不方便分享,隨著社會(huì)化媒體的興起,我認(rèn)為應(yīng)該充分利用現(xiàn)有資源對(duì)教學(xué)媒體的資源進(jìn)行擴(kuò)充,比如,在現(xiàn)有條件下部署一個(gè)FTP,供校內(nèi)學(xué)生進(jìn)行資源共享,可上傳和下載,對(duì)于校外學(xué)生,則應(yīng)建立具有分享屬性的網(wǎng)盤文件來共享文件,比如百度網(wǎng)盤、金山快盤等都是非常不錯(cuò)的配比。2.5 教學(xué)過程的設(shè)計(jì)

      軟件設(shè)計(jì)模式的教學(xué)在精心備課、內(nèi)容求新的基礎(chǔ)上,采用啟發(fā)式教學(xué)的方法,力求教學(xué)質(zhì)量的全面提高.在教學(xué)中,根據(jù)現(xiàn)有可參考設(shè)計(jì)思想做如下教學(xué)策略3:

      軟件設(shè)計(jì)模式課程教學(xué)設(shè)計(jì)

      2.5.1 告訴學(xué)習(xí)者學(xué)習(xí)目標(biāo)、學(xué)習(xí)重點(diǎn)、難點(diǎn).

      教學(xué)開始時(shí),明確告訴學(xué)習(xí)者學(xué)習(xí)目標(biāo),并使其了解當(dāng)目標(biāo)達(dá)到后,將學(xué)會(huì)什么,從而激發(fā)學(xué)習(xí)者對(duì)學(xué)習(xí)的期望.這不僅能提高學(xué)習(xí)動(dòng)機(jī),而且能起到“先行組織者”的作用.告訴學(xué)習(xí)者學(xué)習(xí)重點(diǎn)、難點(diǎn),引起注意.以喚起和控制學(xué)習(xí)者注意力.

      2.5.2 新課導(dǎo)人.

      在學(xué)習(xí)新內(nèi)容前,指出所需先決知識(shí)和技能,提出相關(guān)問題,以此刺激回憶起學(xué)過的有關(guān)知識(shí)和技能.還應(yīng)使學(xué)習(xí)者充分利用原有的認(rèn)知。

      2.5.3 課堂教學(xué).

      課堂教學(xué)采用了講解、提問、小組活動(dòng)、討論相結(jié)合的形式.在教學(xué)中采取的策略是先進(jìn)行教師講解,通過ppt、動(dòng)畫、現(xiàn)場操作方式,把教學(xué)涉及的新信息、新內(nèi)容較快地系統(tǒng)地向較多的學(xué)生傳輸.但如果僅是教師講解這一種教學(xué)形式,教師就不能及時(shí)獲得學(xué)生的反饋信息.為改變這一狀況,在教學(xué)過程中,穿插了課堂提問及時(shí)了解學(xué)生的情況,要按學(xué)生的反應(yīng)做出必要的說明和進(jìn)一步的提問. 根據(jù)學(xué)生的具體情況,進(jìn)行不同的活動(dòng)安排.對(duì)于普通??瓢嗟慕虒W(xué)安排是采取講解、提問、小組討論方式,還增加了專門 的討論課、答疑課,使教學(xué)活動(dòng)更加生動(dòng)活潑.對(duì)于有工作壓力的同學(xué),重點(diǎn)放在教學(xué)輔導(dǎo)課上,根據(jù)學(xué)生的需求,選用以討論式為主,穿插講解、提問方式,能起到事半功倍 的效果 . 同時(shí)提供豐富的教學(xué)資源,如參考教材、網(wǎng)絡(luò)資源、學(xué)習(xí)指導(dǎo)、電子教案等供學(xué)生在課外學(xué)習(xí).

      2.5.4 教學(xué)后記.

      每堂課后,認(rèn)真聽取學(xué)生的意見和建議,根據(jù)課堂情況和教學(xué)效果,記錄教學(xué)后記.及時(shí)對(duì)教案和教學(xué)方法進(jìn)行研究和改進(jìn).這一反饋工作可以使下一輪教學(xué)更加優(yōu)化

      2.5.5 加強(qiáng)實(shí)踐教學(xué)注重提高學(xué)生的實(shí)踐能力.

      實(shí)驗(yàn)教學(xué)是培養(yǎng)學(xué)生實(shí)踐能力的重要環(huán)節(jié),精心設(shè)計(jì)實(shí)驗(yàn),引導(dǎo)實(shí)驗(yàn)過程.對(duì)學(xué)生實(shí)驗(yàn)的指導(dǎo)特別注意調(diào)動(dòng)學(xué)生的積極性,引導(dǎo)他們獨(dú)立思考、獨(dú)立

      軟件設(shè)計(jì)模式課程教學(xué)設(shè)計(jì)

      完成 ;加強(qiáng)實(shí)驗(yàn)過程與結(jié)果的監(jiān)督.提高實(shí)驗(yàn)教學(xué)質(zhì)量.機(jī)房實(shí)驗(yàn)室是學(xué)生創(chuàng)新能力和動(dòng)手的實(shí)踐場所,通過實(shí)驗(yàn)培養(yǎng)學(xué)生創(chuàng)新能力和實(shí)踐能力.改變傳統(tǒng)的實(shí)驗(yàn)教學(xué)模式,拓寬實(shí)驗(yàn)教學(xué)內(nèi)容.按照實(shí)驗(yàn)教學(xué) “三步驟”來提高學(xué)生技能.這三步是:課程實(shí)驗(yàn)實(shí)行 “講解掃清障礙、指導(dǎo)落實(shí)過程、考核強(qiáng)化結(jié)果”.實(shí)驗(yàn)前講解實(shí)驗(yàn)內(nèi)容、過程和要求,補(bǔ)充必要的知識(shí) ;在實(shí)驗(yàn)過程中檢查學(xué)生完成規(guī)定的實(shí)驗(yàn)項(xiàng)目,督促學(xué)生實(shí)際動(dòng)手,并指對(duì)結(jié)果進(jìn)行分析;實(shí)驗(yàn)考核以過程考核為主,綜合考察學(xué)生試驗(yàn)的態(tài)度、試驗(yàn)技能、試驗(yàn)完成情況、試驗(yàn)報(bào)告質(zhì)量等.增設(shè)設(shè)計(jì)型實(shí)驗(yàn):這類實(shí)驗(yàn)以項(xiàng)目形式提出實(shí)驗(yàn)要求和具體實(shí)驗(yàn)結(jié)果,要求學(xué)生通過查資料或自學(xué)方式結(jié)合所學(xué)知識(shí),來完成實(shí)驗(yàn)項(xiàng)目.旨在培養(yǎng)學(xué)生的綜合應(yīng)用能力.

      2.6教學(xué)設(shè)計(jì)的評(píng)價(jià)

      教學(xué)評(píng)價(jià)主要包括兩大部分,一是傳統(tǒng)的總結(jié)性評(píng)價(jià),二是需要在教學(xué)過程中不斷進(jìn)行的形成性評(píng)價(jià)4;總結(jié)性評(píng)價(jià)一方面是對(duì)學(xué)習(xí)者的學(xué)習(xí)結(jié)果進(jìn)行檢測,另一方面也可發(fā)現(xiàn)一些教學(xué)方面的問題,從而在下一屆的教學(xué)中予以改進(jìn);形成性評(píng)價(jià)是在教學(xué)的過程中為使教學(xué)效果更好而不斷進(jìn)行的評(píng)價(jià),它是教師為使學(xué)習(xí)者盡可能在教學(xué)過程中學(xué)得更好而需不斷進(jìn)行的工作之一;從某種意義上講,形成性評(píng)價(jià)比總結(jié)性評(píng)價(jià)更重要,因此我認(rèn)為在教學(xué)過程中特別注意形成性評(píng)價(jià)方面的工作,具體針對(duì)“教學(xué)設(shè)計(jì)概述”、“學(xué)習(xí)者分析”、“學(xué)習(xí)內(nèi)容分析”、“教學(xué)目標(biāo)的闡明”、“教學(xué)策略的制定”、“教學(xué)實(shí)踐活動(dòng)”等幾個(gè)教學(xué)環(huán)節(jié)進(jìn)行了形成性評(píng)價(jià),診斷出現(xiàn)的問題,然后在下一階段的教學(xué)中給予解決。

      3:結(jié)論

      總之,在軟件設(shè)計(jì)模式這門課程的教學(xué)中,注意運(yùn)用了教學(xué)設(shè)計(jì)的基本原理和操作程序,特別注意讓學(xué)生理解現(xiàn)代科學(xué)教育思想(大教育觀)、幫助學(xué)生掌握教學(xué)設(shè)計(jì)基礎(chǔ)理論和基本技術(shù)、引導(dǎo)學(xué)生理論聯(lián)系實(shí)際,依據(jù)現(xiàn)代教育思想、運(yùn)用現(xiàn)代教學(xué)設(shè)計(jì)理論和技術(shù)對(duì)具體的教學(xué)活動(dòng)進(jìn)行設(shè)計(jì),形成成果;在教學(xué)方法上注意講授、組織小組討論、指導(dǎo)見習(xí)和實(shí)踐活動(dòng)相結(jié)合,對(duì)相關(guān)問題進(jìn)行分析、指導(dǎo)教學(xué)方案、學(xué)習(xí)方案及課件的設(shè)計(jì)、指導(dǎo)研究論文的撰寫和課件的制作,從而使學(xué)生真正的有所收獲和學(xué)習(xí)的成果。通過對(duì)這門課程的學(xué)習(xí),學(xué)生們不僅學(xué)到相關(guān)的理論,而且更重要的是他們學(xué)會(huì)了思考、分析、研究相關(guān)教學(xué)問題,學(xué)會(huì)了對(duì)相關(guān)教學(xué)問題進(jìn)行解決的方法——設(shè)計(jì)教學(xué)策略方案。學(xué)生變被動(dòng)學(xué)習(xí)為主動(dòng)學(xué)習(xí),達(dá)到了原定的教學(xué)目標(biāo),他們的實(shí)踐作品(上機(jī)作業(yè)等)也收集在軟件設(shè)計(jì)模式課程教學(xué)設(shè)計(jì)

      一起,形成了成果。當(dāng)然由于是集體教學(xué),面對(duì)的是幾十個(gè)學(xué)生,一套方案總是不能兼顧所有的學(xué)生,故還存在個(gè)別學(xué)生不能主動(dòng)參與各項(xiàng)教學(xué)活動(dòng)的情況,這將在今后的教學(xué)方案中設(shè)法解決。

      軟件設(shè)計(jì)模式課程教學(xué)設(shè)計(jì)

      [參考文獻(xiàn)]

      [1] 羅伯特·加涅主編.教學(xué)設(shè)計(jì)原理.華東師范大學(xué)出版社,2000.[2] 《軟件設(shè)計(jì)--從程序設(shè)計(jì)到體系結(jié)構(gòu)》 Eric J.Braude著; 李仁發(fā)、王岢、任小西譯,電子工業(yè)出版社。

      [3] 李克東,謝幼如著.多媒體組合教學(xué)設(shè)計(jì).科學(xué)出版社,1994.[4] 何克抗.教學(xué)設(shè)計(jì)理論的新發(fā)展.中國電化教育.1998.(10)、(11)、(12).[5] 羅伯特·加涅主編.學(xué)習(xí)的條件.華東師范大學(xué)出版社,2000.[6 《設(shè)計(jì)模式:可復(fù)用面向?qū)ο筌浖幕A(chǔ)》,機(jī)械工業(yè)出版社,Erich Gamma 等著,2000。

      [7] 張文蘭,李文光.對(duì)我國教學(xué)設(shè)計(jì)理論與實(shí)踐的思考.2001年教育技術(shù)論壇論文集.

      第三篇:礦用網(wǎng)絡(luò)電話軟件設(shè)計(jì)方法探討論文

      摘要:網(wǎng)絡(luò)電話在礦山生產(chǎn)中發(fā)揮著越來重要的作用,為了提高煤礦井下通訊效率,設(shè)計(jì)了一種礦用網(wǎng)絡(luò)電話系統(tǒng),敘述了網(wǎng)絡(luò)電話系統(tǒng)的構(gòu)成,重點(diǎn)介紹了系統(tǒng)上位機(jī)和下位機(jī)軟件的設(shè)計(jì)方法,該電話系統(tǒng)功能齊全,操作方便,應(yīng)用效果良好.

      關(guān)鍵詞:煤礦;網(wǎng)絡(luò);電話;軟件

      中圖分類號(hào):TP311文獻(xiàn)標(biāo)識(shí)碼:A

      作者簡介:陳林坤(1981-),男,安徽蚌埠人,唐山開誠電控設(shè)備集團(tuán)助理工程師

      隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)、通信技術(shù)的飛速發(fā)展和我國礦山生產(chǎn)規(guī)模的不斷擴(kuò)大以及自動(dòng)化水平的不斷提高,原有的通訊手段已不適應(yīng)生產(chǎn)的需要.當(dāng)前,“數(shù)字化礦山”建設(shè)正方興未艾,人們利用高科技來監(jiān)測、監(jiān)控礦山的生產(chǎn)和管理,其中,網(wǎng)絡(luò)通信是離不開的關(guān)鍵技術(shù)[1].本文結(jié)合煤礦井下通訊的實(shí)際,設(shè)計(jì)了一種效率較高的網(wǎng)絡(luò)電話系統(tǒng),介紹了該系統(tǒng)上位機(jī)和下位機(jī)軟件的設(shè)計(jì)方法.實(shí)際應(yīng)用表明,該系統(tǒng)功能齊全,使用方便,有效地提高了煤礦生產(chǎn)管理中通話的實(shí)時(shí)性和可靠性,進(jìn)而提高了煤礦生產(chǎn)和管理的效率.

      1硬件結(jié)構(gòu)組成礦用網(wǎng)絡(luò)電話系統(tǒng)主要用于煤礦調(diào)度音頻通訊場合[2],采用工業(yè)以太網(wǎng)、網(wǎng)絡(luò)尋呼臺(tái)和井下電話組成網(wǎng)絡(luò)系統(tǒng),對(duì)煤礦調(diào)度生產(chǎn)進(jìn)行語音通話和語音播報(bào).該系統(tǒng)由上位機(jī)、交換機(jī)、網(wǎng)絡(luò)尋呼臺(tái)、網(wǎng)絡(luò)電話板等組成。

      2系統(tǒng)上位機(jī)軟件設(shè)計(jì)

      礦用網(wǎng)絡(luò)電話系統(tǒng)上位機(jī)軟件采用C#語言編寫,基于MicrosoftVisualStudio2010開發(fā)平臺(tái),軟件由2部分構(gòu)成,包括網(wǎng)絡(luò)音頻軟件PCNetTel和網(wǎng)絡(luò)音頻配置軟件PCManger.

      2.1網(wǎng)絡(luò)音頻軟件

      網(wǎng)絡(luò)音頻軟件的功能主要有:監(jiān)聽在線客戶端設(shè)備的登陸狀態(tài)及客戶端連接狀態(tài),對(duì)客戶端的廣播、組播、對(duì)講通話以及通話內(nèi)容音頻文件進(jìn)行回放以及歷史記錄查詢等[3].網(wǎng)絡(luò)音頻軟件流程圖如圖2所示.網(wǎng)絡(luò)音頻軟件在對(duì)講模式下的呼叫、掛斷以及伴隨的振鈴邏輯稍顯復(fù)雜,此處采用事件驅(qū)動(dòng)后臺(tái)線程實(shí)現(xiàn),網(wǎng)絡(luò)通訊采用TCP和UDP混合編程模式,這提高了系統(tǒng)的實(shí)時(shí)響應(yīng)性能.在音頻文件生成方面采用設(shè)備IP、日期、時(shí)間方式來命名文件夾和音頻文件,以便于數(shù)據(jù)的查詢和回?fù)埽?/p>

      2.2網(wǎng)絡(luò)音頻配置軟件

      網(wǎng)絡(luò)音頻配置軟件的功能是搜索局域網(wǎng)內(nèi)設(shè)備,進(jìn)行參數(shù)修改配置,主要配置參數(shù)包括:本機(jī)IP地址、子網(wǎng)掩碼、網(wǎng)關(guān)、服務(wù)器IP地址、尋呼臺(tái)IP地址以及設(shè)備編號(hào);輸入音源、增益、音量、振鈴次數(shù)、設(shè)備組播以及設(shè)備Modbus從站地址、串口波特率等參數(shù).網(wǎng)絡(luò)音頻配置軟件搜索局域網(wǎng)內(nèi)設(shè)備時(shí)采用發(fā)送全網(wǎng)廣播詢問幀方式,以實(shí)現(xiàn)跨網(wǎng)段的未知設(shè)備IP的查詢.在數(shù)據(jù)幀校驗(yàn)方面,采用MCU的全球唯一ID號(hào)作為算法數(shù)據(jù)源生成設(shè)備ID.

      3系統(tǒng)下位機(jī)軟件設(shè)計(jì)

      系統(tǒng)下位機(jī)軟件采用標(biāo)準(zhǔn)C語言編寫,硬件平臺(tái)為STM32F10X系統(tǒng)嵌入式單片機(jī),軟件由2部分組成,包括網(wǎng)絡(luò)尋呼臺(tái)軟件和網(wǎng)絡(luò)電話板軟件.

      3.1網(wǎng)絡(luò)尋呼臺(tái)軟件

      網(wǎng)絡(luò)尋呼臺(tái)軟件的功能是建立與上位機(jī)和網(wǎng)絡(luò)電話板的通訊[4].網(wǎng)絡(luò)尋呼臺(tái)可單獨(dú)與上位機(jī)或網(wǎng)絡(luò)電話板使用,也可與上位機(jī)和網(wǎng)絡(luò)電話板一起接入網(wǎng)絡(luò)使用.當(dāng)與上位機(jī)音頻通訊時(shí),建立網(wǎng)絡(luò)連接后,可與上位機(jī)進(jìn)行雙向?qū)χv互話、接收上位機(jī)的組播或廣播通知,也可接收上位機(jī)發(fā)出的音頻文件進(jìn)行本地播放.當(dāng)與網(wǎng)絡(luò)電話板音頻通訊時(shí),可對(duì)網(wǎng)絡(luò)內(nèi)所有尋呼臺(tái)IP配置為本設(shè)備IP的網(wǎng)絡(luò)電話板進(jìn)行雙向互話、對(duì)其語音廣播、組播、多播操作.

      3.2網(wǎng)絡(luò)電話板軟件

      網(wǎng)絡(luò)電話板軟件主要功能為與上位機(jī)或網(wǎng)絡(luò)尋呼臺(tái)聯(lián)網(wǎng)組成網(wǎng)絡(luò)電話系統(tǒng),可主動(dòng)呼叫上位機(jī)或網(wǎng)絡(luò)尋呼臺(tái),也可接收上位機(jī)或網(wǎng)絡(luò)尋呼臺(tái)的對(duì)講呼叫、廣播或組播.網(wǎng)絡(luò)電話板軟件實(shí)現(xiàn)方法與網(wǎng)絡(luò)尋呼臺(tái)軟件設(shè)計(jì)方法類似,再此不再贅述.

      4結(jié)論

      礦用網(wǎng)絡(luò)電話系統(tǒng)上位機(jī)軟件采用C#語言編寫,基于MicrosoftVisualStudio2010平臺(tái)進(jìn)行開發(fā),采用多線程管理事件,軟件界面設(shè)計(jì)友好、操作簡潔、安裝方便.下位機(jī)軟件采用標(biāo)準(zhǔn)C語言編寫,硬件平臺(tái)為STM32F10x系列嵌入式單片機(jī),采用UCOS-II操作系統(tǒng)實(shí)時(shí)地對(duì)接入網(wǎng)內(nèi)的網(wǎng)絡(luò)電話板進(jìn)行多任務(wù)管理,提高了通話的實(shí)時(shí)性、可靠性;配合3.5寸彩色顯示屏可動(dòng)態(tài)地對(duì)網(wǎng)絡(luò)電話板和上位機(jī)的連接進(jìn)行查看管理及呼叫操作顯示.該系統(tǒng)已在多個(gè)煤礦進(jìn)行應(yīng)用,使用效果良好.

      參考文獻(xiàn):

      [1]高杰.礦山多媒體應(yīng)急通信系統(tǒng)軟件設(shè)計(jì)[D].西安科技大學(xué),2008.

      [2]王濤.企業(yè)VoIP網(wǎng)絡(luò)電話系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)[D].天津大學(xué),2008.

      [3]莊乾成.嵌入式網(wǎng)絡(luò)電話機(jī)設(shè)計(jì)[J].儀表技術(shù).2009,(7):36-38.

      [4]紀(jì)秀輝.基于Linux系統(tǒng)嵌入式網(wǎng)絡(luò)電話設(shè)計(jì)[J].電腦知識(shí)與技術(shù),2010,6(1):216-217.

      第四篇:軟件設(shè)計(jì)報(bào)告

      軟件設(shè)計(jì)報(bào)告

      姓名: 方軼琦

      學(xué)號(hào):10005808

      2013年6月18日~2013年6月28日

      第一章 軟件設(shè)計(jì)介紹.........................................................1 第三章 軟件設(shè)計(jì)的內(nèi)容.......................................................4 3.1 分?jǐn)?shù)統(tǒng)計(jì)軟件(A1)...................................................4 3.1.1設(shè)計(jì)題目及要求.....................................................4 3.1.2設(shè)計(jì)思想及程序流程框圖.............................................4 3.1.3邏輯功能程序.......................................................5 3.1.4結(jié)果及完善方向.....................................................5 3.2 打字軟件(A2).......................................................9 3.2.1設(shè)計(jì)題目及要求.....................................................9 3.2.2設(shè)計(jì)思想及程序流程框圖.............................................9 3.2.3邏輯功能程序......................................................10 3.2.4結(jié)果及完善方向....................................................10 3.3 文本編輯器(A3)....................................................13 3.3.1設(shè)計(jì)題目及要求....................................................13 3.3.2設(shè)計(jì)思想及程序流程框圖............................................14 3.3.3邏輯功能程序......................................................14 3.3.4結(jié)果及完善方向....................................................17 3.4 加密軟件(A4)......................................................19 3.4.1設(shè)計(jì)題目及要求....................................................19 3.4.2設(shè)計(jì)思想及程序流程框圖............................................19 3.4.3邏輯功能程序......................................................19 3.4.4結(jié)果及完善方向....................................................19 3.5 進(jìn)制轉(zhuǎn)換器(A5)....................................................23 3.5.1設(shè)計(jì)題目及要求....................................................23 3.5.2設(shè)計(jì)思想及程序流程框圖............................................23 3.5.3邏輯功能程序......................................................24 3.5.4結(jié)果及完善方向....................................................29 3.6 學(xué)生成績核算系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)(B1)..................錯(cuò)誤!未定義書簽。3.6.1設(shè)計(jì)題目及要求....................................................30 3.6.2設(shè)計(jì)思想及程序流程框圖............................................30 3.6.3邏輯功能程序......................................................32 3.6.4結(jié)果及完善方向....................................................32 3.7 模擬電信計(jì)費(fèi)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)(B2)..................................39 3.7.1設(shè)計(jì)題目及要求....................................................39 3.7.2設(shè)計(jì)思想及程序流程框圖............................................40 3.7.3邏輯功能程序......................................錯(cuò)誤!未定義書簽。3.7.4結(jié)果及完善方向....................................................41 第四章 心得體會(huì)............................................................49

      軟件設(shè)計(jì)報(bào)告 10005808 方軼琦

      軟件設(shè)計(jì)介紹

      一. 軟件的設(shè)計(jì)概念

      軟件設(shè)計(jì)是把許多事物和問題抽象起來,并且抽象它們不同的層次和角度。建議用數(shù)學(xué)語言來抽象事務(wù)和問題,因?yàn)閿?shù)學(xué)是最好的抽象語言,并且它的本質(zhì)就是抽象。將復(fù)雜的問題分解成可以管理的片斷會(huì)更容易。將問題或事物分解并模塊化這使得解決問題變得容易,分解的越細(xì)模塊數(shù)量也就越多,它的副作用就是使得設(shè)計(jì)者考慮更多的模塊之間耦合度的情況。

      二.軟件設(shè)計(jì)的性質(zhì)、目的:

      本課程是一門技能訓(xùn)練課,為在校學(xué)生的必修課程。通過設(shè)計(jì)培養(yǎng)學(xué)生良好的編程習(xí)慣,使學(xué)生掌握編程的基本步驟,規(guī)范學(xué)生的編寫程序的格式,鍛煉學(xué)生編寫程序的能力,為將來編寫較大程序的打好基礎(chǔ)。

      三.軟件設(shè)計(jì)總時(shí)間:二周

      四.實(shí)驗(yàn)設(shè)備:南京郵電大學(xué)微機(jī)室微機(jī)。五.軟件設(shè)計(jì)的任務(wù)

      通過集中時(shí)間上機(jī)實(shí)驗(yàn),使學(xué)生充分發(fā)揮已有的編程能力,熟悉編譯環(huán)境,選擇若干課題,進(jìn)行審題、分析、設(shè)計(jì)和調(diào)試,并根據(jù)要求寫出實(shí)驗(yàn)報(bào)告。

      六.實(shí)驗(yàn)內(nèi)容

      軟件設(shè)計(jì)課題共分A、B兩檔。A檔共5題,第一周完成;B檔共2題,第二周完成。

      軟件設(shè)計(jì)報(bào)告 10005808 方軼琦

      第二章

      軟件開發(fā)平臺(tái)簡介

      Visual Studio 2008 簡介

      Microsoft? Visual Studio? 2008 使開發(fā)人員能夠快速創(chuàng)建高質(zhì)量、用戶體驗(yàn)豐富而又緊密聯(lián)系的應(yīng)用程序,充分展示了 Microsoft 開發(fā)智能客戶端應(yīng)用程序的構(gòu)想。借助 Visual Studio 2008,采集和分析信息將變得更為簡單便捷,業(yè)務(wù)決策也會(huì)因此變得更為有效。任何規(guī)模的組織都可以使用 Visual Studio 2008 快速創(chuàng)建能夠利用 Windows Vista? 和 2007 Visual Studio system 的更安全、更易于管理并且更可靠的應(yīng)用程序。

      Visual Studio 2008 提供了高級(jí)開發(fā)工具、調(diào)試功能、數(shù)據(jù)庫功能和創(chuàng)新功能,幫助在各種平臺(tái)上快速創(chuàng)建當(dāng)前最先進(jìn)的應(yīng)用程序。

      Visual Studio 2008 包括各種增強(qiáng)功能,例如可視化設(shè)計(jì)器(使用.NET Framework 3.5 加速開發(fā))、對(duì) Web 開發(fā)工具的大量改進(jìn),以及能夠加速開發(fā)和處理所有類型數(shù)據(jù)的語言增強(qiáng)功能。Visual Studio 2008 為開發(fā)人員提供了所有相關(guān)的工具和框架支持,幫助創(chuàng)建引人注目的、令人印象深刻并支持 AJAX 的 Web 應(yīng)用程序。開發(fā)人員能夠利用這些豐富的客戶端和服務(wù)器端框架輕松構(gòu)建以客戶為中心的 Web 應(yīng)用程序,這些應(yīng)用程序可以集成任何后端數(shù)據(jù)提供程序、在任何當(dāng)前瀏覽器內(nèi)運(yùn)行并完全訪問 ASP.NET 應(yīng)用程序服務(wù)和 Microsoft平臺(tái)。

      Visual Studio 2008 具備如下優(yōu)勢:

      快速開發(fā)新突破

      從建模到編碼,再到調(diào)試,Visual Studio 2008 提供了增強(qiáng)的編程語言、設(shè)計(jì)器、編輯器以及和數(shù)據(jù)相關(guān)的新功能,可以幫助您體驗(yàn)到生產(chǎn)力的突破。

      創(chuàng)建杰出的用戶體驗(yàn)

      Visual Studio 2008為開發(fā)人員提供了新的工具,通過使用最新的平臺(tái),如Web, Windows Vista、2007 Microsoft Office System、Microsoft SQL Server 2008、Windows Mobile?以及Windows Server?2008,開發(fā)人員可以快速創(chuàng)建個(gè)性化很強(qiáng)的用戶體驗(yàn)以及互聯(lián)的應(yīng)用程序。

      跨越開發(fā)周期的協(xié)作

      Visual Studio 2008 可以讓開發(fā)人員、設(shè)計(jì)人員、測試人員、架構(gòu)師以及項(xiàng)目經(jīng)理通過共享工具以及過程整合的方式,實(shí)現(xiàn)協(xié)同工作,從而減少了解決方案所花費(fèi)的時(shí)間。

      采用統(tǒng)一整合的方式處理數(shù)據(jù)

      Visual Studio 2008 可以顯著的改進(jìn)開發(fā)人員處理數(shù)據(jù)的方法。傳統(tǒng)方式中,開發(fā)人員不得不根據(jù)數(shù)據(jù)的存儲(chǔ)位置以及用戶的連接方法,對(duì)數(shù)據(jù)進(jìn)行不同的操作。通過語言集成查詢(Language-Integrated Query, LINQ), 開發(fā)人員可以使用單獨(dú)的模型來查詢并轉(zhuǎn)換XML, Microsoft SQL Server?和對(duì)象數(shù)據(jù),而不需要學(xué)習(xí)或使用特定的編程語言,這樣就降低了復(fù)雜度并提高了生產(chǎn)力。

      體驗(yàn)全新的Web開發(fā)工具

      Visual Studio 2008為公司或開發(fā)團(tuán)隊(duì)提供了一個(gè)健壯的、端到端的平臺(tái)來構(gòu)建應(yīng)用程序并通過Web 方式提供應(yīng)用程序。通過Visual Studio 2008, 開發(fā)人員可以很容易的將最新的Windows Presentation Foundation(WPF)功能整合到現(xiàn)

      有的Windows Forms 應(yīng)用程序以及新的應(yīng)用程序中,并在Windows平臺(tái)上創(chuàng)建高保真的用戶體驗(yàn)。通過額外的ASP.NET AJAX 1.0和Microsoft

      軟件設(shè)計(jì)報(bào)告 10005808 方軼琦

      IntelliSense?以及對(duì)調(diào)試JavaScript 8.0的支持,構(gòu)建AJAX 應(yīng)用程序?qū)?huì)更加快捷。增強(qiáng)的Web 設(shè)計(jì)器帶有分離視圖編輯功能,可以讓開發(fā)人員同時(shí)看到HTML 頁面以及結(jié)果頁面,從而提升了Web 開發(fā)的體驗(yàn)。

      將數(shù)據(jù)庫功能整合到應(yīng)用程序生命周期的管理中

      Visual Studio 2008為不同的團(tuán)隊(duì)成員提供了一系列針對(duì)架構(gòu)、設(shè)計(jì)、程序開發(fā)、數(shù)據(jù)庫開發(fā)以及應(yīng)用程序測試的相關(guān)工具。Microsoft Visual Studio Team System 2008 Database Edition 目前已經(jīng)全部整合到了Microsoft Visual Studio Team System 2008 Team Suite 中。

      構(gòu)建運(yùn)行在多個(gè)版本的.NET Framework 之上的應(yīng)用程序

      通過Visual Studio 2008, 開發(fā)人員可以使用一個(gè)工具來管理并構(gòu)建針對(duì)多個(gè)版本的.NET Framework 的應(yīng)用程序。Visual Studio 2008將會(huì)自動(dòng)讓項(xiàng)目以及設(shè)置適應(yīng)開發(fā)人員所指定的.NET framework 版本。開發(fā)人員不再需要安裝多個(gè)版本的Visual Studio 來維護(hù)運(yùn)行于多個(gè)版本的.NET Framework 之上的應(yīng)用程序。

      為Microsoft Office 系列構(gòu)建可靠的、可伸縮的應(yīng)用程序

      Visual Studio Tools for Office 目前已經(jīng)完全整合到了Visual Studio 2008 專業(yè)版當(dāng)中。Visual Studio 2008可以讓開發(fā)人員自己定制Microsoft Office Word, Microsoft Office Excel ,Microsoft Office PowerPoint , Microsoft Office Outlook ,Microsoft Office Visio , Microsoft Office InfoPath , 以及Microsoft Office Project, 從而提升用戶生產(chǎn)力并且更有效的利用了Office 2007 中的新增功能。對(duì)Microsoft Office 進(jìn)行自定義,同時(shí)應(yīng)用程序支持ClickOnce 部署,從而使開發(fā)人員可以采用正確的工具以及框架來實(shí)現(xiàn)對(duì)Microsoft Office 解決方案進(jìn)行從容部署。

      為Windows Vista 構(gòu)建完美的應(yīng)用程序

      Visual Studio 2008可以讓開發(fā)人員快捷的創(chuàng)建出同Windows Vista 外觀風(fēng)格一樣炫的應(yīng)用程序,并且可以利用Windows Vista 中所提供的8000多種新API.在開發(fā)人員和設(shè)計(jì)人員之間實(shí)現(xiàn)無縫協(xié)作

      Microsoft已經(jīng)針對(duì)設(shè)計(jì)人員發(fā)布了名為Microsoft Expression的工具。在Visual Studio 2008中,來自于Microsoft Expression Web 以及Microsoft Expression Blend?中的設(shè)計(jì)元素可以在不更改后臺(tái)代碼的情況下,從Visual

      Studio 中進(jìn)行導(dǎo)入導(dǎo)出的操作。這就意味著開發(fā)人員和設(shè)計(jì)人員可以實(shí)時(shí)的進(jìn)行無縫協(xié)作,并且不用擔(dān)心用戶界面設(shè)計(jì)更改所引起的開發(fā)問題。

      軟件設(shè)計(jì)報(bào)告 10005808 方軼琦

      第三章 軟件設(shè)計(jì)的內(nèi)容

      3.1 分?jǐn)?shù)統(tǒng)計(jì)軟件(A1)

      3.1.1設(shè)計(jì)題目及要求 設(shè)計(jì)題目:分?jǐn)?shù)統(tǒng)計(jì) 要求:(1)、輸入某班級(jí)學(xué)生的姓名、分?jǐn)?shù);

      (2)、對(duì)(1)的分?jǐn)?shù)進(jìn)行降冪排列并輸出;(3)、具有輸入輸出界面。3.1.2設(shè)計(jì)思想及程序流程框圖

      這道題我是用C# 的可視化環(huán)境制作了一個(gè)分?jǐn)?shù)統(tǒng)計(jì)系統(tǒng)。制作的界面如圖3.1-1所示:

      實(shí)現(xiàn)的功能和設(shè)計(jì)方法:

      1.在“姓名”和“分?jǐn)?shù)”后面的文本框內(nèi)輸入學(xué)生信息,輸入完畢后,按“輸入”按鈕,學(xué)生信息就會(huì)顯示到左下方的listbox中。

      2.當(dāng)用戶輸入若干名學(xué)生信息后,按“排序”按鈕,右下方的listbox中就會(huì)顯示按成績降冪排序后的學(xué)生信息。排序方法是使用冒泡排序法。

      3.當(dāng)用戶輸入學(xué)生信息出錯(cuò)時(shí),用鼠標(biāo)選擇出錯(cuò)項(xiàng),按下“刪除選中的輸入項(xiàng)”,即可刪除輸錯(cuò)項(xiàng),繼續(xù)輸入學(xué)生信息。方法是用listBox.SelectedIndex找到選中的索引值,然后刪除數(shù)組中該學(xué)生信息和listbox中信息就可以了。

      4.當(dāng)用戶想重新輸入學(xué)生信息,按下“重新開始”清空數(shù)組和listbox中的信息。

      5.當(dāng)用戶要結(jié)束操作,按下“結(jié)束”,調(diào)用close()函數(shù)就可以跳出界面。主程序的流程圖如圖3.1-2所示。冒泡排序的流程圖如圖3.1-3所示。

      軟件設(shè)計(jì)報(bào)告 10005808 方軼琦

      開始N=學(xué)生數(shù)i=0ii?N開始輸入學(xué)生信息score[j-1]

      圖3.1-1 主流程圖

      圖3.1-2冒泡排序流程圖 3.1.3邏輯功能程序 具體程序如下:

      #include #include #include struct student //存放學(xué)生信息的結(jié)構(gòu)體 { char name[20];//字符型數(shù)組存放姓名

      int grade;//成績類型 } temp,std[100];int main(){ int err;char x[5];int n;int i;int m;char ch[20];

      軟件設(shè)計(jì)報(bào)告 10005808 方軼琦

      do { system(“cls”);printf(“ nn”);printf(“

      --------n”);printf(“ | 歡迎使用本系統(tǒng) | n”);printf(“

      --------n”);printf(“ n”);printf(“

      -------------請(qǐng)輸入學(xué)生數(shù)--------------nn”);do{ printf(“tt學(xué)生數(shù): ”);

      err=0;i=0;

      scanf(“%s”,x);//輸入選項(xiàng)

      getchar();

      while(x[i]!='