程序語言及windows程序開發(fā)步驟_第1頁
程序語言及windows程序開發(fā)步驟_第2頁
程序語言及windows程序開發(fā)步驟_第3頁
程序語言及windows程序開發(fā)步驟_第4頁
程序語言及windows程序開發(fā)步驟_第5頁
已閱讀5頁,還剩32頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第第 1 章章 C#程序設計基礎程序設計基礎1.1 程序設計語言程序設計語言1.2 程序設計方法程序設計方法1.3 C#程序設計語言概述程序設計語言概述1.4 C#集成開發(fā)環(huán)境集成開發(fā)環(huán)境本本 章章 內內 容容1.1.1 1.1.1 程序設計語言的定義程序設計語言的定義程序設計語言程序設計語言(Programming Language)是一套遵循既定規(guī)是一套遵循既定規(guī)則的記號系統(tǒng);一個計算機程序實際上就是由一些記號按則的記號系統(tǒng);一個計算機程序實際上就是由一些記號按若干規(guī)則構成的記號串。若干規(guī)則構成的記號串。程序設計語言包含三方面的內容:程序設計語言包含三方面的內容:語法語法:記號串構成的規(guī)則

2、,它表示程序的結構或形式;:記號串構成的規(guī)則,它表示程序的結構或形式;語義語義:表示語法單位和程序的意義,離開語義,語言只:表示語法單位和程序的意義,離開語義,語言只 不過是一堆符號的集合;不過是一堆符號的集合;語用語用:表示程序與其使用的關系,這種關系將語言的基:表示程序與其使用的關系,這種關系將語言的基 本概念和語言的外界聯(lián)系起來。本概念和語言的外界聯(lián)系起來。1.1.2 1.1.2 程序設計語言的分類程序設計語言的分類l機器語言機器語言:直接用二進制代碼指令表達的計算機直接用二進制代碼指令表達的計算機語言語言優(yōu)點優(yōu)點:具有較高的執(zhí)行效率,不需要編譯,機器具有較高的執(zhí)行效率,不需要編譯,機器

3、 可直接執(zhí)行(可直接執(zhí)行(也只有機器語言才能被機器也只有機器語言才能被機器 直接執(zhí)行直接執(zhí)行)缺點缺點:依賴于具體的機型,其移植性非常差;依賴于具體的機型,其移植性非常差; 程序編寫非常困難,編寫過程十分繁瑣、程序編寫非常困難,編寫過程十分繁瑣、 費時,易出差錯,調試也十分困難費時,易出差錯,調試也十分困難1.1.2 1.1.2 程序設計語言的分類(續(xù))程序設計語言的分類(續(xù))l匯編語言匯編語言程序程序:用助記符編寫的程序用助記符編寫的程序匯編匯編: : 需要將匯編語言程序需要將匯編語言程序“翻譯翻譯”成機器語言,成機器語言,然后機器才能執(zhí)行它。然后機器才能執(zhí)行它。目標程序目標程序: :匯編后

4、形成的機器語言程序匯編后形成的機器語言程序源程序源程序: :被匯編的匯編語言程序被匯編的匯編語言程序匯編過程匯編過程 1.1.2 1.1.2 程序設計語言的分類(續(xù))程序設計語言的分類(續(xù))l匯編語言匯編語言優(yōu)點:優(yōu)點:比晦澀難懂的機器語言有所改進,執(zhí)行比晦澀難懂的機器語言有所改進,執(zhí)行 效率也比較高效率也比較高缺點:缺點:編寫匯編語言程序需要對機器的組成有編寫匯編語言程序需要對機器的組成有 清晰的了解,匯編語言程序仍然依賴于清晰的了解,匯編語言程序仍然依賴于 具體的機型,移植性具體的機型,移植性差差,編寫過程繁,編寫過程繁 瑣,調試也困難瑣,調試也困難1.1.2 1.1.2 程序設計語言的分

5、類(續(xù))程序設計語言的分類(續(xù))l高級語言(高級程序設計語言)高級語言(高級程序設計語言)高級語言高級語言(高級程序設計語言)是由接近自然語(高級程序設計語言)是由接近自然語言(英語)的詞匯(記號)和語法(規(guī)則)構成言(英語)的詞匯(記號)和語法(規(guī)則)構成的符號系統(tǒng)。的符號系統(tǒng)。常用常用的高級語言:如的高級語言:如C/C+、PASCAL、FORTRAN、COBOL、JAVA、BASIC、C#等等1.1.2 1.1.2 程序設計語言的分類(續(xù))程序設計語言的分類(續(xù))l高級語言(高級程序設計語言)高級語言(高級程序設計語言)顯然,高級語言也需要相應的軟件將其顯然,高級語言也需要相應的軟件將其“

6、翻譯翻譯”成機器語言,然后才能被執(zhí)行。成機器語言,然后才能被執(zhí)行。有兩種翻譯方式:有兩種翻譯方式:解釋解釋:翻譯一句執(zhí)行一句,如:翻譯一句執(zhí)行一句,如BASIC語言等語言等編譯編譯:將整個程序翻譯完了以后再執(zhí)行,如:將整個程序翻譯完了以后再執(zhí)行,如C/C+、C#等等大多高級語言都采用編譯執(zhí)行方式,解釋執(zhí)大多高級語言都采用編譯執(zhí)行方式,解釋執(zhí)行要比編譯執(zhí)行慢得多行要比編譯執(zhí)行慢得多1.1.2 1.1.2 程序設計語言的分類(續(xù))程序設計語言的分類(續(xù))l高級語言(高級程序設計語言)高級語言(高級程序設計語言)優(yōu)點:優(yōu)點:(1)它較好地克服了機器語言和匯編語言的不足,)它較好地克服了機器語言和匯編

7、語言的不足,采用近似自然語言的記號和語法,大大提高了編采用近似自然語言的記號和語法,大大提高了編程的效率和程序的可讀性程的效率和程序的可讀性(2)它不依賴于具體機型的指令系統(tǒng),程序具有)它不依賴于具體機型的指令系統(tǒng),程序具有很高的可移植性很高的可移植性(3)編寫代碼時不需考慮具體的細節(jié),從而使程)編寫代碼時不需考慮具體的細節(jié),從而使程序員能夠把更多的精力集中在問題求解本身的設序員能夠把更多的精力集中在問題求解本身的設計當中計當中l(wèi)高級語言(高級程序設計語言)高級語言(高級程序設計語言)缺點:缺點:高級語言的運行效率沒有匯編語言和機器語言高,高級語言的運行效率沒有匯編語言和機器語言高,對機器的硬

