




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
計算機軟件概述1.什么是計算機軟件2.計算機軟件的特性3.計算機軟件的分類4.計算機軟件技術概論1什么是計算機軟件計算機系統=硬件+軟件計算機系統計算機硬件計算機軟件運算器控制器輸入設備存儲器輸出設備系統軟件應用軟件操作系統數據庫管理系統程序語言處理系統文字處理通信軟件···學習、娛樂軟件輸入硬件&軟件輸出計算機系統是由硬件和軟件組成的,兩者缺一不可!不一定是PC機無所不在的嵌入式家族軟件、硬件和用戶的關系
硬件的能力非常有限,只是速度極高而已沒有軟件,硬件幾乎什么任務也完成不了BasicInput/OutputSystem硬件BIOS操作系統應用軟件用戶應用軟件系統軟件數據信息處理任務處理結果硬件計算機通過軟件才能進行信息處理不同的軟件,完成不同的任務
1,2,5,7,9排序軟件9,2,7,5,1計算機9,2,7,5,124統計軟件計算機同一軟件處理不同的數據,完成不同的任務2,3,6,8排序軟件8,2,6,3計算機a,b,d,k,w排序軟件d,a,k,w,b計算機什么是程序?程序是告訴計算機做什么和如何做的一組指令(語句),這些指令(語句)都是計算機能夠理解并能夠執行的一些命令程序的特性:①用于完成某一確定的信息處理任務②使用某種計算機語言描述如何完成該任務③預先存儲在計算機中,啟動運行后才能完成任務程序與數據的關系程序所處理的對象和處理后得到的結果統稱為數據(分別稱為輸入數據和輸出數據)程序必須處理合理的輸入數據,否則不會產生有意義的輸出程序和數據有相對性
輸出數據程序輸入數據計算機
???求和程序2,5,人,8,3計算機
目標程序編譯程序C語言源程序計算機程序與軟件是什么關系?軟件=程序,開發軟件=寫程序?錯誤!程序只是軟件的一個組成部分寫程序只是軟件開發的過程中的一個步驟軟件是程序、數據以及有關文檔資料的集合。(可運行的)思想和內容的數字化思想:算法、規律、辦法(程序)內容:圖形、圖像、數據、聲音、文字等(數據)2.計算機軟件的特性計算機軟件有哪些特性?(1)1.不可見性(是無形的,不能被人們直接觀察、欣賞和評價)2.適用性(可以適應一類應用問題的需要)3.依附性(依附于特定的硬件、網絡和其他軟件)4.復雜性(規模越來越大,開發人員越來越多,開發成本也越來越高),例如:Exchange2000Windows2000項目經理25人約250人開發人員140人約1700人測試人員350人約3200人軟件的復雜性舉例程序規模:WindowsXP源程序約有5000萬行人員隊伍:Vista及Office2007兩個團隊的開發設計成員總共9000余人資金投入:微軟為Vista投入90億美元,包括Vista未來的配套及合作伙伴的投入,預計在180億美元以上,如果加上新版Office的成本,投入資金在240億~270億美元之間開發周期:Vista的開發經歷6年,發布時間一拖再拖計算機軟件有哪些特性?(2)5.無磨損性(功能和性能一般不會發生變化)6.易復制性(可以非常容易且毫無失真地進行復制)7.不斷演變性(軟件的生命周期),例如:1989年Word1.0■
1997年推出Word972000年推出Office2000■
2003年Office20038.有限責任(有限保證)9.脆弱性(黑客攻擊、病毒入侵、信息盜用···)Windows版本演變計算機軟件與知識產權軟件是智力活動的成果,受到知識產權(版權)法的保護版權授予軟件作者(版權所有者)享有下列權利: 拷貝、發布、修改、署名、出售、···保護知識產權的目的:確保腦力勞動受到獎勵并鼓勵發明創造,保護知識產權就是保護腦力勞動人員,使他們發揮創造能力,社會也會從他們的成果中受益購買一個軟件,用戶僅僅得到了該軟件的使用權,并沒有獲得它的版權隨意進行軟件拷貝和分發是一種違法行為3.計算機軟件的分類按產權性質商品軟件共享軟件自由軟件按軟件用途應用軟件系統軟件從軟件知識產權對軟件進行分類商品軟件共享軟件(shareware)具有版權,可免費試用一段時間,允許拷貝和散發(但不可修改),過了試用期若還想繼續使用,就得交一筆注冊費,成為注冊用戶。從軟件知識產權對軟件進行分類自由軟件(freeware)(開放源代碼軟件)用戶可共享,并允許隨意拷貝、修改其源代碼,允許銷售和自由傳播。但是,對軟件源代碼的任何修改都必須向所有用戶公開,還必須允許此后的用戶享有進一步拷貝和修改的自由。自由軟件的重大意義從用途對計算機軟件分類系統軟件
不是為了解決某種具體應用,而是為了:給用戶使用計算機提供方便給應用軟件的開發與運行提供支持使計算機有效、安全、可靠地運行應用軟件
專門用于幫助最終用戶解決各種具體應用問題的軟件分類(按開發方式):定制應用軟件通用應用軟件幾乎所有領域、所有人都需要使用設計精巧,易學易用商品化,價格較低通用應用軟件的類別與功能類別功能流行軟件舉例文字處理軟件文本編輯、文字處理、桌面排版等Word、AdobeAcrobat、WPS、FrontPage等電子表格軟件表格定義、數值計算和統計、繪圖等Excel等圖形圖像軟件圖像處理、幾何圖形繪制、動畫制作等AutoCAD、Photoshop、CorelDraw、3DSMAX等媒體播放軟件播放各種數字音頻和視頻文件MediaPlayer、RealPlayer、Winamp等網絡通信軟件電子郵件、聊天、IP電話等OutlookExpress、MSN、QQ、ICQ等演示軟件投影片制作等PowerPoint等信息檢索軟件在數據庫和因特網中查找需要的信息Google,天網,百度等個人信息管理軟件記事本、日程安排、通訊錄、郵件Outlook,LotusNotes游戲軟件游戲、教育和娛樂棋類游戲、撲克游戲等關于微軟的辦公軟件Office歷史與發展內容與功能:以Office2003為例,共包含7個主要的軟件:?
Access2003
?
InfoPath2003
?
PowerPoint2003
?
Word2003?
Excel2003
?
Outlook2003
?
Publisher2003
成功軟件的經驗是什么?它們都具有如下特點:1它們能替代現實世界已有的其他工具,而且使用起來比已有工具更方便有效2它們能完成已有工具很難完成甚至完全不可能完成的事,擴展了人們的能力3···什么是系統軟件?舉例:基本輸入/輸出系統(BIOS)操作系統(如Windows、Unix、Linux等)程序開發工具與環境(如C語言編譯器等)數據庫管理系統(DBMS)實用程序(Utility,如磁盤清理程序、備份程序、殺毒軟件、防火墻等)系統軟件有哪些特性?與計算機硬件有密切的關系,能對硬件進行統一的控制、調度和管理;具有通用性,能為多種應用軟件的開發和運行提供支持與服務在任何計算機系統中,系統軟件都是必不可少的在購買計算機時,通常計算機供應廠商會提供給用戶一些最基本的系統軟件,否則計算機無法工作。最重要的系統軟件有哪些?操作系統(OS)包括各種實用程序(如磁盤清理程序、備份程序、殺毒軟件等)功能上也包含BIOS在內程序設計語言處理系統編譯器解釋器匯編程序(匯編器)開發工具與平臺數據庫管理系統(DBMS)4.計算機軟件技術軟件技術分類
程序設計語言編譯技術軟件及實現技術操作系統及實用程序計算機數據庫技術軟件技術軟件工具軟件工程軟件開發方法與技術程序設計方法數據結構和算法程序與程序設計語言
程序:是使計算機完成某種任務的一個有序的命令(指令語句)。
程序設計就像寫文章,要解決兩個問題:1.明確自己要表達的是什么2.如何把它表達出來程序設計=算法+數據結構程序設計語言填補了
人與計算機交流的鴻溝計算機硬件僅僅知道0和1有問題需要計算機解決的人交流的鴻溝計算機硬件僅僅知道0和1有問題需要計算機解決的人程序設計語言程序設計語言程序設計語言發展的三個階段:
機器語言→匯編語言→高級語言程序設計語言是編寫計算機程序所用的語言。程序設計語言機器語言
是機器指令的集合,其代碼由0、1組成的二進制串表示,不需翻譯可直接為機器所接受。匯編語言
為符號化的機器語言。它用助記符和標識符代替機器指令的操作碼和地址碼。高級語言
是一種與具體的計算機指令系統無關,獨立于計算機類型,而且表達方式接近于自然語言或數學語言,容易被人們掌握和書寫的語言。如C,Pascal,Java。舉例任務:x+1→x機器語言
001111100000100100111111B或3E093FH匯編語言
MOVAX,X/INCAX/MOVX,AXC語言x=x+1 或x++ 或++x程序設計語言的翻譯程序把甲語言編寫的程序翻譯為等價的乙語言編寫的程序。其中甲語言程序稱為源程序,乙語言程序稱為目標程序翻譯程序源程序目標程序常用的有下列幾種:匯編程序(匯編器)匯編語言源程序機器語言目標程序編譯程序(編譯器)高級語言源程序機器語言或匯編語言目標程序解釋程序(解釋器)高級語言源程序邊解釋邊執行,不產生目標程序編譯程序與解釋程序的區別解釋:解釋器直接解釋并且執行源語言程序,不產生目標程序(相當于“口譯”)編譯:把源程序編譯為機器語言目標程序后,再由計算機運行(相當于“筆譯”)源程序目標程序編譯器計算機編譯方式計算機源程序解釋器解釋方式BASIC、VisualBasic、VBScript、Java、JavaScript等都是解釋執行的語言C、C++等都是需要編譯的語言編譯程序的處理過程源程序目標程序可執行代碼程序庫編譯程序鏈接程序.c.h.obj.exe1.編輯 2.編譯 3.鏈接 4.運行高級語言的優點比機器或匯編語言更易于學習程序更易于調試(程序更為短小;記號本身更自然,因此更多注意力可放在程序邏輯而非語法細節上)程序更易于理解較好的平臺無關性上述原因導致解決問題的時間和代價減少高級程序設計語言的發展50年代:Fortran,ALGOL60年代:COBOL語言,BASIC語言70年代:Pascal語言,C語言80年代:Ada語言,PROLOG語言,LISP語言90年代起:面向對象語言C++、JAVA、C#等高級語言的分類面向過程的語言:Fortran/Basic/C/Pascal面向問題的語言:Lisp/Lingo/Matlab面向對象的語言:VB/C++/Java/C#類(Class)是對某一類對象的抽象;對象(object)是某一種類的實例
面向對象的語言一個應用最廣泛的類庫--MFCAPI的困境微軟提供了一個包含了200多個類,封裝了Windows的大部分編程對象以及與它們有關的操作的Windows編程類庫MFC(MicrosoftFoundationClass)MFC執行效率高,只比傳統的WindowsC程序低5%左右MFC應用程序中還允許混合使用WindowsAPI函數完全支持Windows所有的函數、控件、消息、菜單及對話框穩定性和可移植性好,符合微軟的風格有VisualC++支持一個應用最廣泛的類庫--MFCCCmdTargetCWndCDocumentCFrameWndCObjectCWinTreadCWinAppCViewCDialog及控件CMDIChildWndCMDIFrameWndCMiniFrameWndMFC學習方法首先要對Windows編程概念和API函數有一定的了解,如WindowsAPI有哪些功能和哪些常用的數據結構等。學會抽象地把握問題,不求甚解,不要一開始學習VisualC++就試圖了解整個MFC類庫。從理解和使用兩個方面學習MFC,理解MFC應用程序的框架結構。先大體上了解MFC的概念、組成和基本約定,從簡單的類入手,結合程序設計,由淺入深,循序漸進、日積月累。編程時如果MFC某個類能完成所需要的功能,可以直接調用已有類的方法(成員函數)。否則,可以利用面向對象技術中的“繼承”方法對MFC類的行為進行擴充和修改,從MFC中已有的類派生出自己需要的類。學習MFC,另一點就是不要過分依賴于向導(Wizard)工具。向導能做許多工作,但同時掩飾了太多的細節。學習路徑之困惑CVBVC????VisualStudio2010C#orVB.NET.NETCompactF
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年新學期學校老師工作方案
- 康復護理在骨折治療中的應用
- 1廣告與媒介關系
- 家具設計第一章
- 蘇州工業園區職業技術學院《電視攝像與剪輯藝術》2023-2024學年第二學期期末試卷
- 南方醫科大學《西方倫理學》2023-2024學年第二學期期末試卷
- 新疆農業大學《學習筑夢民族復興夢》2023-2024學年第一學期期末試卷
- 山東旅游職業學院《中國現當代文學作品選》2023-2024學年第二學期期末試卷
- 急性心梗心源性休克的護理
- 廣州鐵路職業技術學院《工程風險管理》2023-2024學年第二學期期末試卷
- 2023-2024全國初中物理競賽試題-杠桿(解析版)
- 湖北省荊門市荊楚初中聯盟2023-2024學年八年級下學期期中聯考數學試題(無答案)
- 鄉鎮安全生產網格員培訓
- 小班數學《三只熊》課件
- 山東銹石測報告亞興石材文檔
- 小學數學五年級下冊通分練習100題附答案
- pe封口膜制作工藝
- 會計師聘書模板
- 粵教版科學四年級上冊全冊試卷(含答案)
- 呼吸系統疾病的護理研究進展與實際應用
- 鹽酸丙卡特羅吸入溶液-藥品臨床應用解讀
評論
0/150
提交評論