官术网_书友最值得收藏!

第一篇 基礎(chǔ)知識篇

第1章 初識Visual Studio

本章概覽

軟件在人們的日常生活中隨處可見,比如,大家使用的Windows操作系統(tǒng)、智能手機中的各種應(yīng)用等都是軟件。那么,這些軟件是如何生成的呢?我們能不能開發(fā)自己的軟件呢?答案是可以的。本章將帶領(lǐng)大家了解C#(讀作C Sharp)及其使用的開發(fā)環(huán)境Visual Studio 2017。C#是微軟公司推出的一種語法簡潔、類型安全的面向?qū)ο蟮木幊陶Z言,使用它可以開發(fā)各種軟件,而Visual Studio 2017則是使用C#開發(fā)軟件最好的工具。

知識框架

1.1 了解軟件

隨著計算機的普及,計算機中安裝的軟件在人們的日常生活和工作中的作用也越來越重要。例如,大家在聊天時經(jīng)常用的QQ軟件(見圖1.1);在工作過程中使用的Office辦公軟件(見圖1.2);在處理照片時使用的美圖秀秀軟件(見圖1.3);在觀看視頻時使用的優(yōu)酷視頻播放軟件(見圖1.4)等。

圖1.1 QQ軟件

圖1.2 Office辦公軟件之Excel

圖1.3 美圖秀秀軟件

圖1.4 優(yōu)酷視頻播放軟件

以上軟件都是我們經(jīng)常用到的一些軟件。那么,什么是軟件呢?

軟件其實是一種計算機程序,而計算機程序是指為了得到結(jié)果由計算機等具有信息處理能力的硬件裝置執(zhí)行的代碼化指令集合。

計算機程序告訴計算機如何完成一個具體的任務(wù)。由于現(xiàn)在的計算機還不能理解人類的自然語言,所以不能用自然語言編寫計算機程序,這就需要借助計算機語言(程序設(shè)計語言,它是一種人和計算機交換信息的語言)指揮計算機進行工作。

綜上所述,一個軟件的生成過程為:程序員將由計算機語言組成的代碼輸入計算機,計算機對代碼進行解釋編譯,最后由計算機生成軟件,如圖1.5所示。

圖1.5 軟件的生成過程

1.2 軟件開發(fā)相關(guān)概念

計算機程序涉及的概念都比較抽象、專業(yè),經(jīng)常有初學(xué)編程的人對專業(yè)性的名詞不明所以。本節(jié)將對常見的與軟件開發(fā)相關(guān)的概念進行介紹。

1.算法

算法是指對計算機工作步驟和方法的描述。算法的每個步驟都是有著嚴格規(guī)定的,這些步驟能夠被計算機識別并正確執(zhí)行,并且每個步驟都能夠被計算機理解為一個或一組唯一的動作,而不使計算機產(chǎn)生歧義。算法必須有開始和結(jié)束,并且必須保證算法規(guī)定的每個步驟最終都能夠被完成。

下面通過一個例子來說明算法。例如,要交換變量a與變量b的值,計算機本身不能夠直接執(zhí)行這個操作,交換兩個變量值的通用方法是借用第三方變量將其作為臨時變量。具體算法描述如下。

(1)將變量a的內(nèi)容賦值給臨時變量c。

(2)將變量b的內(nèi)容賦值給變量a。

(3)將臨時變量c存放的內(nèi)容賦值給變量b

最終算法可以寫成:

綜上所述,算法實際上是用自然語言描述的一個計算機程序,編寫計算機程序也就是把用某種方式描述的算法通過計算機語言重新描述。

2.數(shù)據(jù)結(jié)構(gòu)

數(shù)據(jù)結(jié)構(gòu)是一種計算機進行存儲和組織數(shù)據(jù)的方式。數(shù)據(jù)很好理解,比如我們?nèi)ベI東西,共花了50元,50就是一個準確的數(shù)據(jù)。在計算機中,數(shù)據(jù)有整數(shù)、實數(shù)、字符串、圖像和聲音等多種類型,而數(shù)據(jù)結(jié)構(gòu)就是指各種類型數(shù)據(jù)之間的相互關(guān)系。常見的數(shù)據(jù)結(jié)構(gòu)有數(shù)組、棧、隊列、鏈表、樹、圖等,如圖1.6所示為一個樹結(jié)構(gòu)。