8、件操作也沒有比匯編語言方便對機器的硬件操作也沒有比匯編語言方便 1.2.1 1.2.1 結構化程序設計方法結構化程序設計方法1. 順序結構順序結構順序結構順序結構 1.2.1 1.2.1 結構化程序設計方法(續(xù))結構化程序設計方法(續(xù))2. 選擇結構選擇結構選擇結構選擇結構 1.2.1 1.2.1 結構化程序設計方法(續(xù))結構化程序設計方法(續(xù))3. 循環(huán)結構循環(huán)結構循環(huán)結構是用于反復執(zhí)行某一語句塊的一種結構。循環(huán)結構是用于反復執(zhí)行某一語句塊的一種結構。它主要分為當(它主要分為當(while)型循環(huán)和直到()型循環(huán)和直到(until)型)型循環(huán)兩種結構。循環(huán)兩種結構。循環(huán)結構循環(huán)結構 三種基本

9、結構是結構化程序設計方法的核三種基本結構是結構化程序設計方法的核心內容,每種結構都只有一個入口點和出口點。心內容,每種結構都只有一個入口點和出口點。結構化結構化設計方法:要求程序在結構上遵循模塊設計方法:要求程序在結構上遵循模塊化設計原理,要求程序設計語言具有支持順序化設計原理,要求程序設計語言具有支持順序結構、選擇結構和循環(huán)結構的語句,要求任何結構、選擇結構和循環(huán)結構的語句,要求任何復雜的程序結構都只能是這三種結構中一種或復雜的程序結構都只能是這三種結構中一種或多種的組合或嵌套。多種的組合或嵌套。1.2.1 1.2.1 結構化程序設計方法(續(xù))結構化程序設計方法(續(xù))1.2.2 1.2.2

10、面向對象程序設計方法面向對象程序設計方法1. 類和對象類和對象面向對象程序設計方法面向對象程序設計方法(OOP, Object-Oriented Programming)的主要思想是將數(shù)據(jù)及基于這些)的主要思想是將數(shù)據(jù)及基于這些數(shù)據(jù)的操作(方法)封裝在一個結構體中,這種數(shù)據(jù)的操作(方法)封裝在一個結構體中,這種結構體就是所謂的類。結構體就是所謂的類。類的基本結構類的基本結構 1.2.2 1.2.2 面向對象程序設計方法(續(xù))面向對象程序設計方法(續(xù))1. 類和對象類和對象 實例化以后的類稱為實例化以后的類稱為對象對象,即類的主要作用,即類的主要作用是用于定義對象,通過對象方法的運用來解決實是用

11、于定義對象,通過對象方法的運用來解決實際問題。際問題。 1.2.2 1.2.2 面向對象程序設計方法(續(xù))面向對象程序設計方法(續(xù))2. 對象的屬性和方法對象的屬性和方法 l對象的屬性:對象的屬性:是對象存在描述的手段和方法,對象屬性的是對象存在描述的手段和方法,對象屬性的不同取值是對象存在的具體表現(xiàn),不同的屬性值決定了不不同取值是對象存在的具體表現(xiàn),不同的屬性值決定了不同的對象。例如,按鈕、文本等控件都是對象,其文本同的對象。例如,按鈕、文本等控件都是對象,其文本(text)、背景顏色()、背景顏色(BackColor)、字體大?。ǎ?、字體大?。‵ont.size)等都是這些對象的屬性。等都

