Download presentation
Presentation is loading. Please wait.
1
Visual Studio IDE基本操作 建國科技大學 資管系 饒瑞佶
2
Visual Studio家族
3
VS IDE支援的作業系統版本 Windows 新舊版基本上可以相容在一台電腦內 MAC
4
Visual Studio IDE
5
Visual Studio for Mac
6
Setup and Install Visual Studio for Mac
7
Visual Studio IDE for Windows 下載 目前版本2017
8
VS IDE 選項功能區 方/專案管理區 工具區 編輯區 屬性區 訊息區
9
VS IDE可以開發的程式類型 單機程式:稱為Windows Form(含Console)
網頁程式:稱為One ASP.NET (包含Web Form、MVC、Web Service、Web API、WCF等) APP:透過外掛模組(Xamarin)來進行(含Web App、Android或iOS) 函式庫或元件
10
VS IDE開發觀念 不論使用那一種語言,都可以使用同一套IDE,同樣的開發方式來 開發Windows Form、Web Form或App等程式 支援多種語言
11
啟動VS IDE與 建立Windows Form專案
12
VS 2015 Pro啟始畫面
13
新增方案(Solution) .NET Framework版本 程式類型選擇 語言與程式範本選擇區 為方案建立目錄 專案名稱與位置設定區
14
.NET Framework各版本功能示意圖
15
方案(Solution) vs. 專案(Project)
程式是以方案(.sln)的方式被建立 預設是一個方案一個專案(.csproj) 方案中可以開設多個不同專案 專案與專案間可以溝通與共用 基本上所有的開發都是以方案帶專案的類型存在(例如封 裝程式、函式庫等也是以專案方式存在)
16
Windows Form方案建立後預設畫面
預設就有一個標準空白視窗
17
方/專案對應的實體目錄 方案根目錄 專案編譯後檔案所在 方案內檔案與目錄 專案相關設定檔案 方案起始檔案 專案目錄 專案起始設定檔案
18
VS IDE常用視窗 方案總管 工具箱 介面與程式編輯區 屬性
19
檢視可以找到所有視窗 視窗定位與控制
20
介面開發 相對簡單 主要要考量定位與縮放的問題 預先拖曳或動態產生 設定物件或控制項屬性值 工具箱 屬性 使用者介面
拖曳進來就可以 屬性 使用者介面 這裡都是來自於類別的物件或稱為控制項(Control)
21
程式碼編輯 程式 介面
22
事件驅動event driven 更多事件
23
方案的檔案結構 顯示所有檔案 與實體目錄是一對一的
24
方案中各檔案功能 專案參考外部資源 專案相關設定儲存檔案 專案程式(副檔名會因為語言而不同) 專案啟動設定檔 表單物件設定檔 表單資源設定檔
25
介面設計 Windows Form中有介面的視窗稱為表單 (Form) 表單是一個大容器,可以置入其他物件 或控制項,組合成使用者介面
這些物件的組合都被定義在.Designer.cs 檔案中
26
.Designer.cs檔 介面上控制項的事件設定 介面上使用的控制項設定
27
物件(控制項) MS已經定義與建置完成的一組類別或物件 協助開發者快速建立需要的使用者介面與功能
預設都有一個唯一的識別名稱Name,作為程式存取的依據 這些物件可以再透過物件導向方式被改寫或利用,以創造出新的 或需要的物件 工具箱中顯示的是常用或預設物件,更多的物件可以從「工具 選擇工具箱項目」中取得
28
工具選擇工具箱項目
29
新增工具箱物件 還有Component、UserControl與Custom Control可以建立工具箱控制項
30
程式操作物件 配合事件驅動 物件名.屬性 物件名.方法()
31
按鈕程式碼 VS IDE具備有智慧提示功能(IntelliSense) 物件名.屬性
32
執行程式 Program.cs中可設定首頁 執行模式
33
建置設定
34
Debug/Release模式
35
專案屬性視窗
36
程式偵錯
37
程式碼片段 好用的功能 可以自行增加定義
38
建立以下code 來自於程式碼片段
39
F11可以看到整個專案的逐步執行過程 從Program.cs開始執行 尚未看到變數x
40
設定中斷點
41
追蹤中斷點 F5執行 F10/F11逐步執行
42
顯示資訊語法 Console.WriteLine("Parent Name: " + this.Name);
MessageBox.Show();方法 在[輸出]視窗中顯示
43
查看/移至定義
44
診斷工具
45
記憶體檢視 可以拉動這兩個bar 選擇要分析的時間區間 需要先中斷 選取快照 可以看到內容
46
檢視CPU使用量
47
錯誤預防與攔截 用 try-catch-finally 來確保程式不會死當 try {
sqldb.SqlConnection dbconn; dbconn=new sqldb.SqlConnection(constr); . } catch (Exception ex) MessageBox.Show("Data Error: " + ex.Message); finally{
48
其他IDE使用技巧
49
快速排版 Ctrl-K + Ctrl-D
50
行號/Ctrl+滾動滑鼠放大縮小
51
工具
52
外觀樣式 工具選項環境
53
註解與隱藏 註解 隱藏
54
加入結構輔助線Indent Guidline
VS2107預設就有 VS2105需要安裝擴充功能
55
安裝後需要重啟VS
56
result
57
編輯程式碼
58
整體程式碼架構 引用區 名稱空間 類別與繼承 事件、方法與屬性
59
程式碼結構 透過namespace引用其他類別 類別所在位置 類別範圍
60
方法結構 事件名稱(嚴格來說是方法名稱) 參數 方法 物件
61
事件或方法 有沒有發現顏色不同 修飾詞 決定開放程度 回傳值型態 Void表示不回傳 事件或方法名稱 決定範圍 程式碼寫在這裡面
也會決定變數(物件)可見範圍 參數 不一定有 有沒有發現顏色不同
62
事件Object Sender與EventArgs e參數
private void button1_Click(object sender, EventArgs e) { button2_Click(sender,e); } private void button2_Click(object sender, EventArgs e) MessageBox.Show(((Button)sender).Name.ToString());
63
前頁的功能也可以從.Designer.cs做設定
64
這樣的做法可以變成只有一個事件
65
事件與方法的刪除 如果已經出現事件區塊,直接刪除事件區塊程式會 有錯誤,因為在屬性與.Designer.cs檔案中已經註冊 該事件
66
引用名稱空間
Similar presentations