圖1.6 一個樹結(jié)構(gòu)

3.IDE

IDE是Integrated Development Environment的縮寫,表示集成開發(fā)環(huán)境,它是一種用于提供程序開發(fā)環(huán)境的應(yīng)用程序,一般包括代碼編輯器、編譯器、調(diào)試工具和圖形化用戶界面工具等。例如,用于開發(fā)C#程序的Visual Studio(見圖1.7)、用于開發(fā)Java程序的Eclipse(見圖1.8)等都是集成開發(fā)環(huán)境。

圖1.7 Visual Studio集成開發(fā)環(huán)境

圖1.8 Eclipse集成開發(fā)環(huán)境

4.SDK

SDK是Software Development Kit的縮寫,中文釋義為軟件開發(fā)工具包,它是一個覆蓋面很廣的名詞,可以這么說:輔助開發(fā)某一類軟件的相關(guān)文檔、實例和工具的集合都可以稱為SDK。例如,在使用C#進行開發(fā)之前,需要安裝由微軟公司推出的.NET SDK(.NET軟件開發(fā)工具包)。

5.編譯

編譯是指把計算機語言變成計算機可以識別的二進制語言。由于計算機只識別0和1,所以編譯程序就是把使用計算機語言編寫的程序編譯成計算機可以識別的二進制語言程序的過程。

1.3 C#入門

C#是一種面向?qū)ο蟮木幊陶Z言,主要用于開發(fā)運行在.NET平臺上的應(yīng)用程序。C#的語言體系都構(gòu)建在.NET框架上。由TIOBE編程語言排行榜(見圖1.9)可以看出,C#居于主流編程語言行列,這在一定程度上也說明了C#被越來越多的人所認可和使用。本節(jié)將詳細介紹C#,以及C#與.NET的關(guān)系。

圖1.9 TIOBE編程語言排行榜

1.3.1 C#的發(fā)展

C#是微軟發(fā)布的一種編程語言,主要由Anders Hejlsberg(Delphi和Turbo Pascal語言的設(shè)計者)主持開發(fā),它主要是微軟公司為配合.NET戰(zhàn)略推出的一種編程語言。

輕松一刻:在Java出現(xiàn)之后,Anders Hejlsberg在Borland公司一直郁郁不得志。這時,比爾·蓋茨慧眼識才,三顧茅廬,把Anders Hejlsberg請到了微軟。最開始微軟許以重金,但Anders Hejlsberg不為所動,在清楚Anders Hejlsberg的想法后,比爾·蓋茨答應(yīng)給他一個寬松的環(huán)境——領(lǐng)導(dǎo)VJ++(Visual J++)小組,并提供高額的薪水和紅利獎金。但好景不長,Sun公司認為微軟破壞了Java的跨平臺性,很快微軟就會利用VJ++將Java開發(fā)人員拉攏到它的周圍,而它的VJ++及WFC的很多特性明顯是為Windows平臺設(shè)計的。這樣,Sun公司中止了對微軟的Java授權(quán),而這促使微軟選擇Anders Hejlsberg擔任C#的首席設(shè)計師,從而開發(fā)并設(shè)計了C#。

由于C#本身是為配合.NET戰(zhàn)略推出的,因此其發(fā)展變化一直是與.NET的發(fā)展相輔相成的。C#版本發(fā)展歷程如圖1.10所示。

圖1.10 C#版本發(fā)展歷程

說明:由于C#是與.NET相輔相成的,因此,圖1.10中的C#版本的變化也體現(xiàn)了.NET的版本發(fā)展史,.NET的相關(guān)介紹將在1.3.3節(jié)進行;另外,微軟曾在2006年發(fā)布過.NET 3.0版本,但該版本并沒有對應(yīng)的C#版本推出,使用的還是2.0版本的C#,所以在圖1.10中并沒有體現(xiàn)。

1.3.2 C#的特點

C#的主要特點如下。

·語法簡潔。C#不允許直接操作內(nèi)存,去掉了指針操作。

·徹底地面向?qū)ο笤O(shè)計。C#具有面向?qū)ο笳Z言應(yīng)有的一切特性(封裝、繼承和多態(tài)等)。

·與Web緊密結(jié)合。C#支持絕大多數(shù)的Web標準,如HTML、XML、SOAP等。