12、是這些對象的屬性。l對象的方法:對象的方法:是實現(xiàn)對象演變的手段,通過調用對象的方是實現(xiàn)對象演變的手段,通過調用對象的方法可以使對象完成相應的功能,它是對象作為基本運算單法可以使對象完成相應的功能,它是對象作為基本運算單元的基礎。對象方法一般由程序員顯式調用。元的基礎。對象方法一般由程序員顯式調用。1.2.2 1.2.2 面向對象程序設計方法(續(xù))面向對象程序設計方法(續(xù))2. 對象的屬性和方法對象的屬性和方法 l對象的事件方法:對象的事件方法:是一種特殊的對象方法,其特殊之處在是一種特殊的對象方法,其特殊之處在于,當事件觸發(fā)時由系統(tǒng)自動調用事件方法,以完成相應于,當事件觸發(fā)時由系統(tǒng)自動調用事

13、件方法,以完成相應的功能。的功能。 對象的屬性和方法還可以分為公有屬性和方法以及私對象的屬性和方法還可以分為公有屬性和方法以及私有屬性和方法。前者是用有屬性和方法。前者是用Public關鍵修飾,后者是用關鍵修飾,后者是用Private來修飾。來修飾。1.2.2 1.2.2 面向對象程序設計方法(續(xù))面向對象程序設計方法(續(xù))3. 類的繼承和重載類的繼承和重載 繼承和重載是類十分的重要特性。繼承和重載是類十分的重要特性。繼承繼承是指是指一個類能夠自動一個類能夠自動“包含包含”另一個類中的公有屬性另一個類中的公有屬性和方法的機制,前者稱為后者的和方法的機制,前者稱為后者的派生類派生類,后者稱,后者

14、稱為前者的為前者的基類基類。重載重載是指類中方法名相同,但參是指類中方法名相同,但參數(shù)、參數(shù)類型不一樣的一種方法定義機制。數(shù)、參數(shù)類型不一樣的一種方法定義機制。 類的繼承和重載為對象提供了十分靈活的運類的繼承和重載為對象提供了十分靈活的運用機制,在實際應用中具有十分重要的意義。用機制,在實際應用中具有十分重要的意義。1.3.1 C#語言的起源與發(fā)展語言的起源與發(fā)展lSUN公司于公司于1995年推出的一種跨平臺的面向對年推出的一種跨平臺的面向對象程序設計語言象程序設計語言Java。l為與為與Java爭奪市場,微軟推出了基于爭奪市場,微軟推出了基于Java技術技術的的Visual J+。Visua

15、l J+ 6.0對對Java語言進行了語言進行了擴充,導致擴充后的擴充,導致擴充后的Java與與SUN公司的公司的Java 虛擬虛擬機不兼容,由此引發(fā)微軟與機不兼容,由此引發(fā)微軟與SUN公司的官司,最公司的官司,最終導致兩大軟件集團的終導致兩大軟件集團的“分道揚鑣分道揚鑣”。1.3.1 C#語言的起源與發(fā)展(續(xù))語言的起源與發(fā)展(續(xù))l2002 年,微軟推出了一種面向年,微軟推出了一種面向Internet的的Visual Studio .NET,該平臺以,該平臺以.NET Framework作為作為“虛擬機虛擬機”,完全脫離了,完全脫離了Java技術,但與技術,但與Java有有類似的跨平臺功能

16、。類似的跨平臺功能。lC#(C Sharp)是)是Visual Studio .NET平臺中的平臺中的一種完全的面向對象的高級程序設計語言。一種完全的面向對象的高級程序設計語言。C#完完全擺脫了全擺脫了JVM,轉而代之的是,轉而代之的是.NET Framework,這使得這使得C#與與Java出現(xiàn)了本質上的區(qū)別。出現(xiàn)了本質上的區(qū)別。1.3.2 C#語言的特點語言的特點 作為一種面向對象的程序設計語言,作為一種面向對象的程序設計語言,C#與與C+和和Java有著千絲萬縷的聯(lián)系,又在有著千絲萬縷的聯(lián)系,又在C+和和Java的的基礎上作了大量的改進。其特點主要體現(xiàn)在以下基礎上作了大量的改進。其特點主

