版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
一、計(jì)算機(jī)軟件與程序設(shè)計(jì)
二、數(shù)據(jù)庫(kù)原理與應(yīng)用
三、計(jì)算機(jī)網(wǎng)絡(luò)原理與開(kāi)發(fā)
第三章軟件技術(shù)基礎(chǔ)一、計(jì)算機(jī)軟件與程序設(shè)計(jì)第三章軟件技術(shù)基礎(chǔ)1一、計(jì)算機(jī)軟件與程序設(shè)計(jì)
1、軟件與程序員的若干問(wèn)題
2、編程語(yǔ)言的選擇3、Windows環(huán)境下的軟件開(kāi)發(fā)4、基本編程技術(shù)與技巧第三章軟件技術(shù)基礎(chǔ)一、計(jì)算機(jī)軟件與程序設(shè)計(jì)第三章軟件技術(shù)基礎(chǔ)21、軟件與程序員的若干問(wèn)題什么是軟件軟件開(kāi)發(fā)策略軟件開(kāi)發(fā)方式程序員基本素質(zhì)與任務(wù)程序員的思維方式程序員的發(fā)展之路第三章軟件技術(shù)基礎(chǔ)1、軟件與程序員的若干問(wèn)題第三章軟件技術(shù)基礎(chǔ)31、軟件與程序員的若干問(wèn)題什么是軟件第三章軟件技術(shù)基礎(chǔ)程序數(shù)據(jù)結(jié)構(gòu)文檔軟件是開(kāi)發(fā)還是制造?軟件會(huì)磨損嗎?軟件能組裝嗎?作用:管理用戶的計(jì)算機(jī)資源提供利用這些資源的工具充當(dāng)用戶和信息之間的中介1、軟件與程序員的若干問(wèn)題第三章軟件技術(shù)基礎(chǔ)程序數(shù)據(jù)結(jié)構(gòu)文4硬件故障曲線軟件故障曲線硬件故障曲線軟件故障曲線5第三章軟件技術(shù)基礎(chǔ)1、軟件與程序員的若干問(wèn)題什么是軟件軟件的應(yīng)用范圍系統(tǒng)軟件實(shí)時(shí)軟件科學(xué)計(jì)算商業(yè)、行政管理——MIS嵌入式軟件個(gè)人軟件WEB應(yīng)用人工智能第三章軟件技術(shù)基礎(chǔ)1、軟件與程序員的若干問(wèn)題軟件的應(yīng)用范圍6計(jì)算機(jī)硬件操作系統(tǒng):Windows/UNIX/Linux應(yīng)用軟件:程序設(shè)計(jì)語(yǔ)言、辦公軟件信息系統(tǒng)應(yīng)用軟件的分類(lèi)計(jì)算機(jī)硬件操作系統(tǒng):Windows/UNIX/Linux應(yīng)用7第三章軟件技術(shù)基礎(chǔ)1、軟件與程序員的若干問(wèn)題軟件開(kāi)發(fā)策略自主開(kāi)發(fā)委托開(kāi)發(fā)合作開(kāi)發(fā)商業(yè)軟件軟件開(kāi)發(fā)方式第三章軟件技術(shù)基礎(chǔ)1、軟件與程序員的若干問(wèn)題自主開(kāi)發(fā)軟件開(kāi)8自主開(kāi)發(fā)適合于有較強(qiáng)的管理信息系統(tǒng)分析與設(shè)計(jì)隊(duì)伍和程序設(shè)計(jì)人員、系統(tǒng)維護(hù)使用隊(duì)伍的組織和單位,如高等院校、研究所、計(jì)算機(jī)公司、等單位。獨(dú)立開(kāi)發(fā)的優(yōu)點(diǎn)是開(kāi)發(fā)費(fèi)用少,實(shí)現(xiàn)開(kāi)發(fā)后的系統(tǒng)能夠適應(yīng)本單位的需求且滿意度較高,系統(tǒng)維護(hù)方便。缺點(diǎn)是由于不是專(zhuān)業(yè)開(kāi)發(fā)隊(duì)伍,容易受計(jì)算機(jī)業(yè)務(wù)工作的限制,系統(tǒng)優(yōu)化不夠,開(kāi)發(fā)水平較低。自主開(kāi)發(fā)9委托開(kāi)發(fā)適合于使用單位無(wú)管理信息系統(tǒng)分析、設(shè)計(jì)及軟件開(kāi)發(fā)人員或開(kāi)發(fā)隊(duì)伍力量較弱、但資金較為充足的組織和單位。優(yōu)點(diǎn)是省時(shí)、省事,系統(tǒng)的技術(shù)水平較高。缺點(diǎn)是費(fèi)用高、系統(tǒng)維護(hù)需要開(kāi)發(fā)單位的長(zhǎng)期支持。此種方式需要使用單位的業(yè)務(wù)骨干參與系統(tǒng)的論證工作,開(kāi)發(fā)過(guò)程中,需要開(kāi)發(fā)單位和使用單位雙方及時(shí)溝通,進(jìn)行協(xié)調(diào)和檢查。委托開(kāi)發(fā)10合作開(kāi)發(fā)適合于使用單位有一定的管理信息系統(tǒng)分析、設(shè)計(jì)及軟件開(kāi)發(fā)人員,但開(kāi)發(fā)隊(duì)伍力量較弱,希望通過(guò)管理信息系統(tǒng)的開(kāi)發(fā)建立完善和提高自己的技術(shù)隊(duì)伍,便于系統(tǒng)維護(hù)工作的單位。雙方共同開(kāi)發(fā)成果,實(shí)際上是一種半委托性質(zhì)的開(kāi)發(fā)工作。優(yōu)點(diǎn)是相對(duì)于委托開(kāi)發(fā)方式比較節(jié)約資金,可以培養(yǎng)、增強(qiáng)使用單位的技術(shù)力量,便于系統(tǒng)維護(hù)工作,系統(tǒng)的技術(shù)水平較高。缺點(diǎn)是雙方在合作中溝通易出現(xiàn)問(wèn)題,需要雙方及時(shí)達(dá)成共識(shí),進(jìn)行協(xié)調(diào)和檢查。合作開(kāi)發(fā)11購(gòu)買(mǎi)商業(yè)軟件軟件的開(kāi)發(fā)正在向?qū)I(yè)化方向發(fā)展,一些專(zhuān)門(mén)從事管理信息系統(tǒng)開(kāi)發(fā)的公司已經(jīng)開(kāi)發(fā)出一批使用方便、功能強(qiáng)大的專(zhuān)項(xiàng)業(yè)務(wù)管理信息系統(tǒng)軟件。為了避免重復(fù)勞動(dòng),提高系統(tǒng)開(kāi)發(fā)的經(jīng)濟(jì)效益,也可以購(gòu)買(mǎi)現(xiàn)成的適合于本單位業(yè)務(wù)的管理信息系統(tǒng)軟件,如企業(yè)管理信息系統(tǒng)、教育管理信息系統(tǒng)、財(cái)務(wù)管理系統(tǒng)、進(jìn)銷(xiāo)存管理系統(tǒng)等等。優(yōu)點(diǎn)是節(jié)省時(shí)間的費(fèi)用、系統(tǒng)技術(shù)水平高。缺點(diǎn)是通用軟件專(zhuān)用性較差,跟本單位的實(shí)際工作需要可能有一定的差距,有時(shí)可能需要做二次開(kāi)發(fā)工作。購(gòu)買(mǎi)商業(yè)軟件12方式特點(diǎn)比較獨(dú)立開(kāi)發(fā)委托開(kāi)發(fā)合作開(kāi)發(fā)購(gòu)買(mǎi)現(xiàn)成軟件分析和設(shè)計(jì)能力的要求較高一般逐漸培養(yǎng)較低編程能力的要求較高不需要需要較低系統(tǒng)維護(hù)的難易程度容易較困難較容易較困難開(kāi)發(fā)費(fèi)用少多較少較少說(shuō)明開(kāi)發(fā)時(shí)間較長(zhǎng),系統(tǒng)適合本單位,培養(yǎng)了自己的開(kāi)發(fā)人員。省事,開(kāi)發(fā)費(fèi)用高。開(kāi)發(fā)出的系統(tǒng)便于維護(hù)。最省事,但不一定完全適合本單位。幾種開(kāi)發(fā)方式有各自的長(zhǎng)處和短處,需要根據(jù)使用單位的實(shí)際情況進(jìn)行選擇,也可綜合運(yùn)用各種開(kāi)發(fā)方式。方式獨(dú)立開(kāi)發(fā)委托開(kāi)發(fā)合作開(kāi)發(fā)購(gòu)買(mǎi)現(xiàn)成軟件分析和設(shè)13第三章軟件技術(shù)基礎(chǔ)1、軟件與程序員的若干問(wèn)題軟件開(kāi)發(fā)方式?第三章軟件技術(shù)基礎(chǔ)1、軟件與程序員的若干問(wèn)題14中國(guó)特色:軟件英雄與軟件作坊WPS2.13KV100-300中文之星希望漢字系統(tǒng)求伯君吳曉軍王江民王志東鮑岳橋核心技術(shù)——在一個(gè)人手中?中國(guó)特色:軟件英雄與軟件作坊WPS求伯君核心技術(shù)——在一個(gè)人15第三章軟件技術(shù)基礎(chǔ)1、軟件與程序員的若干問(wèn)題軟件開(kāi)發(fā)方式——軟件工程項(xiàng)目經(jīng)理系統(tǒng)分析員程序員數(shù)據(jù)庫(kù)管理員文檔管理員第三章軟件技術(shù)基礎(chǔ)1、軟件與程序員的若干問(wèn)題項(xiàng)目經(jīng)理16第三章軟件技術(shù)基礎(chǔ)1、軟件與程序員的若干問(wèn)題程序員主要素質(zhì)與工作任務(wù)計(jì)劃規(guī)范質(zhì)量控制過(guò)程改進(jìn)第三章軟件技術(shù)基礎(chǔ)1、軟件與程序員的若干問(wèn)題計(jì)劃17任務(wù)頻度時(shí)間聽(tīng)課周一、周三每周200閱讀教材
作業(yè)
編寫(xiě)程序
準(zhǔn)備考試
計(jì)劃:你能保證按此計(jì)劃完成嗎?哪些因素可能影響計(jì)劃?如何避免?任務(wù)頻度時(shí)間聽(tīng)課周一、周三每周200閱讀教材
作業(yè)
編寫(xiě)18定義質(zhì)量目標(biāo)測(cè)量質(zhì)量分析過(guò)程調(diào)整過(guò)程應(yīng)用調(diào)整后的過(guò)程測(cè)量質(zhì)量與目標(biāo)比較定義質(zhì)量目標(biāo)測(cè)量質(zhì)量分析過(guò)程調(diào)整過(guò)程應(yīng)用調(diào)整后的過(guò)程測(cè)量質(zhì)量19第三章軟件技術(shù)基礎(chǔ)1、軟件與程序員的若干問(wèn)題程序員的發(fā)展第三章軟件技術(shù)基礎(chǔ)1、軟件與程序員的若干問(wèn)題20雷軍:金山公司CEO紅色正版風(fēng)暴策劃者BlakeStone:Borland前CTOJbuilderArchitect雷軍:金山公司CEOBlakeStone:Borland前21第三章軟件技術(shù)基礎(chǔ)2、編程語(yǔ)言的選擇編程語(yǔ)言的分類(lèi)低級(jí)語(yǔ)言高級(jí)語(yǔ)言機(jī)器語(yǔ)言匯編語(yǔ)言BasicC/C++PascalJava…第三章軟件技術(shù)基礎(chǔ)2、編程語(yǔ)言的選擇低級(jí)語(yǔ)言機(jī)器語(yǔ)言Bas22第一代語(yǔ)言 1940s/機(jī)器語(yǔ)言/學(xué)習(xí)和使用都非常困難/指令很長(zhǎng)/依賴于機(jī)器第二代語(yǔ)言 1950s/匯編語(yǔ)言/代碼比機(jī)器語(yǔ)言短/依賴于機(jī)器第三代語(yǔ)言 1950s/類(lèi)似英語(yǔ)語(yǔ)言/面向問(wèn)題的/學(xué)習(xí)和使用比較簡(jiǎn)單第四代語(yǔ)言 1980s/與英語(yǔ)非常接近/有許多預(yù)編程的函數(shù)/易于學(xué)習(xí)和使用第一代語(yǔ)言231940195019601970198019902002機(jī)器語(yǔ)言匯編語(yǔ)言FORTRANCOBOLBASICCLotus1-2-3dBASESQLVisualBasic19401950196024第三章軟件技術(shù)基礎(chǔ)2、編程語(yǔ)言的選擇編程語(yǔ)言的共性順序結(jié)構(gòu)分支結(jié)構(gòu)循環(huán)結(jié)構(gòu)第三章軟件技術(shù)基礎(chǔ)2、編程語(yǔ)言的選擇順序結(jié)構(gòu)25第三章軟件技術(shù)基礎(chǔ)2、編程語(yǔ)言的選擇語(yǔ)言學(xué)習(xí)的基本過(guò)程語(yǔ)言工具的熟悉與使用利用平臺(tái)提供的接口進(jìn)行開(kāi)發(fā)對(duì)平臺(tái)本身的了解深入了解平臺(tái)能對(duì)軟件整體架構(gòu)進(jìn)行剖析用計(jì)算機(jī)的方式思考參考書(shū)?第三章軟件技術(shù)基礎(chǔ)2、編程語(yǔ)言的選擇26第三章軟件技術(shù)基礎(chǔ)2、編程語(yǔ)言的選擇主要語(yǔ)言與開(kāi)發(fā)工具的比較語(yǔ)言與開(kāi)發(fā)工具的關(guān)系?IDE,F(xiàn)ramework以及RADVisualBasic(VisualBasic)–ODBC,ADO->Tool,數(shù)據(jù)庫(kù)VisualC++(C/C++-MFC)–ODBC,ADO->系統(tǒng),GameC++Builder(C/C++-VCL)–BDE,ADO,DBExpress->Tool,系統(tǒng),數(shù)據(jù)庫(kù)Delphi(OP-VCL)–BDE,ADO,DBExpress->系統(tǒng),數(shù)據(jù)庫(kù)JBuilder(Java–JDK類(lèi)庫(kù))–JDBC->開(kāi)發(fā)跨平臺(tái)應(yīng)用PowerBuilder(PowerScript-PFC)->數(shù)據(jù)庫(kù)應(yīng)用為主第三章軟件技術(shù)基礎(chǔ)2、編程語(yǔ)言的選擇27第三章軟件技術(shù)基礎(chǔ)2、編程語(yǔ)言的選擇聰明的程序員——語(yǔ)言的選擇源自目的自定義自己的開(kāi)發(fā)平臺(tái):IDE環(huán)境/工具組合學(xué)習(xí)和適應(yīng)團(tuán)隊(duì)開(kāi)發(fā)方式、開(kāi)發(fā)語(yǔ)言與工具不斷學(xué)習(xí)與提高第三章軟件技術(shù)基礎(chǔ)2、編程語(yǔ)言的選擇28第三章軟件技術(shù)基礎(chǔ)3、Windows環(huán)境下的軟件開(kāi)發(fā)消息機(jī)制與事件驅(qū)動(dòng)模型第三章軟件技術(shù)基礎(chǔ)3、Windows環(huán)境下的軟件開(kāi)發(fā)29計(jì)算機(jī)軟件應(yīng)用原理與網(wǎng)絡(luò)開(kāi)發(fā)原理課件30計(jì)算機(jī)軟件應(yīng)用原理與網(wǎng)絡(luò)開(kāi)發(fā)原理課件31計(jì)算機(jī)軟件應(yīng)用原理與網(wǎng)絡(luò)開(kāi)發(fā)原理課件32第三章軟件技術(shù)基礎(chǔ)3、Windows環(huán)境下的軟件開(kāi)發(fā)事件委托模型——RADFrameworkFrameworkMessageLoopDispatchUserCodeClassEventHandle1EventHandle2MessageMap…MessageQueue第三章軟件技術(shù)基礎(chǔ)3、Windows環(huán)境下的軟件開(kāi)發(fā)Fra33第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧開(kāi)放性思維編碼規(guī)范代碼重用調(diào)試經(jīng)驗(yàn)積累第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧34第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧-規(guī)范的代碼命名規(guī)范避免關(guān)鍵字前綴,大小寫(xiě)與匈牙利命名法,g_,m_,s_,公司或功能標(biāo)記有意義,簡(jiǎn)單的名詞作變量名(或形+名),動(dòng)詞作函數(shù)名Min-Length&&Max-Information原則可發(fā)音的名字通用性,英文避免歧義與誤識(shí)別的字母,如pertList,I與l與1直觀的布爾類(lèi)型,如isEmpty常量用大寫(xiě)文件名與小組成員協(xié)商制作共同的命名規(guī)范第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧-規(guī)范的代碼35第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧-規(guī)范的代碼數(shù)據(jù)類(lèi)型避免浮點(diǎn)類(lèi)型——效率與精度,int類(lèi)型是最有效率的了解語(yǔ)言的類(lèi)型兼容性強(qiáng)類(lèi)型語(yǔ)言C++/C#/Java弱類(lèi)型語(yǔ)言VB/VBScript/JavaScript/PHP/Perl有符號(hào)類(lèi)型與無(wú)符號(hào)類(lèi)型——255還是-1?chara=255;if(a==255)?顯式類(lèi)型轉(zhuǎn)換類(lèi)型轉(zhuǎn)換會(huì)不會(huì)丟失數(shù)據(jù)?第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧-規(guī)范的代碼36C/C++——判斷一個(gè)數(shù)是否為零?布爾型(C++)整型數(shù)浮點(diǎn)數(shù)指針if(a==1)if(a==TRUE)if(a==0)if(a==FALSE)if(a)if(!a)if(a)if(!a)if(a==1)if(!a==0)if(a==1)if(a==TRUE)if(a==0)if(a==FALSE)if((a>=-)&&(a<=))if(a)if(a==1)if(a!=0)if(!a)if(a!=NULL)if(a==NULL)C/C++——判斷一個(gè)數(shù)是否為零?if(a==1)if(a)37第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧-規(guī)范的代碼了解語(yǔ)言操作符的優(yōu)先級(jí)如C/C++:()[]->.!~++--sizeof*/%+-<<>><<=>>===!=&^|&&||?:=+=-=*=/=%=&=^=|=<<=>>=盡可能的使用括號(hào)第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧-規(guī)范的代碼38第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧-規(guī)范的代碼函數(shù)避免參數(shù)過(guò)多唯一出口原則?用函數(shù)取代常用的代碼段進(jìn)入時(shí)初始化,退出時(shí)清理第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧-規(guī)范的代碼39第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧-規(guī)范的代碼內(nèi)存與指針malloc與free,new與delete成對(duì)使用(并非數(shù)量上的成對(duì),而是邏輯上的)誰(shuí)分配,誰(shuí)釋放,否則必則在文檔嚴(yán)格說(shuō)明指針指向的內(nèi)存被釋放后,應(yīng)復(fù)位其值為NULLC/C++:為字符串結(jié)束符占用的空間分配內(nèi)存對(duì)地址操作一定要小心,因?yàn)楹蜋C(jī)器和硬件相關(guān),可能造成移植性的問(wèn)題和難以檢查的錯(cuò)誤。如:高低位字節(jié),對(duì)齊方式等第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧-規(guī)范的代碼40第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧-規(guī)范的代碼效率循環(huán)語(yǔ)句——多重循環(huán)的分配循環(huán)語(yǔ)句——與判斷語(yǔ)句的配合for(i=0;i<iTotal;i++){if(condition)DoSomeThing();ElseDoOtherThing();}goto的合理使用循環(huán)體內(nèi)不要定義變量常用或大尺寸的數(shù)據(jù)設(shè)為全局變量(有爭(zhēng)議)或常量傳址與引用延遲執(zhí)行(如磁盤(pán)寫(xiě)緩沖區(qū))80-20原則if(condition){for(i=0;i<iTotal;i++)DoSomeThing();}Else{for(i=0;i<iTotal;i++)DoOtherThing();}第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧-規(guī)范的代碼if(41第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧-規(guī)范的代碼代碼風(fēng)格縮進(jìn)成對(duì)原則——先封兩頭,再寫(xiě)中間空格與空行intiCnt;unsignedintiTotal;floatfProgress;代碼長(zhǎng)度與模塊化100行還是goto注釋?zhuān)瑧?zhàn)略性與戰(zhàn)術(shù)性不要在一行放多條語(yǔ)句,過(guò)長(zhǎng)語(yǔ)句要分行+縮進(jìn)過(guò)于復(fù)雜的語(yǔ)句分解為幾條第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧-規(guī)范的代碼42如何寫(xiě)注釋每個(gè)文件頭部寫(xiě)明本文件的原始文件名,主要功能及包含內(nèi)容及使用方法,作者,更新日期及更新歷史每個(gè)函數(shù)前面寫(xiě)明該函數(shù)的主要功能,調(diào)用方法,參數(shù)及返回值,注意事項(xiàng)(如傳值還是傳址,由誰(shuí)分配和釋放內(nèi)存等)重要的語(yǔ)句后加上有助于理解的說(shuō)明,而非代碼的重復(fù)沒(méi)必要時(shí)注釋不要獨(dú)占一行代碼與注釋緊密聯(lián)系,同步更新不要與代碼的某些無(wú)關(guān)特征有關(guān)聯(lián),防止變動(dòng)中產(chǎn)生不一致如:if(iAttempts>3)//不允許超過(guò)3次的嘗試建議改為if(iAttempts>3)//限制嘗試次數(shù)在調(diào)試中利用注釋功能如何寫(xiě)注釋43第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧-規(guī)范的代碼代碼規(guī)范制定與審查制定公司編碼規(guī)范規(guī)范學(xué)習(xí)與培訓(xùn)代碼規(guī)范階段審查第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧-規(guī)范的代碼44正確看待編程技巧對(duì)于大型的難以維護(hù)的系統(tǒng),在優(yōu)化算法和升級(jí)硬件的選擇上,后者是更為穩(wěn)妥的方法不要以程序的短小或運(yùn)行的效率來(lái)顯示自己的水平,可讀性是第一位的不要依賴編譯器的某些特點(diǎn)以及未明確未定義的功能同樣,不要依賴操作系統(tǒng)中某些未公開(kāi)的功能使用常用和公認(rèn)的算法,除非與小組成員進(jìn)行交流用戶需要的是體貼的功能,不是花哨的界面不要強(qiáng)迫用戶——為什么3721的程序員被認(rèn)為是“敗類(lèi)”相信編譯器的優(yōu)化功能:a>>=2;與a/=4;的可讀性?正確看待編程技巧45作業(yè)小組討論選擇一個(gè)要開(kāi)發(fā)的系統(tǒng)方向設(shè)計(jì)調(diào)查方案,了解該系統(tǒng)需求結(jié)合小組成員情況進(jìn)行分工和選擇開(kāi)發(fā)平臺(tái)制定共同遵守的編碼規(guī)范參考上課筆記華為編碼規(guī)范《高質(zhì)量程序設(shè)計(jì)指南—C/C++語(yǔ)言》林銳電子工業(yè)出版社作業(yè)小組討論選擇一個(gè)要開(kāi)發(fā)的系統(tǒng)方向46一、計(jì)算機(jī)軟件與程序設(shè)計(jì)
二、數(shù)據(jù)庫(kù)原理與應(yīng)用
三、計(jì)算機(jī)網(wǎng)絡(luò)原理與開(kāi)發(fā)
第三章軟件技術(shù)基礎(chǔ)一、計(jì)算機(jī)軟件與程序設(shè)計(jì)第三章軟件技術(shù)基礎(chǔ)47一、計(jì)算機(jī)軟件與程序設(shè)計(jì)
1、軟件與程序員的若干問(wèn)題
2、編程語(yǔ)言的選擇3、Windows環(huán)境下的軟件開(kāi)發(fā)4、基本編程技術(shù)與技巧第三章軟件技術(shù)基礎(chǔ)一、計(jì)算機(jī)軟件與程序設(shè)計(jì)第三章軟件技術(shù)基礎(chǔ)481、軟件與程序員的若干問(wèn)題什么是軟件軟件開(kāi)發(fā)策略軟件開(kāi)發(fā)方式程序員基本素質(zhì)與任務(wù)程序員的思維方式程序員的發(fā)展之路第三章軟件技術(shù)基礎(chǔ)1、軟件與程序員的若干問(wèn)題第三章軟件技術(shù)基礎(chǔ)491、軟件與程序員的若干問(wèn)題什么是軟件第三章軟件技術(shù)基礎(chǔ)程序數(shù)據(jù)結(jié)構(gòu)文檔軟件是開(kāi)發(fā)還是制造?軟件會(huì)磨損嗎?軟件能組裝嗎?作用:管理用戶的計(jì)算機(jī)資源提供利用這些資源的工具充當(dāng)用戶和信息之間的中介1、軟件與程序員的若干問(wèn)題第三章軟件技術(shù)基礎(chǔ)程序數(shù)據(jù)結(jié)構(gòu)文50硬件故障曲線軟件故障曲線硬件故障曲線軟件故障曲線51第三章軟件技術(shù)基礎(chǔ)1、軟件與程序員的若干問(wèn)題什么是軟件軟件的應(yīng)用范圍系統(tǒng)軟件實(shí)時(shí)軟件科學(xué)計(jì)算商業(yè)、行政管理——MIS嵌入式軟件個(gè)人軟件WEB應(yīng)用人工智能第三章軟件技術(shù)基礎(chǔ)1、軟件與程序員的若干問(wèn)題軟件的應(yīng)用范圍52計(jì)算機(jī)硬件操作系統(tǒng):Windows/UNIX/Linux應(yīng)用軟件:程序設(shè)計(jì)語(yǔ)言、辦公軟件信息系統(tǒng)應(yīng)用軟件的分類(lèi)計(jì)算機(jī)硬件操作系統(tǒng):Windows/UNIX/Linux應(yīng)用53第三章軟件技術(shù)基礎(chǔ)1、軟件與程序員的若干問(wèn)題軟件開(kāi)發(fā)策略自主開(kāi)發(fā)委托開(kāi)發(fā)合作開(kāi)發(fā)商業(yè)軟件軟件開(kāi)發(fā)方式第三章軟件技術(shù)基礎(chǔ)1、軟件與程序員的若干問(wèn)題自主開(kāi)發(fā)軟件開(kāi)54自主開(kāi)發(fā)適合于有較強(qiáng)的管理信息系統(tǒng)分析與設(shè)計(jì)隊(duì)伍和程序設(shè)計(jì)人員、系統(tǒng)維護(hù)使用隊(duì)伍的組織和單位,如高等院校、研究所、計(jì)算機(jī)公司、等單位。獨(dú)立開(kāi)發(fā)的優(yōu)點(diǎn)是開(kāi)發(fā)費(fèi)用少,實(shí)現(xiàn)開(kāi)發(fā)后的系統(tǒng)能夠適應(yīng)本單位的需求且滿意度較高,系統(tǒng)維護(hù)方便。缺點(diǎn)是由于不是專(zhuān)業(yè)開(kāi)發(fā)隊(duì)伍,容易受計(jì)算機(jī)業(yè)務(wù)工作的限制,系統(tǒng)優(yōu)化不夠,開(kāi)發(fā)水平較低。自主開(kāi)發(fā)55委托開(kāi)發(fā)適合于使用單位無(wú)管理信息系統(tǒng)分析、設(shè)計(jì)及軟件開(kāi)發(fā)人員或開(kāi)發(fā)隊(duì)伍力量較弱、但資金較為充足的組織和單位。優(yōu)點(diǎn)是省時(shí)、省事,系統(tǒng)的技術(shù)水平較高。缺點(diǎn)是費(fèi)用高、系統(tǒng)維護(hù)需要開(kāi)發(fā)單位的長(zhǎng)期支持。此種方式需要使用單位的業(yè)務(wù)骨干參與系統(tǒng)的論證工作,開(kāi)發(fā)過(guò)程中,需要開(kāi)發(fā)單位和使用單位雙方及時(shí)溝通,進(jìn)行協(xié)調(diào)和檢查。委托開(kāi)發(fā)56合作開(kāi)發(fā)適合于使用單位有一定的管理信息系統(tǒng)分析、設(shè)計(jì)及軟件開(kāi)發(fā)人員,但開(kāi)發(fā)隊(duì)伍力量較弱,希望通過(guò)管理信息系統(tǒng)的開(kāi)發(fā)建立完善和提高自己的技術(shù)隊(duì)伍,便于系統(tǒng)維護(hù)工作的單位。雙方共同開(kāi)發(fā)成果,實(shí)際上是一種半委托性質(zhì)的開(kāi)發(fā)工作。優(yōu)點(diǎn)是相對(duì)于委托開(kāi)發(fā)方式比較節(jié)約資金,可以培養(yǎng)、增強(qiáng)使用單位的技術(shù)力量,便于系統(tǒng)維護(hù)工作,系統(tǒng)的技術(shù)水平較高。缺點(diǎn)是雙方在合作中溝通易出現(xiàn)問(wèn)題,需要雙方及時(shí)達(dá)成共識(shí),進(jìn)行協(xié)調(diào)和檢查。合作開(kāi)發(fā)57購(gòu)買(mǎi)商業(yè)軟件軟件的開(kāi)發(fā)正在向?qū)I(yè)化方向發(fā)展,一些專(zhuān)門(mén)從事管理信息系統(tǒng)開(kāi)發(fā)的公司已經(jīng)開(kāi)發(fā)出一批使用方便、功能強(qiáng)大的專(zhuān)項(xiàng)業(yè)務(wù)管理信息系統(tǒng)軟件。為了避免重復(fù)勞動(dòng),提高系統(tǒng)開(kāi)發(fā)的經(jīng)濟(jì)效益,也可以購(gòu)買(mǎi)現(xiàn)成的適合于本單位業(yè)務(wù)的管理信息系統(tǒng)軟件,如企業(yè)管理信息系統(tǒng)、教育管理信息系統(tǒng)、財(cái)務(wù)管理系統(tǒng)、進(jìn)銷(xiāo)存管理系統(tǒng)等等。優(yōu)點(diǎn)是節(jié)省時(shí)間的費(fèi)用、系統(tǒng)技術(shù)水平高。缺點(diǎn)是通用軟件專(zhuān)用性較差,跟本單位的實(shí)際工作需要可能有一定的差距,有時(shí)可能需要做二次開(kāi)發(fā)工作。購(gòu)買(mǎi)商業(yè)軟件58方式特點(diǎn)比較獨(dú)立開(kāi)發(fā)委托開(kāi)發(fā)合作開(kāi)發(fā)購(gòu)買(mǎi)現(xiàn)成軟件分析和設(shè)計(jì)能力的要求較高一般逐漸培養(yǎng)較低編程能力的要求較高不需要需要較低系統(tǒng)維護(hù)的難易程度容易較困難較容易較困難開(kāi)發(fā)費(fèi)用少多較少較少說(shuō)明開(kāi)發(fā)時(shí)間較長(zhǎng),系統(tǒng)適合本單位,培養(yǎng)了自己的開(kāi)發(fā)人員。省事,開(kāi)發(fā)費(fèi)用高。開(kāi)發(fā)出的系統(tǒng)便于維護(hù)。最省事,但不一定完全適合本單位。幾種開(kāi)發(fā)方式有各自的長(zhǎng)處和短處,需要根據(jù)使用單位的實(shí)際情況進(jìn)行選擇,也可綜合運(yùn)用各種開(kāi)發(fā)方式。方式獨(dú)立開(kāi)發(fā)委托開(kāi)發(fā)合作開(kāi)發(fā)購(gòu)買(mǎi)現(xiàn)成軟件分析和設(shè)59第三章軟件技術(shù)基礎(chǔ)1、軟件與程序員的若干問(wèn)題軟件開(kāi)發(fā)方式?第三章軟件技術(shù)基礎(chǔ)1、軟件與程序員的若干問(wèn)題60中國(guó)特色:軟件英雄與軟件作坊WPS2.13KV100-300中文之星希望漢字系統(tǒng)求伯君吳曉軍王江民王志東鮑岳橋核心技術(shù)——在一個(gè)人手中?中國(guó)特色:軟件英雄與軟件作坊WPS求伯君核心技術(shù)——在一個(gè)人61第三章軟件技術(shù)基礎(chǔ)1、軟件與程序員的若干問(wèn)題軟件開(kāi)發(fā)方式——軟件工程項(xiàng)目經(jīng)理系統(tǒng)分析員程序員數(shù)據(jù)庫(kù)管理員文檔管理員第三章軟件技術(shù)基礎(chǔ)1、軟件與程序員的若干問(wèn)題項(xiàng)目經(jīng)理62第三章軟件技術(shù)基礎(chǔ)1、軟件與程序員的若干問(wèn)題程序員主要素質(zhì)與工作任務(wù)計(jì)劃規(guī)范質(zhì)量控制過(guò)程改進(jìn)第三章軟件技術(shù)基礎(chǔ)1、軟件與程序員的若干問(wèn)題計(jì)劃63任務(wù)頻度時(shí)間聽(tīng)課周一、周三每周200閱讀教材
作業(yè)
編寫(xiě)程序
準(zhǔn)備考試
計(jì)劃:你能保證按此計(jì)劃完成嗎?哪些因素可能影響計(jì)劃?如何避免?任務(wù)頻度時(shí)間聽(tīng)課周一、周三每周200閱讀教材
作業(yè)
編寫(xiě)64定義質(zhì)量目標(biāo)測(cè)量質(zhì)量分析過(guò)程調(diào)整過(guò)程應(yīng)用調(diào)整后的過(guò)程測(cè)量質(zhì)量與目標(biāo)比較定義質(zhì)量目標(biāo)測(cè)量質(zhì)量分析過(guò)程調(diào)整過(guò)程應(yīng)用調(diào)整后的過(guò)程測(cè)量質(zhì)量65第三章軟件技術(shù)基礎(chǔ)1、軟件與程序員的若干問(wèn)題程序員的發(fā)展第三章軟件技術(shù)基礎(chǔ)1、軟件與程序員的若干問(wèn)題66雷軍:金山公司CEO紅色正版風(fēng)暴策劃者BlakeStone:Borland前CTOJbuilderArchitect雷軍:金山公司CEOBlakeStone:Borland前67第三章軟件技術(shù)基礎(chǔ)2、編程語(yǔ)言的選擇編程語(yǔ)言的分類(lèi)低級(jí)語(yǔ)言高級(jí)語(yǔ)言機(jī)器語(yǔ)言匯編語(yǔ)言BasicC/C++PascalJava…第三章軟件技術(shù)基礎(chǔ)2、編程語(yǔ)言的選擇低級(jí)語(yǔ)言機(jī)器語(yǔ)言Bas68第一代語(yǔ)言 1940s/機(jī)器語(yǔ)言/學(xué)習(xí)和使用都非常困難/指令很長(zhǎng)/依賴于機(jī)器第二代語(yǔ)言 1950s/匯編語(yǔ)言/代碼比機(jī)器語(yǔ)言短/依賴于機(jī)器第三代語(yǔ)言 1950s/類(lèi)似英語(yǔ)語(yǔ)言/面向問(wèn)題的/學(xué)習(xí)和使用比較簡(jiǎn)單第四代語(yǔ)言 1980s/與英語(yǔ)非常接近/有許多預(yù)編程的函數(shù)/易于學(xué)習(xí)和使用第一代語(yǔ)言691940195019601970198019902002機(jī)器語(yǔ)言匯編語(yǔ)言FORTRANCOBOLBASICCLotus1-2-3dBASESQLVisualBasic19401950196070第三章軟件技術(shù)基礎(chǔ)2、編程語(yǔ)言的選擇編程語(yǔ)言的共性順序結(jié)構(gòu)分支結(jié)構(gòu)循環(huán)結(jié)構(gòu)第三章軟件技術(shù)基礎(chǔ)2、編程語(yǔ)言的選擇順序結(jié)構(gòu)71第三章軟件技術(shù)基礎(chǔ)2、編程語(yǔ)言的選擇語(yǔ)言學(xué)習(xí)的基本過(guò)程語(yǔ)言工具的熟悉與使用利用平臺(tái)提供的接口進(jìn)行開(kāi)發(fā)對(duì)平臺(tái)本身的了解深入了解平臺(tái)能對(duì)軟件整體架構(gòu)進(jìn)行剖析用計(jì)算機(jī)的方式思考參考書(shū)?第三章軟件技術(shù)基礎(chǔ)2、編程語(yǔ)言的選擇72第三章軟件技術(shù)基礎(chǔ)2、編程語(yǔ)言的選擇主要語(yǔ)言與開(kāi)發(fā)工具的比較語(yǔ)言與開(kāi)發(fā)工具的關(guān)系?IDE,F(xiàn)ramework以及RADVisualBasic(VisualBasic)–ODBC,ADO->Tool,數(shù)據(jù)庫(kù)VisualC++(C/C++-MFC)–ODBC,ADO->系統(tǒng),GameC++Builder(C/C++-VCL)–BDE,ADO,DBExpress->Tool,系統(tǒng),數(shù)據(jù)庫(kù)Delphi(OP-VCL)–BDE,ADO,DBExpress->系統(tǒng),數(shù)據(jù)庫(kù)JBuilder(Java–JDK類(lèi)庫(kù))–JDBC->開(kāi)發(fā)跨平臺(tái)應(yīng)用PowerBuilder(PowerScript-PFC)->數(shù)據(jù)庫(kù)應(yīng)用為主第三章軟件技術(shù)基礎(chǔ)2、編程語(yǔ)言的選擇73第三章軟件技術(shù)基礎(chǔ)2、編程語(yǔ)言的選擇聰明的程序員——語(yǔ)言的選擇源自目的自定義自己的開(kāi)發(fā)平臺(tái):IDE環(huán)境/工具組合學(xué)習(xí)和適應(yīng)團(tuán)隊(duì)開(kāi)發(fā)方式、開(kāi)發(fā)語(yǔ)言與工具不斷學(xué)習(xí)與提高第三章軟件技術(shù)基礎(chǔ)2、編程語(yǔ)言的選擇74第三章軟件技術(shù)基礎(chǔ)3、Windows環(huán)境下的軟件開(kāi)發(fā)消息機(jī)制與事件驅(qū)動(dòng)模型第三章軟件技術(shù)基礎(chǔ)3、Windows環(huán)境下的軟件開(kāi)發(fā)75計(jì)算機(jī)軟件應(yīng)用原理與網(wǎng)絡(luò)開(kāi)發(fā)原理課件76計(jì)算機(jī)軟件應(yīng)用原理與網(wǎng)絡(luò)開(kāi)發(fā)原理課件77計(jì)算機(jī)軟件應(yīng)用原理與網(wǎng)絡(luò)開(kāi)發(fā)原理課件78第三章軟件技術(shù)基礎(chǔ)3、Windows環(huán)境下的軟件開(kāi)發(fā)事件委托模型——RADFrameworkFrameworkMessageLoopDispatchUserCodeClassEventHandle1EventHandle2MessageMap…MessageQueue第三章軟件技術(shù)基礎(chǔ)3、Windows環(huán)境下的軟件開(kāi)發(fā)Fra79第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧開(kāi)放性思維編碼規(guī)范代碼重用調(diào)試經(jīng)驗(yàn)積累第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧80第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧-規(guī)范的代碼命名規(guī)范避免關(guān)鍵字前綴,大小寫(xiě)與匈牙利命名法,g_,m_,s_,公司或功能標(biāo)記有意義,簡(jiǎn)單的名詞作變量名(或形+名),動(dòng)詞作函數(shù)名Min-Length&&Max-Information原則可發(fā)音的名字通用性,英文避免歧義與誤識(shí)別的字母,如pertList,I與l與1直觀的布爾類(lèi)型,如isEmpty常量用大寫(xiě)文件名與小組成員協(xié)商制作共同的命名規(guī)范第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧-規(guī)范的代碼81第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧-規(guī)范的代碼數(shù)據(jù)類(lèi)型避免浮點(diǎn)類(lèi)型——效率與精度,int類(lèi)型是最有效率的了解語(yǔ)言的類(lèi)型兼容性強(qiáng)類(lèi)型語(yǔ)言C++/C#/Java弱類(lèi)型語(yǔ)言VB/VBScript/JavaScript/PHP/Perl有符號(hào)類(lèi)型與無(wú)符號(hào)類(lèi)型——255還是-1?chara=255;if(a==255)?顯式類(lèi)型轉(zhuǎn)換類(lèi)型轉(zhuǎn)換會(huì)不會(huì)丟失數(shù)據(jù)?第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧-規(guī)范的代碼82C/C++——判斷一個(gè)數(shù)是否為零?布爾型(C++)整型數(shù)浮點(diǎn)數(shù)指針if(a==1)if(a==TRUE)if(a==0)if(a==FALSE)if(a)if(!a)if(a)if(!a)if(a==1)if(!a==0)if(a==1)if(a==TRUE)if(a==0)if(a==FALSE)if((a>=-)&&(a<=))if(a)if(a==1)if(a!=0)if(!a)if(a!=NULL)if(a==NULL)C/C++——判斷一個(gè)數(shù)是否為零?if(a==1)if(a)83第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧-規(guī)范的代碼了解語(yǔ)言操作符的優(yōu)先級(jí)如C/C++:()[]->.!~++--sizeof*/%+-<<>><<=>>===!=&^|&&||?:=+=-=*=/=%=&=^=|=<<=>>=盡可能的使用括號(hào)第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧-規(guī)范的代碼84第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧-規(guī)范的代碼函數(shù)避免參數(shù)過(guò)多唯一出口原則?用函數(shù)取代常用的代碼段進(jìn)入時(shí)初始化,退出時(shí)清理第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧-規(guī)范的代碼85第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧-規(guī)范的代碼內(nèi)存與指針malloc與free,new與delete成對(duì)使用(并非數(shù)量上的成對(duì),而是邏輯上的)誰(shuí)分配,誰(shuí)釋放,否則必則在文檔嚴(yán)格說(shuō)明指針指向的內(nèi)存被釋放后,應(yīng)復(fù)位其值為NULLC/C++:為字符串結(jié)束符占用的空間分配內(nèi)存對(duì)地址操作一定要小心,因?yàn)楹蜋C(jī)器和硬件相關(guān),可能造成移植性的問(wèn)題和難以檢查的錯(cuò)誤。如:高低位字節(jié),對(duì)齊方式等第三章軟件技術(shù)基礎(chǔ)4、基本編程技術(shù)與技巧-規(guī)范的代碼86第三章軟件技術(shù)基
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 感恩節(jié)活動(dòng)總結(jié) 15篇
- 感恩老師的發(fā)言稿集合15篇
- 律師執(zhí)業(yè)年度工作總結(jié)
- 供電工程施工方案(技術(shù)標(biāo))
- 年會(huì)代表團(tuán)隊(duì)發(fā)言稿范文(10篇)
- 湖南省株洲市高三教學(xué)質(zhì)量統(tǒng)一檢測(cè)(一) 語(yǔ)文試題(含答案)
- 2025版汽車(chē)零部件銷(xiāo)售訂購(gòu)合同(年度版)
- 二零二五版淘寶年度合作運(yùn)營(yíng)效果跟蹤協(xié)議3篇
- 精細(xì)化人力資源管理的月度工作計(jì)劃
- 金屬非金屬公司話務(wù)員工作總結(jié)
- 勵(lì)志課件-如何做好本職工作
- 2024年山東省濟(jì)南市中考英語(yǔ)試題卷(含答案解析)
- 2024年社區(qū)警務(wù)規(guī)范考試題庫(kù)
- 2024年食用牛脂項(xiàng)目可行性研究報(bào)告
- 靜脈治療護(hù)理技術(shù)操作標(biāo)準(zhǔn)(2023版)解讀 2
- 2024年全國(guó)各地中考試題分類(lèi)匯編(一):現(xiàn)代文閱讀含答案
- 2024-2030年中國(guó)戶外音箱行業(yè)市場(chǎng)發(fā)展趨勢(shì)與前景展望戰(zhàn)略分析報(bào)告
- GB/T 30306-2024家用和類(lèi)似用途飲用水處理濾芯
- 家務(wù)分工與責(zé)任保證書(shū)
- 武強(qiáng)縣華浩數(shù)控設(shè)備科技有限公司年產(chǎn)9000把(只)提琴、吉他、薩克斯等樂(lè)器及80臺(tái)(套)數(shù)控雕刻設(shè)備項(xiàng)目環(huán)評(píng)報(bào)告
- 安全生產(chǎn)法律法規(guī)匯編(2024年4月)
評(píng)論
0/150
提交評(píng)論