·強大的安全性機制。C#可以消除軟件開發(fā)中常見的錯誤(如語法錯誤),.NET提供的垃圾回收器能夠幫助開發(fā)者有效地管理內(nèi)存資源。

·兼容性。因為C#遵循.NET的公共語言規(guī)范(CLS),所以能夠保證與其他語言開發(fā)的組件兼容。

·完善的錯誤和異常處理機制。C#提供了完善的錯誤和異常處理機制,使程序在交付應(yīng)用時能夠更加完善。

1.3.3 .NET Framework的介紹

.NET Framework又稱為.NET框架,是微軟推出的完全面向?qū)ο蟮能浖_發(fā)與運行平臺,有兩個主要組件:公共語言運行時(Common Language Runtime,CLR)和類庫,如圖1.11所示。

圖1.11 .NET Framework的組成

下面分別對.NET Framework的兩個主要組成部分進行介紹。

·公共語言運行時。公共語言運行時負責管理和執(zhí)行由.NET編譯器編譯產(chǎn)生的中間語言代碼,.NET程序執(zhí)行原理如圖1.12所示。公共語言運行時包含兩部分內(nèi)容,分別為CLS和CTS。其中,CLS表示公共語言規(guī)范,它是許多應(yīng)用程序所需要的一套基本語言功能;而CTS表示通用類型系統(tǒng),它定義了可以在中間語言中使用的預(yù)定義數(shù)據(jù)類型,所有面向.NET Framework的語言最終都可以生成基于這些類型的編譯代碼。

圖1.12 .NET程序執(zhí)行原理

說明:中間語言(IL或MSIL,Microsoft Intermediate Language)是使用C#或VB.NET編寫的軟件。只有在軟件運行時,.NET編譯器才將中間代碼編譯成計算機可以直接讀取的數(shù)據(jù)。

·類庫。類庫中有很多編譯好的類,可以直接使用。例如,在進行多線程操作時,可以直接使用類庫中的Thread類;在進行文件操作時,可以直接使用類庫中的IO類等。類庫相當于一個倉庫,這個倉庫裝滿了各種工具,可以供開發(fā)人員直接使用。

1.3.4 C#與.NET Framework

.NET Framework是微軟推出的一個開發(fā)平臺,而C#是專門為與微軟的.NET Framework結(jié)合使用而設(shè)計的一種編程語言。在.NET Framework平臺上進行開發(fā)時,可以使用多種開發(fā)語言,如C#、VB.NET、VC++.NET、F#等,而C#只是其中的一種。

說明:運行使用C#開發(fā)的程序時,必須安裝.NET Framework。.NET Framework可以隨Visual Studio 2017一起安裝,也可以在相關(guān)網(wǎng)站下載單獨的安裝文件進行安裝。

1.3.5 C#的應(yīng)用領(lǐng)域

C#幾乎可用于所有領(lǐng)域,如便攜式計算機、手機或網(wǎng)站等,其主要應(yīng)用領(lǐng)域如下。

·游戲軟件的開發(fā)。

·桌面應(yīng)用系統(tǒng)的開發(fā)。

·智能手機程序的開發(fā)。

·多媒體系統(tǒng)的開發(fā)。

·網(wǎng)絡(luò)系統(tǒng)的開發(fā)。

·RIA應(yīng)用程序的開發(fā)。

·操作系統(tǒng)平臺的開發(fā)。

·Web應(yīng)用的開發(fā)。

例如,視頻播放軟件PPTV桌面版(見圖1.13)、中國工商銀行官方網(wǎng)站(見圖1.14)、國內(nèi)分類信息網(wǎng)58同城官方網(wǎng)站(見圖1.15)、攜程旅行網(wǎng)官方網(wǎng)站(見圖1.16)等項目都是使用C#編寫的。

圖1.13 PPTV播放器

圖1.14 中國工商銀行官方網(wǎng)站

圖1.15 58同城官方網(wǎng)站

圖1.16 攜程旅行網(wǎng)官方網(wǎng)站

很多知名公司都將C#作為其項目開發(fā)的主要語言,比如,中國移動、明日科技、百度、微軟、優(yōu)酷等,如圖1.17所示。

圖1.17 使用C#的知名公司