17、要體現(xiàn)在以下幾個方面:幾個方面:u語法簡潔語法簡潔u支持跨平臺支持跨平臺u完全的面向對象程序設計功能完全的面向對象程序設計功能u強大的強大的Web應用支持應用支持u靈活性和兼容性靈活性和兼容性u對對XML的高度支持的高度支持u與與Java有著本質的區(qū)別有著本質的區(qū)別1.4.1 Visual Studio的發(fā)展歷史的發(fā)展歷史l20世紀世紀80年代初,年代初,MS-DOS系統(tǒng)的出現(xiàn)標志著系統(tǒng)的出現(xiàn)標志著軟件編程時代的到來軟件編程時代的到來l1990年,年,Visual Basic的產(chǎn)生帶來了第一個真正的產(chǎn)生帶來了第一個真正意義的意義的IDE,Visual Basic也由此風靡全球也由此風靡全球l微

18、軟于微軟于90年代中提出了年代中提出了Visual Studio的概念,推的概念,推出了出了Visual Studio IDE的第一個版本。后來又提的第一個版本。后來又提出出Visual Studio .NET的概念的概念1.4.1 Visual Studio的發(fā)展歷史(續(xù))的發(fā)展歷史(續(xù))l2002 年,微軟推出的年,微軟推出的Visual Studio .NET版本,版本,引入了建立在引入了建立在.NET Framework 1.0的托管代碼機的托管代碼機制以及一門新的語言制以及一門新的語言C#。此后,微軟又推出了。此后,微軟又推出了Visual Studio 2003、Visual St

19、udio 2005、Visual Studio 2008/2010/201?,其包含的三大語言仍然,其包含的三大語言仍然是是C#、VB.NET和和VC+.NET。1.4.1 Visual Studio的發(fā)展歷史(續(xù))的發(fā)展歷史(續(xù)).NET Framework:公共語言運行時(公共語言運行時(CLR, Common Language Runtime)框架類庫集(框架類庫集(FCL, Framework Class Library)NET FrameWorkVisual Basic.NETC#托管托管C+J#其他語言其他語言公共語言規(guī)范公共語言規(guī)范(CLS)ASP.NET/Web應用應用/Web

20、服務服務Window窗體應用窗體應用ADO.NET與與XML.NET框架基礎類庫框架基礎類庫公共語言運行庫公共語言運行庫操作系統(tǒng)操作系統(tǒng)1.4.1 Visual Studio的發(fā)展歷史(續(xù))的發(fā)展歷史(續(xù))公共語言運行時(公共語言運行時(CLR):作為跨平臺的編程語言,作為跨平臺的編程語言,C#與與Java的工作原理很相似,的工作原理很相似,C#程序編譯后先形程序編譯后先形成中間碼,然后以成中間碼,然后以CLR為為“虛擬機虛擬機”才能執(zhí)行,才能執(zhí)行,即即CLR負責管理和執(zhí)行由負責管理和執(zhí)行由.NET編譯器編譯產(chǎn)生的編譯器編譯產(chǎn)生的中間語言代碼;要運行中間語言代碼;要運行.NET程序,必須安程序

21、,必須安裝裝.NETFramework1.4.2 Visual Studio 2008集成開發(fā)環(huán)境集成開發(fā)環(huán)境 Visual Studio 2008集成開發(fā)環(huán)境由菜單欄、快捷集成開發(fā)環(huán)境由菜單欄、快捷菜單欄、工具箱、資源管理器、編輯器、窗體設菜單欄、工具箱、資源管理器、編輯器、窗體設計器等部分組成,如下圖:計器等部分組成,如下圖:1.4.2 Visual Studio 2008集成開發(fā)環(huán)境(續(xù))集成開發(fā)環(huán)境(續(xù))配置默認保存路徑的方法:選擇配置默認保存路徑的方法:選擇“工具工具”|“選項選項”命令,然后打開命令,然后打開“選項選項”對話框:對話框:1.4 C#集成開發(fā)環(huán)境1.4.3 控制臺應用

22、程序的開發(fā)步驟控制臺應用程序的開發(fā)步驟創(chuàng)建控制臺應用程的方法:創(chuàng)建控制臺應用程的方法: (1)在圖)在圖1.6所示的界面選擇所示的界面選擇“文件文件”|“新新建建”|“項目項目”菜單命令,然后打開菜單命令,然后打開“新建項目新建項目”對話框:對話框:1.4.3 控制臺應用程序的開發(fā)步驟(續(xù))控制臺應用程序的開發(fā)步驟(續(xù))(2)在)在“模板模板”框中選擇框中選擇“控制臺應用程序控制臺應用程序”,在在“名稱名稱”文本框中設置應用程序的名稱。然后文本框中設置應用程序的名稱。然后單擊單擊【確定確定】按鈕,將打開代碼編輯器,并已自按鈕,將打開代碼編輯器,并已自動形成了程序的基本結構。動形成了程序的基本結構。 1.4.3 控制臺應用程序的開發(fā)步驟(續(xù))

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論