描述
內容簡介
C# 最強入門 邁向頂尖高手之路 王者歸來 ★★★★★【國內第1本最新 C# 語法】★★★★★ ★★★★★【最完整的 C# 基礎語法】、【最徹底物件導向觀念】★★★★★ ★★★★★【最強視窗設計專案實戰】★★★★★ 本書特色如下: 1:國內第1本使用最新C#語法,完整介紹入門到物件導向程式設計。 2:國內第1本依序介紹基礎語法、物件導向、視窗設計、LINQ、大型程式的多表單設計、高階應用的C#。 3:國內第1名,C#內容最廣,功能介紹最完整,共有38個章節。 4:國內第1名,程式實例最多,共有1025個程式實例。
多次和資訊教育界閒談,大家公認C#是非常重要的程式語言,也是資訊科系的學生或是工程師必備的程式語言。閒聊中大家也一至獲得結論,C#不容易學習,許多人學習C#都感到很辛苦,原因如下: 1:市面上的書籍沒有從C#基礎語法開始介紹。 2:使用舊語法解說C#,C#已經進化到最上層語句觀念(Top-level statement),幾乎沒有任何書籍介紹或說明。 3:C#其實是物件導向語言,國內書籍書籍內容對於C#語言物件導向觀念講解太粗淺。 4:C#是博大精深的程式語言,市面上書大多是在讀者尚未了解C#的觀念與精神時,就使用視窗程式做介紹,所造就的只是不紮實的結果。 5:C#經過20年的發展,已經進化到10.0版,許多新的語法,書籍皆沒有介紹,買了一些書辛苦好幾個月閱讀,好像書中內容都會了,學完也無法進入C# 實戰世界,一到網路看專家所寫的程式通通不懂。 本書以約 1025 個程式實例,講解紮實的 C# 語法,讀者研讀完此書,相信可以學會下列知識: ☆ 認識最新語法:最上層語句 ★ using指示詞與陳述式的用法 ☆ 實質資料與參照資料 ★ ?與null ☆ ??與??=運算子 ★ var宣告 ☆ object、dynamic資料類型 ★ 裝箱(Boxing)與拆箱(Unboxing)的記憶體說明 ☆ 獨家解說C# 元組Tuple意義與應用 ★ 隱式(implicit)與顯示(explicit)強制轉換資料類型。 ☆ 匿名資料Anonymous Type、匿名陣列Anonymous、Array匿名方法 Anonymous Method ★ 表達式主體方法Expression-bodied Method ☆ 自行定義方法Extension Method ★ 列舉(enum)、結構(struct)、類別(class)與物件 ☆ 靜態類別、靜態方法與靜態欄位 ★ 物件的建構、屬性與封裝 ☆ 欄位(field)與屬性(property)的關係 ★ 繼承與多型 ☆ 靜態綁定(static binding)、動態綁定(dynamic binding) ★ 分層繼承(Hierarchical Inhertance)、多層次繼承(Multi-Level Inhertance) ☆ 繼承IS-A和HAS-A關係、聚合(Aggregation)和組合(Composition) ★ 執行期的多型(Runtime Polymorphism)和向上轉型(Upcasting) ☆ 抽象類別、使用場合、專題實作與應用 ★ 介面(Interface)、虛擬介面方法(Virtual interface method) ☆ 索引子indexer ★ 委派Delegate、Multicast delegate、Generic delegate、Func delegate、Action delegate、Predicate delegate ☆ Lambda ★ 集合與泛型集合 ☆ 認識IEnumerable、IComparer、ICollection、IDictionary ★ 程式除錯與異常管理 ☆ 視窗設計:認識object sender和EventArgs e參數 ★ 事件(event)與共用事件、滑鼠事件、鍵盤事件 ☆ Items Collection Editor ★ 靜態與動態影像 ☆ 水平/垂直壓縮與解壓縮影像 ★ 靜態與動態影像 ☆ 認識、讀取與輸出Rich Text Format格式檔案、設計文書編輯程式 ★ 檔案輸入與輸出 ☆ 語音與影片 ★ 獨家指出C# 語法的缺點與改良此缺點的實例 為了讀者學習C#可以實作應用,本書講解語法時,同時輔助許多專案實作的應用,讀者可以從本書學會下列專題實例: ★ BMI指數系統 ☆ 銀行貸款系統 ★ 咖啡館銷售管理系統 ☆ 飛舞的蝴蝶 ★ 旅館或民宿訂房系統 ☆ 卡拉OK、電子琴程式 ★ 完整函數索引,未來可以隨時查閱
|
作者簡介
|
目錄
第1章:認識C#語言
1-1:認識C# 1-2:認識.NET 1-3:C#從編譯到執行的觀念 1-4:Visual Studio的版本 1-5:認識方案、專案和程式 1-6:主控台的應用程式類別 1-7:本書的專案內容 1-8:建立、關閉與開啟方案實例 1-9:建立 .NET 6.0的方案 1-10:檢視方案資料夾
第2章:設計我的第一個C#程式 2-1:解析 .NET Framework的C#語言結構 2-2:解析 .NET 6.0的C#語言結構 2-3:不使用最上層語句(Top-level statements)
第3章:資料型態與變數 3-1:變數名稱的使用 3-2:變數的宣告 3-3:基本資料類型 3-4:整數資料類型 3-5:浮點數資料類型 3-6:字元資料類型 3-7:字串資料類型 3-8:布林值資料類型 3-9:object資料類型 3-10:dynamic資料類型 3-11:變數的預設值default 3-12:資料類型的轉換 3-13:const常數變數 3-14:?與null 3-15:實值資料類型與參照資料類型
第4章:運算式與運算子 4-1:程式設計的專有名詞 4-2:算術運算 4-3:不同資料類型混合應用 4-4:遞增和遞減運算式 4-5:複合運算式 4-6:專題 – 圓周率/計算圓柱體積
第5章:位元運算 5-1:Convert.ToString( )方法 5-2:位元運算基礎觀念 5-3:& 運算子 5-4:| 運算子 5-5:^ 運算子 5-6:~ 運算子 5-7:<< 運算子 5-8:>> 運算子 5-9:運算子優先順序
第6章:輸入與輸出 6-1:Console.WriteLine( ) 6-2:Console.Write( ) 6-3:Console.Read( )/Console.ReadKey( )/Console.ReadLine( ) 6-4:其他常用的螢幕方法 6-5:資料的轉換 6-6:日期格式的轉換 6-7:Math類別 6-8:專題 – 複利/殘值/到月球/點的距離/貸款/圓周率/雞兔同籠
第7章:程式的流程控制 7-1:關係運算子 7-2:邏輯運算子 7-3:完整C#運算子優先順序表 7-4:if敘述 7-5:if … else敘述 7-6:if … else if … else敘述 7-7:與流程控制有關的特殊運算式 7-8:switch 敘述 7-9:goto 敘述 7-10:專題 – BMI指數/閏年計算/生肖系統/火箭升空
第8章:程式的迴圈設計 8-1:for迴圈 8-2:while迴圈 8-3:do … while迴圈 8-4:迴圈的選擇 8-5:break敘述 8-6:continue敘述 8-7:隨機數Random類別 8-8:休息方法 8-9:專題 – 計算成績/圓周率/歐幾里德演算法/國王的麥粒/計時器
第9章:陣列 9-1:一維陣列 9-2:二維陣列 9-3:更高維的陣列 9-4:匿名陣列 9-5:foreach遍歷陣列 9-6:Array類別 9-7:不規則陣列 9-8:排序原理與實作 9-9:專題 – Fibonacci數列/魔術方塊/不規則陣列
第10章:字元和字串的處理 10-1:字元Char類別 10-2:字元Char類常用的方法 10-3:字元陣列與字串 10-4:字串String類別 10-5:字串String類常用的方法 10-6:StringBuilder類別 10-7:StringBuilder類常用的方法 10-8:專題 – 字元分類/模擬帳號輸入/輸出鍵值/計算字元數
第11章:集合 11-1:認識.NET的集合 11-2:System.Collections命名空間 11-3:動態陣列ArrayList 11-4:哈希表HashTable 11-5:專題 – 星座密碼/依照鍵排序
第12章:函數的應用 12-1:函數的體驗 12-2:函數的主體 12-3:函數的回傳值return 12-4:一個程式有多個函數的應用 12-5:遞迴函數的呼叫 12-6:陣列資料的傳遞 12-7:命令列的輸入 12-8:全域變數與區域變數 12-9:Expression-Bodied Method 12-10:dynamic函數與參數 12-11:專題 – 抽獎程式/遞迴/陣列與遞迴/歐幾里德演算
第13章:結構struct 13-1:結構資料型態 13-2:宣告結構變數 13-3:建立結構資料 13-4:設定結構物件的內容給另一個結構物件 13-5:巢狀的結構 13-6:C# 結構struct的特色 13-7:建立結構物件 13-8:結構資料與陣列 13-9:struct的建構(Constructor)方法 13-10:資料封裝 - 結構的set和get 13-11:readonly欄位 13-12:with關鍵字 13-13:專題 – 找出最高分姓名和分數/輸出學生資料
第14章:列舉enum 14-1:定義列舉enum的資料型態宣告變數 14-2:定義列舉enum元素的整數值 14-3:列舉的轉換 14-4:專題 - 列舉enum使用目的/百貨公司折扣
第15章:時間和日期 15-1:DateTime的建構方法與屬性 15-2:輸出日期與時間格式 15-3:DateTime的方法 15-4:文化特性CultureInfo類別 15-5:TimeSpan的建構方法與屬性 15-6:DateTime和TimeSpan的混合應用 15-7:TimeSpan類別常用的方法 15-8:專題 – var與算術運算子/設計休息秒數函數/時鐘
第16章:類別與物件 16-1:認識物件與類別 16-2:定義類別與物件 16-3:類別的基本實例 16-4:struct實值類型與class參照類型 16-5:類別的方法 16-6:類別含多個物件的應用 16-7:再談方法(method) 16-8:變數的有效範圍 16-9:部分類別 16-10:專題– 矩形面積/員工資料/運算式主體方法
第17章:物件的建構、屬性與封裝 17-1:建構方法(Constructor) 17-2:重載 (Overload)定義 17-3:類別成員的訪問權限 – 封裝(Encapsulation) 17-4:屬性(Property)成員 17-5:類別的唯讀和常數欄位 17-6:靜態static關鍵字 17-7:索引子(indexers) 17-8:專題 – 數學/銀行存款與提款/NBA人數統計/星期索引
第18章:繼承與多型 18-1:繼承(Inheritance) 18-2:IS-A和HAS-A關係 18-3:C# 程式碼太長的處理 18-4:多型(Polymorphism) 18-5:靜態綁定(Static Binding)與動態綁定(Dynamic Binding) 18-6:巢狀類別(Nested classes) 18-7:sealed類別 18-8:專題 – 薪資計算/面積計算/多型實例/覆寫ToString( )
第19章:抽象類別(Abstract) 19-1:使用抽象類別的場合 19-2:抽象類別基本觀念 19-3:抽象方法的基本觀念 19-4:抽象類別與抽象方法觀念整理 19-5:抽象類別的建構方法 19-6:執行期多型應用到抽象類別 19-7:專題 – 數學計算/正方形面積計算/多型應用
第20章:介面(Interface) 20-1:認識介面Interface 20-2:介面實例 20-3:顯式繼承(Explicit Implementation) 20-4:介面屬性實作 20-5:多重繼承與實作 20-6:預設介面方法 20-7:專題 – 相同抽象方法/交易記錄/交通工具
第21章:認識泛型 21-1:從重載(Overload)定義說起 21-2:認識泛型 21-3:泛型類別 21-4:泛型類別 – 欄位與屬性 21-5:泛型類別 - 方法 21-6:一般類別含有泛型方法 21-7:泛型方法重載 21-8:專題 – 建立與輸出陣列/模擬堆疊
第22章:泛型集合 22-1:System.Collections.Generic 22-2:List串列 22-3:Stack堆疊 22-4:Queue佇列 22-5:LinkedList鏈結串列 22-6:SortedSet集合 22-7:SortedList集合 22-8:SortedList集合 22-9:SortedDictionary集合
第23章:元組(Tuple) 23-1:元組的功能 23-2:元組宣告 23-3:存取元組元素內容 23-4:建立巢狀元組 23-5:設定元素名稱 23-6:元組賦值設定 23-7:將元組應用到==和!=符號 23-8:元組當作方法的參數傳遞 23-9:元組當作方法的回傳值
第24章:程式除錯與異常處理 24-1:程式異常 24-2:C# 的異常訊息 24-3:設計多組異常處理程序 24-4:捕捉所有異常 24-5:丟出異常 24-6:建立自己的異常名稱 24-7:程式除錯的典故 24-8:專題 – 參數是null的異常/銀行密碼長度測試/溫度異常
第25章:正則表達式Regular Expression 25-1:正則表達式基礎 25-2:正則表達式的特殊字元 25-3:IsMatch( )方法的萬用程式與功能擴充 25-4:找出第一個符合搜尋的內容Regex.Match( ) 25-5:找出所有符合搜尋的內容Regex.Matches( ) 25-6:字串修改Regex.Replace( ) 25-7:正則表達式的分割Regex.Split( ) 25-8:專題 – 國際品牌/隱藏號碼/刪除稱謂/網址測試/資訊加密
第26章:委派Delegates 26-1:認識委派(Delegate) 26-2:委派操作 26-3:委派當作方法的參數 26-4:多播委派(Multicast Delegate) 26-5:泛型委派(Generic Delegate) 26-6:匿名方法應用在委派 26-7:Func委派 26-8:Action委派 26-9:Predicate委派
第27章:Lambda表達式 27-1:Lambda表達式定義 27-2:Lambda基礎語法 27-3:Lambda基礎實例 27-4:Lambda就是委派指定參考的匿名方法 27-5:Lambda運算式轉換成delegate委派類型 27-6:外在變數對Lambda表達式的影響 27-7:專題 – 隨機數/圓面積/基礎數學/建立帳號
第28章:事件(Event) 28-1:認識事件 28-2:第一個C# 事件與處理程式 28-3:C# 內建事件處理程式委派 28-4:傳遞事件資料 28-5:傳送自定義時間資料 28-6:專題 – 數字設定觸發事件
第29章:基礎Windows視窗設計 29-1:建立新的專案 29-2:認識Visual Studio視窗環境 29-3:檢視ch29_1資料夾 29-4:認識主要視窗區域 29-5:工具箱 29-6:新增或刪除表單 29-7:表單屬性 29-8:表單事件 29-9:解析Windows Forms視窗專案程式 29-10:在表單內建立與佈局控制項 29-11:專題 – 用程式設計屬性/對話方塊/多個表單
第30章:表單基礎控制項設計 30-1:控制項設定知識的複習 30-2:Button功能鈕 30-3:Label標籤 30-4:TextBox文字方塊 30-5:MessageBox訊息方塊 30-6:RadioButton選項鈕 30-7:CheckBox核取方塊 30-8:容器 - GroupBox群組方塊 30-9:容器 – Pane面板控制 30-10:ListBox清單 30-11:ComboBox下拉式方塊 30-12:CheckedListBox核取方塊清單 30-13:滑鼠事件 30-14:鍵盤事件
第31章:靜態影像邁向動態影像設計 31-1:PictureBox圖片方塊 31-2:影像應用在表單背景 31-3:影像應用在Button 31-4:標籤內含影像 31-5:ImageList影像串列 31-6:Timer計時器控制項 31-7:專題 – 飛舞的蝴蝶
第32章:常用的控制項 32-1:ToolTip提示說明 32-2:DateTimePicker日期和時間挑選器 32-3:MonthCalendar月曆 32-4:NumericUpDown控制項 32-5:共用事件
第33章:建立功能表和工具列 33-1:MenuStrip功能表 33-2:ContextMenuStrip快顯功能表 33-3:ToolStrip工具列 33-4:StatusStrip狀態列
第34章:常用對話方塊的應用 34-1:FontDialog對話方塊 34-2:ColorDialog色彩對話方塊 34-3:OpenFileDialog開啟檔案對話方塊 34-4:SaveFileDialog儲存檔案對話方塊 34-5:RichTextBox豐富文字方塊
第35章:檔案輸入與輸出 35-1:認識System.IO類別 35-2:資料夾的操作 35-3:檔案的操作 35-4:匯流排的輸入與輸出 35-5:檔案複製與移動實作
第36章:語音與影片 36-1:Console.Beep( ) 36-2:SystemSounds類別 36-3:SoundPlayer類別 – 播放wav檔案 36-4:Windows Media Player – 播放MP3檔案 36-5:Windows Media Player – 播放MP4檔案
第37章:LINQ 37-1:認識LINQ 37-2:LINQ語法 37-3:LINQ常用方法
第38章:大型程式 – 多表單設計 38-1:表單架構 38-2:建立多表單的專案 38-3:更改表單的名稱 38-4:操作多表單的方法 38-5:建立MDI子表單
附錄A:下載、安裝與解除安裝Visual Studio(電子書) 附錄B:ASCII碼值表(電子書) 附錄C:專有名詞索引表(電子書) 附錄D:關鍵字與函數庫索引表 附錄E:RGB色彩表(電子書)
|
序
|