1.4 Visual Studio 2017的安裝與卸載

Visual Studio 2017是微軟為了配合.NET戰(zhàn)略推出的IDE,同時也是目前開發(fā)C#程序的工具,本節(jié)對Visual Studio 2017的安裝與卸載進行詳細講解。

1.4.1 安裝Visual Studio 2017的必備條件

在安裝Visual Studio 2017之前,首先要了解安裝Visual Studio 2017的必備條件,檢查計算機的軟件和硬件配置是否滿足Visual Studio 2017的安裝要求,具體要求如表1.1所示。

表1.1 安裝Visual Studio 2017的必備條件

1.4.2 安裝Visual Studio 2017

Visual Studio 2017是微軟為了配合.NET戰(zhàn)略推出的IDE,也是開發(fā)C#程序的工具。本小節(jié)以社區(qū)版的Visual Studio 2017安裝為例講解其具體的安裝步驟。

說明:社區(qū)版的Visual Studio 2017是完全免費的。

安裝社區(qū)版的Visual Studio 2017的步驟如下。

步驟1,社區(qū)版的Visual Studio 2017安裝文件是可執(zhí)行文件,其命名格式為“vs_community__編譯版本號.exe”;本書中下載的安裝文件名為vs_community__ 1978667224.1494576159.exe,雙擊該文件開始安裝。

說明:在安裝Visual Studio 2017時,計算機必須安裝有.NET Framework 4.6框架。如果沒有安裝,請先到微軟官方網(wǎng)站下載并安裝。

步驟2,程序跳轉(zhuǎn)到Visual Studio 2017安裝界面,如圖1.18所示,在該界面單擊“繼續(xù)”按鈕。

圖1.18 Visual Studio 2017安裝界面(1)

步驟3,程序加載完成后,自動跳轉(zhuǎn)到安裝選擇項界面,如圖1.19所示,在該界面主要將“通用Windows平臺開發(fā)”、“.NET桌面開發(fā)”和“ASP.NET和Web開發(fā)”這3個復(fù)選框選中,對于其他的復(fù)選框,讀者可以根據(jù)自己的開發(fā)需要確定是否選擇安裝;選擇完要安裝的功能后,在下面“位置”處選擇要安裝的路徑,這里不建議安裝在系統(tǒng)磁盤中,可以選擇一個其他磁盤進行安裝,比如,將其安裝到D盤中。設(shè)置完成后,單擊“安裝”按鈕。

圖1.19 Visual Studio 2017安裝界面(2)

注意:在安裝Visual Studio 2017時,一定要確保計算機處于聯(lián)網(wǎng)狀態(tài),否則無法正常安裝。

步驟4,跳轉(zhuǎn)到安裝進度界面,如圖1.20所示,該界面顯示當前的安裝進度。

圖1.20 Visual Studio 2017安裝界面(3)

步驟5,安裝完成后,自動進入安裝完成界面,如圖1.21所示,在該界面中,可以直接單擊“啟動”按鈕,啟動新安裝的Visual Studio 2017,也可以在系統(tǒng)的開始菜單中,單擊“Visual Studio 2017”選項啟動該開發(fā)環(huán)境。

圖1.21 Visual Studio 2017安裝界面(4)

說明:在安裝完成界面可能會出現(xiàn)一條“Android SDK”警告信息,這條警告信息不影響Visual Studio 2017的正常使用,忽略即可。

如果是第一次啟動Visual Studio 2017,會出現(xiàn)如圖1.22所示提示框,直接單擊“以后再說”,進入Visual Studio 2017主界面。Visual Studio 2017主界面如圖1.23所示。

圖1.22 啟動Visual Studio 2017

圖1.23 Visual Studio 2017主界面

1.4.3 卸載Visual Studio 2017

如果要卸載Visual Studio 2017,可以按以下步驟進行。

步驟1,在Windows 7操作系統(tǒng)中,依次打開“控制面板”→“程序”→“程序和功能”,在打開的窗口中選中“Microsoft Visual Studio 2017”,如圖1.24所示。

圖1.24 添加或刪除程序界面

步驟2,單擊“卸載”按鈕,進入Visual Studio 2017的卸載界面,如圖1.25所示,單擊“Uninstall”按鈕即可卸載Visual Studio 2017。

圖1.25 Visual Studio 2017的卸載界面

1.5 熟悉Visual Studio 2017

本節(jié)對Visual Studio 2017中的菜單欄、工具欄、解決方案資源管理器、“工具箱”窗口、“屬性”窗口和“錯誤列表”窗口等進行介紹。

1.5.1 創(chuàng)建項目

初期學(xué)習(xí)C#語法和面向?qū)ο缶幊讨饕赪indows控制臺應(yīng)用程序環(huán)境下完成,下面將按步驟介紹控制臺應(yīng)用程序的創(chuàng)建過程。

創(chuàng)建控制臺應(yīng)用程序的步驟如下。

步驟1,依次選擇“開始”→“所有程序”→“Visual Studio 2017”,進入Visual Studio 2017起始頁,如圖1.26所示。

圖1.26 Visual Studio 2017起始頁

步驟3,啟動Visual Studio 2017之后,可以通過兩種方法創(chuàng)建項目:一種是在菜單欄中依次選擇“文件”→“新建”→“項目”,如圖1.27所示;另一種是在Visual Studio 2017起始頁選擇“新建項目”模塊中的相應(yīng)命令,如圖1.28所示。

圖1.27 在菜單欄中依次選擇“文件”→“新建”→“項目”

圖1.28 選擇“新建項目”模塊中的相應(yīng)命令

使用其中一種方法創(chuàng)建項目,彈出“新建項目”對話框,如圖1.29所示。

圖1.29 “新建項目”對話框

說明:在圖1.29中選擇“Windows窗體應(yīng)用(.NET Framework)”即可創(chuàng)建Windows窗體應(yīng)用程序。

步驟4,選擇要使用的.NET框架和“控制臺應(yīng)用(.NET Framework)”后,用戶可對要創(chuàng)建的控制臺應(yīng)用程序進行命名、選擇存放位置、是否創(chuàng)建解決方案目錄等的設(shè)定(在命名時可以使用用戶自定義的名稱,也可以使用默認名ConsoleApp1;用戶可以單擊“瀏覽”按鈕設(shè)置項目存放的位置;需要注意的是,解決方案名稱與項目名稱一定要一致),然后單擊“確定”按鈕,完成控制臺應(yīng)用程序的創(chuàng)建。

1.5.2 菜單欄

菜單欄顯示了所有可用的Visual Studio 2017命令,除“文件”“編輯”“視圖”“窗口”“幫助”菜單,還提供編程專用的功能菜單,如“項目”“生成”“調(diào)試”“工具”“測試”等菜單,如圖1.30所示。

每個菜單項中都包含若干個菜單命令,用于執(zhí)行不同的操作。例如,“調(diào)試”菜單包括調(diào)試程序的各種命令,如“開始調(diào)試”“開始執(zhí)行”“新建斷點”等命令,如圖1.31所示。

圖1.30 Visual Studio 2017菜單欄

圖1.31 “調(diào)試”菜單

1.5.3 工具欄

為了操作的方便和快捷,菜單項中常用的命令按功能分組分別放在相應(yīng)的工具欄中。通過工具欄可以快速訪問常用菜單命令。常用的工具欄有標準工具欄和調(diào)試工具欄,下面分別對其進行介紹。

(1)標準工具欄包括大多數(shù)常用的命令按鈕,如“新建項目”“添加新項”“打開文件”“保存”“全部保存”等。Visual Studio 2017標準工具欄如圖1.32所示。

圖1.32 Visual Studio 2017標準工具欄

(2)Visual Studio 2017調(diào)試工具欄包括對應(yīng)用程序進行調(diào)試的快捷按鈕,如圖1.33所示。

圖1.33 Visual Studio 2017調(diào)試工具欄

說明:在調(diào)試程序或運行程序的過程中,通??捎靡韵?種快捷鍵來操作。

●按下〈F5〉快捷鍵實現(xiàn)調(diào)試運行程序;

●按下〈Ctrl+F5〉快捷鍵實現(xiàn)不調(diào)試運行程序;

●按下〈F11〉快捷鍵實現(xiàn)逐語句調(diào)試程序;

●按下〈F10〉快捷鍵實現(xiàn)逐過程調(diào)試程序。

1.5.4 解決方案資源管理器

解決方案資源管理器(見圖1.34)提供項目及文件的視圖,并且提供對項目和文件相關(guān)命令的便捷訪問。與此窗口關(guān)聯(lián)的工具欄提供了適用于列表中突出顯示項的常用命令。若要訪問解決方案資源管理器,可以通過依次選擇“視圖”→“解決方案資源管理器”打開。

圖1.34 解決方案資源管理器

1.5.5 “工具箱”窗口

工具箱是Visual Studio 2017的重要工具,每一個開發(fā)人員都必須對這個工具非常熟悉。工具箱提供了進行C#程序開發(fā)所必需的控件。通過使用工具箱,開發(fā)人員可以方便地進行可視化的窗體設(shè)計,簡化程序設(shè)計工作,提高工作效率。根據(jù)控件功能的不同,可以將工具箱劃分為10個欄目,如圖1.35所示。

說明:“工具箱”窗口在Windows窗體應(yīng)用程序或ASP.NET網(wǎng)站應(yīng)用程序中才會顯示,在控制臺應(yīng)用程序中沒有“工具箱”窗口,圖1.35中顯示的“工具箱”是Windows窗體應(yīng)用程序中的“工具箱”窗口。

單擊某個欄目,則會顯示該欄目下的所有控件,如圖1.36所示。當需要某個控件時,可以通過雙擊所需要的控件直接將控件加載到Windows窗體中,也可以先單擊選擇需要的控件,再將其拖到Windows窗體中。

圖1.35 “工具箱”窗口

圖1.36 展開后的“工具箱”窗口

1.5.6 “屬性”窗口

“屬性”窗口是Visual Studio 2017中的另一個重要工具,該窗口為C#程序的開發(fā)提供了簡單的屬性修改方式。Windows窗體中各個控件的屬性都可以在“屬性”窗口進行設(shè)置。“屬性”窗口不僅提供了屬性的設(shè)置及修改功能,還提供了事件的管理功能?!皩傩浴贝翱诳梢怨芾砜丶氖录?,以便在編程時對事件進行處理。

另外,“屬性”窗口采用了兩種方式管理屬性和方法,分別為按分類方式和按字母順序方式,讀者可以根據(jù)自己的習(xí)慣采用不同的方式。在“屬性”窗口下方還有簡單的幫助,方便開發(fā)人員對控件的屬性進行操作?!皩傩浴贝翱诘淖髠?cè)是屬性名稱,右側(cè)是屬性值?!皩傩浴贝翱谌鐖D1.37所示。

圖1.37 “屬性”窗口

1.5.7 “錯誤列表”窗口

“錯誤列表”窗口對代碼中的錯誤可以進行即時提示并提供可能的解決方法。例如,某句代碼結(jié)束處沒有分號,“錯誤列表”窗口中會顯示如圖1.38所示的錯誤?!板e誤列表”窗口就像一個錯誤提示器,它可以將程序中的錯誤代碼及時地顯示給開發(fā)人員,開發(fā)人員可以通過提示信息找到相應(yīng)的錯誤代碼。

圖1.38 “錯誤列表”窗口

說明:雙擊錯誤列表中的某項,Visual Studio 2017會自動定位到發(fā)生錯誤的代碼。

1.6 小結(jié)

本章首先對軟件及軟件開發(fā)的相關(guān)概念進行了簡單介紹,然后對C#的發(fā)展歷史、C#與.NET Framework的關(guān)系及C#的應(yīng)用領(lǐng)域進行了介紹,最后重點講解了Visual Studio 2017的安裝及使用。在學(xué)習(xí)本章時,應(yīng)該重點掌握Visual Studio 2017的安裝過程,以及如何使用Visual Studio 2017。

主站蜘蛛池模板: 溆浦县| 赤峰市| 邵武市| 清丰县| 平谷区| 正镶白旗| 申扎县| 揭西县| 崇文区| 灌云县| 昭觉县| 波密县| 德令哈市| 安陆市| 温宿县| 牙克石市| 中山市| 曲阳县| 乌兰浩特市| 冷水江市| 大荔县| 东乌珠穆沁旗| 丹棱县| 台湾省| 无极县| 司法| 宣武区| 南溪县| 十堰市| 安徽省| 苏尼特右旗| 交城县| 嘉善县| 通州区| 禹城市| 江源县| 梁平县| 松原市| 安福县| 玛多县| 房山区|