C#開發寶典 ( 簡體 字) |
作者:匡松 張淮鑫 | 類別:1. -> 程式設計 -> .NET -> C# |
譯者: |
出版社:中國鐵道出版社 | 3dWoo書號: 27841 詢問書籍請說出此書號!【缺書】 【不接受訂購】 |
出版日:10/1/2010 |
頁數:680 |
光碟數:1 |
|
站長推薦:  |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
【不接受訂購】 |
ISBN:9787113115951 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言:C#程序設計語言,起源于C/C++語言,吸收了大量Java語言的精華,基于微軟優秀的.NET平臺,可以說是現代編程語言的集大成者,最值得研究和學習。 同時,大多數理工科學生在校都學習過一門編程語言,比如C語言或者C++語言,在此基礎上,理解和學習C#的程序設計技術,就變得相當容易。隨著信息技術深刻地應用到各個領域,從現在到未來很長一段時間,與C#技術相關的職位需求會變得越來越多,因此廣大的理工科專業學子需要及時補充學習C#的開發技巧。這樣,不但可以為將來的求職打好堅實的基礎,也可以熟練地應用于自己未來的工作中。 C#/ASP.NET程序員招聘技能要求匯總 排除學歷的基本要求,學習能力等軟性要求之外,我們把上百家公司的ASP.NET和C#程序員招聘要求匯集在一起,并進行合并歸類,綜合得到下面的技術技能要求。 (1)語言方面,C#要求非常熟練。 (2)熟悉.NET框架,熟練掌握ASP.NET基本開發技能,有一定的項目開發技能和經歷。 (3)數據庫方面,既然是微軟平臺,應熟練掌握SQL Sever的設置、使用和開發。典型的招聘語句是:“熟練掌握SQL Server,熟練編寫T-SQL語句,了解SQL性能優化。”另外,對于其他數據庫,如Oracle和MySQL,也得有一定的了解。 上述三項,可以說是招聘的必然要求,我們需要勤學勤練達到熟練的程度,最好能帶上自己的中小型項目前去演示。本書的內容安排也基本圍繞這三項基本要求而來。 除了上述三項必知必會技能之外,在林林總總的招聘要求中,還有一些特殊的要求,如果你學習和掌握了,應該會使得你的面試更加順利,因為你的技能儲備比別人多,在競爭中可以脫穎而出。 (1)熟悉JavaScript腳本語言、熟練使用Ajax技術。Ajax技術的強大,每個Web開發程序員都需要學習它,使用它。 (2)精通XML,能基于DIV+CSS構建頁面。因為如果你懂得更多,你的就業機會就會更多。 (3)熟練掌握.NET開發框架,熟悉.NET MVC/MVP編程架構;理解面向對象(OO)編程思想,熟悉常用的設計模式,熟悉UML。這個要求看起來比較空泛,實際上,如果你達到這些要求,你的編程水平將有很大的提升。 (4)熟悉Flash或Silverlight中至少一種開發技術,具備一般網頁動畫的開發能力。未來是RIA的開發世界,儲備這方面的技能,絕對不吃虧。 (5)雖然大多數C#和ASP.NET軟件工程師的招聘,都是進行Web開發,但也有個別崗位需要進行C/S開發,典型的招聘要求是“C#工程師:熟悉C#編程,熟悉C/C++優先;熟悉TCP/IP,熟悉C# Socket編程;熟悉WPF優先考慮。”一般來說,學習C#之前,我們已經學習過C/C++,而這些崗位要求,往往不過一本書的內容,買一本書有空看看,面試前突擊一下,應該很容易就通過面試。招聘者也明白,這些東西,邊用邊學都來得及,不會特別難為你。 如何成長為專業C#/ASP.NET程序員 總結完這些技能要求,我們計算了一下,完全掌握三項基本技能,就是從零開始,肯下苦功,能靜下心來學習和練習3個月到6個月,完全沒有問題。讀者可以先嘗試,每天先花2小時看書,然后上機調試程序,可能不用一個月,你的C#就很熟練了。再在這個基礎上繼續前進,學習后面的技能即可。 本書根據上述職位分析結果,精心設計了一個專業C#/ASP.NET的學習流程,也就是本書的基本學習內容: (1)C#語法基礎,也就是基本數據類型,順序、選擇、循環等基本程序結構的語法,如果讀者有一門程序設計語言的基礎,可以輕松掌握,即使沒有基礎,閱讀本書和不斷上機實踐書中案例,也可以輕松掌握。 (2)C#面向對象程序設計語法,從建立類和對象的基本概念講起,到繼承、接口等高級語法,一步一步讓讀者建立面向對象程序設計的基本概念,掌握精髓,熟悉C#所有的特色語法。 (3)C#的Windows程序設計,Windows開發之初,并沒有提供一個完全面向對象的開發接口,采用C++開發Windows程序是一個非常復雜的過程,而.NET框架封裝了Windows底層的細節,對應用程序提供了WinForm類庫,因此用C#編寫Windows程序,變得相當容易,基本只是類組件的拖放,讀者可以通過本篇內容,不但學習Windows應用的開發,還可以熟悉鞏固前面學到的C#語法。 (4)Web開發,未來是Web開發的時代,微軟通過ASP.NET技術提供了一套Web開發工具,而采用C#語言的ASP.NET開發,是主流的開發方法之一。在本書5篇中,讀者將學會這些基礎技能,為后面的學習和技能的進一步提高打下基礎。 (5)項目案例。一些相當于畢業設計的項目案例,總能提升讀者的開發水平,而大多數程序員,通過這樣的中小型案例,可以綜合自己的系統分析、程序設計和調試能力,有經驗的程序員,都是通過一個一個項目案例積累起來豐富的經驗,從而總結出思考問題的方式。本書提供的項目案例,讀者可以先完成其中一個,總結之后,舉一反三,想想可以應用在哪些開發領域。然后了解其他開發項目的需求,想想若自己來實現將會如何做,然后再看看作者的實現,這樣的學習效果更好。 在開發過程中,除了技術上掌握的硬實力之外,我們也要不斷在學習過程中發展自己的軟實力。所以,最后我們看看一般公司招聘中的特別要求——“素質要求”,你想想看,自己在這些軟性技能方面做得如何,有沒有提高的空間: (1)思維能力:面對非常棘手的問題,能夠恰當地運用已有的概念、方法、技術等多種手段,分析問題產生的原因,找出最有效的應對辦法。 (2)團隊合作:愿意幫助其他成員解決遇到的問題,無保留地將自己所掌握的知識與技能傳授給其他成員;所以讀者學習的時候,最好找幾個同學一起學習,嘗試訓練團隊開發能力。 本書學習說明 我們按照上述學習流程組織完成本書初稿,發現篇幅有些多,考慮到有些語法內容,比如順序、選擇、循環等語法結構,大多數程序設計語言都差不多,而學習C#的讀者,大多數已經有了這方面的經驗,就把這樣的語法內容和一些不太常用的不是最重要的語法內容,作為電子書,放到了本書光盤之中,這樣既保證整體圖書知識的系統性,同時,減少了篇幅,降低了本書定價,將更多的實惠奉送給讀者。 對于基本語法,大多數程序員的成功經驗是,一定要自己上機輸入程序,一一調試,學習效果才會更好。當然,對項目開發來說,本書只講解了關鍵代碼,全部的代碼還需要讀者細細鉆研,甚至自己修改代碼,改變功能,來調試代碼,達到更好的學習效果。所以,本書提供了第23章∼第27章的系統開發項目代碼。 多媒體教學是一種新興的教學形式,C#的學習者,將來大多會參加ASP.NET的開發工作,為了配合本書的內容,我們還在光盤中提供了由斯琴巴圖老師講解的、20多小時的ASP.NET開發教學視頻。 |
內容簡介:本書對C#編程的所有知識進行了全面介紹,共分為6篇:第1篇是C#語言簡介與開發環境,介紹了C#的特點和如何建立C#學習開發環境;第2篇和第3篇是C#語言程序設計基礎和關鍵技術,介紹了C#語言從基礎知識到面向對象技術的所有內容,應有盡有。第4篇是Windows窗體程序設計,介紹如何使用C#編寫Windows應用程序,以及如何部署它們。第5篇是Web開發,描述Web應用程序的開發、Web服務和Web應用程序的部署。第6篇是項目實戰,通過這些典型案例的學習,讀者可以積累綜合的開發能力。 |
目錄:第1篇 C#語言簡介與開發環境 第1章 C#簡介 1.1 發展歷程...... 2 1.1.1 起源...... 2 1.1.2 C# 2.0...... 2 1.1.3 C# 3.0...... 4 1.1.4 C# 3.5...... 4 1.1.5 未來展望...... 5 1.2 與其他語言的對比...... 6 1.2.1 C#與Java的對比...... 6 1.2.2 C#與C++的對比...... 7 1.3 技術優勢...... 8 1.3.1 C#的主要功能...... 8 1.3.2 C#的主要特點...... 9 1.4 C#語言和.NET Framework的關系...... 10 1.5 本章小結...... 11 第2章 Visual Studio 2008 IDE簡介 2.1 安裝Visual Studio 2008...... 14 2.2 Visual Studio 2008概覽...... 18 2.2.1 Visual Studio 2008常用功能窗口介紹...... 18 2.2.2 配置設置...... 23 2.2.3 類設計器...... 26 2.2.4 幫助系統...... 27 2.3 用Visual Studio 2008 IDE開發應用程序...... 30 2.3.1 控制臺應用程序...... 30 2.3.2 Windows窗體應用程序...... 31 2.4 調試應用程序...... 33 2.4.1 程序錯誤類型...... 33 2.4.2 調試程序...... 34 2.5 本章小結...... 35 第2篇 C#語言程序設計基礎 第3章 C#基礎元素 3.1 基礎語法...... 38 3.1.1 C#程序結構...... 38 3.1.2 C#程序入口...... 40 3.1.3 程序區塊...... 41 3.1.4 C#程序的注釋方法...... 41 3.1.5 命名空間......42 3.2 標識符...... 45 3.3 關鍵字...... 46 3.4 變量...... 46 3.4.1 變量的命名...... 47 3.4.2 數據類型 ......47 3.4.3 變量的聲明...... 50 3.5 常量...... 51 3.6 操作符與表達式...... 53 3.6.1 操作符...... 53 3.6.2 算術表達式...... 54 3.6.3 賦值表達式...... 56 3.7 類型轉換...... 57 3.8 本章小結...... 60 第4章 類與對象 4.1 面向對象編程技術...... 61 4.1.1 面向對象編程基礎 ......61 4.1.2 類與對象的關系及特點...... 62 4.1.3 類與對象的形式...... 63 4.2 C#中類的定義和使用...... 63 4.3 類成員...... 65 4.4 構造函數和析構函數...... 69 4.4.1 構造函數...... 69 4.4.2 析構函數...... 71 4.4.3 this訪問 ......72 4.5 引用類型和值類型 ......73 4.6 System.Object...... 76 4.6.1 裝箱...... 76 4.6.2 拆箱...... 77 4.7 Visual Studio 2008中的OOP工具...... 77 4.7.1 添加類...... 77 4.7.2 類視圖...... 78 4.7.3 對象瀏覽器...... 79 4.8 類庫............ 79 4.9 本章小結...... 80 第5章 方法 5.1 方法的定義與調用...... 82 5.1.1 方法的定義...... 82 5.1.2 方法的調用...... 84 5.1.3 方法的返回類型...... 86 5.2 虛擬方......法...... 87 5.3 參數...... 88 5.4 方法重載...... 92 5.5 Lambda表達式...... 94 5.5.1 Lambda表達式的定義...... 94 5.5.2 Lambda語句...... 95 5.5.3 Lambda表達式中的變量范圍...... 95 5.6 擴展方法...... 96 5.7 本章小結...... 98 第6章 異常處理 6.1 異常簡介............ 100 6.2 異常助手...... 101 6.3 Exception類...... 103 6.4 異常處理方法...... 105 6.4.1 引發異常...... 105 6.4.2 捕捉異常...... 108 6.5 本章小結...... 111 第7章 枚舉與結構 7.1 枚舉...... 113 7.1.1 什么是枚舉...... 113 7.1.2 枚舉的定義...... 113 7.1.3 枚舉的使用...... 116 7.2 結構...... 118 7.2.1 結構的聲明...... 119 7.2.2 在結構中定義方法...... 120 7.2.3 結構的使用...... 123 7.2.4 類與結構的區別...... 124 7.3 本章小結...... 125 第3篇 C#語言關鍵技術 第8章 面向對象進階 8.1 靜態成員和實例成員...... 130 8.2 常數和字段...... 131 8.3 類繼承...... 133 8.4 抽象類和密封類...... 138 8.5 接口...... 140 8.5.1 接口和類的區別...... 141 8.5.2 接口和類的選擇使用...... 141 8.5.3 定義接口......142 8.5.4 接口成員...... 145 8.5.5 接口成員的全權名...... 148 8.6 接口的實現...... 148 8.6.1 接口實現舉例...... 150 8.6.2 顯式接口成員實現...... 156 8.6.3 接口映射...... 160 8.6.4 接口的重實現...... 165 8.6.5 接口實現的繼承機制...... 168 8.7 接口的組合...... 170 8.8 接口的查詢...... 171 8.8.1 使用is運算符實現查詢...... 171 8.8.2 使用as運算符實現查詢...... 172 8.9 本章小結...... 174 第9章 屬性 9.1 屬性的定義...... 176 9.2 屬性的使用...... 177 9.3 靜態屬性和實例屬性 ......184 9.4 Attribute類...... 186 9.4.1 Attribute類的定義...... 187 9.4.2 Attribute類的使用...... 188 9.4.3 Attribute類的查詢...... 193 9.5 索引器...... 198 9.6 本章小結...... 202 第10章 迭代器與分部類 10.1 迭代器...... 204 10.2 分部類...... 207 10.3 本章小結...... 210 第11章 泛型 11.1 泛型簡介...... 212 11.1.1 泛型問題簡述...... 212 11.1.2 泛型概述...... 215 11.1.3 泛型的優點...... 219 11.1.4 泛型實例:讓程序說多種語言...... 221 11.2 泛型的使用...... 222 11.2.1 泛型的限制...... 222 11.2.2 泛型接口...... 227 11.2.3 泛型方法...... 232 11.2.4 泛型方法重載...... 235 11.2.5 泛型類的繼承...... 237 11.3 .NET中泛型的應用...... 238 11.3.1 .NET典型泛型類:List ......239 11.3.2 泛型結構...... 242 11.4 本章小結 244 第12章 委托 12.1 C#中的委托...... 246 12.2 委托與接口...... 247 12.3 委托示例 ......248 12.3.1 委托聲明............ 248 12.3.2 委托實例化...... 250 12.3.3 委托調用...... 253 12.4 多路委托...... 253 12.4.1 怎樣組合多路廣播委托...... 254 12.4.2 多路廣播委托示例...... 254 12.5 本章小結 ......256 第13章 事件 13.1 事件簡介...... 258 13.1.1 什么是事件...... 258 13.1.2 事件的特點...... 259 13.1.3 事件處理程序的一般步驟...... 259 13.1.4 如何聲明事件............ 260 13.1.5 如何引發事件............ 260 13.1.6 如何訂閱事件...... 261 13.1.7 是否所有委托都可以應用到事件中...... 262 13.1.8 發布符合.NET Framework準則的事件...... 262 13.2 事件示例...... 263 13.2.1 簡單事件聲明示例...... 263 13.2.2 事件封裝示例...... 264 13.3 GUI事件...... 266 13.3.1 事件機制剖析之鼠標單擊事件...... 266 13.3.2 事件機制剖析之KeyPress事件...... 269 13.3.3 常用事件之鼠標按下、釋放和拖動事件...... 270 13.3.4 常用事件之鍵盤按下和釋放事件...... 272 13.3.5 常用事件之焦點事件...... 273 13.4 本章小結 274 第4篇 Windows窗體程序設計 第14章 Windows窗體應用程序 14.1 控件 278 14.1.1 控件的通用屬性 278 14.1.2 窗體 279 14.1.3 控件的創建 283 14.1.4 控件的事件 284 14.2 Button控件 284 14.3 Label和LinkLabel控件 286 14.4 TextBox控件 288 14.5 RichTextBox控件 290 14.6 RadioButton和CheckBox控件 292 14.7 ListBox和ComboBox控件 295 14.8 ListView控件 299 14.9 TreeView控件 304 14.10 自定義控件 310 14.10.1 自定義控件概述 310 14.10.2 創建用戶控件 311 14.11 本章小結 314 第15章 菜單與工具欄設計 15.1 菜單欄 316 15.1.1 菜單控件的使用 317 15.1.2 右鍵菜單 318 15.1.3 彈出菜單的創建 318 15.2 工具欄的創建 320 15.3 狀態欄控件的使用 321 15.4 常用控件 322 15.4.1 滾動條控件 322 15.4.2 滾動條控件的使用 322 15.4.3 進程條控件 323 15.4.4 進程條控件的使用 324 15.4.5 跟蹤條控件 325 15.4.6 跟蹤條控件的使用 325 15.4.7 計時器控件 326 15.4.8 模擬跑表計時器 326 15.5 本章小結 327 第16章 Windows窗體程序進階 16.1 SDI和MDI應用程序 329 16.1.1 基于對話框的應用程序 329 16.1.2 SDI應用程序 329 16.1.3 MDI應用程序 331 16.2 使用對話框 335 16.2.1 打開文件對話框OpenFileDialog 335 16.2.2 保存文件對話框SaveFileDialog 337 16.2.3 打印對話框 338 16.2.4 字體設置對話框FontDialog 339 16.2.5 顏色設置對話框ColorDialog 339 16.2.6 對話框的模式 340 16.2.7 自定義對話框 341 16.3 GDI+簡介 344 16.3.1 GDI+概述 344 16.3.2 Graphics類 345 16.3.3 畫筆Pen類 346 16.3.4 字體Font類 347 16.3.5 位圖Bitmap類 348 16.3.6 實例擴展 348 16.4 高級控件 349 16.4.1 MonthCalendar控件 349 16.4.2 DateTimePicker控件 349 16.4.3 TreeView控件 349 16.4.4 TabControl控件 351 16.5 Windows媒體播放器 353 16.5.1 Windows Media Player 353 16.5.2 為程序添加媒體播放功能 354 16.6 本章小結 355 第17章 文件操作 17.1 System.IO命名空間 357 17.2 Stream類 359 17.3 File和FileInfo類 360 17.4 StreamReader和StreamWriter類 363 17.5 BinaryReader和BinaryWriter類 367 17.6 Directory和DirectoryInfo類 372 17.7 Path類 376 17.8 異步文件操作 378 17.9 本章小結 383 第18章 數據訪問技術 18.1 數據庫基本知識 384 18.2 SQL簡介 384 18.3 ADO.NET 385 18.3.1 ADO.NET簡介 385 18.3.2 類介紹 385 18.3.3 ADO.NET中的XML 387 18.3.4 ADO.NET中的SQL 395 18.3.5 DataReader類簡介 403 18.3.6 DataSet類簡介 405 18.4 ADO.NET與各種數據庫的連接 407 18.4.1 Access 407 18.4.2 SQL Server 409 18.4.3 MySQL 410 18.4.4 Oracle 412 18.4.5 其他數據庫 414 18.5 本章小結 415 第19章 Windows窗體應用程序與數據庫應用 19.1 窗體控件的數據綁定 416 19.1.1 定義數據源 417 19.1.2 使用DataSet 419 19.1.3 添加數據綁定控件 423 19.1.4 綁定數據 425 19.2 應用程序實例 427 19.3 本章小結 431 第20章 LINQ集成查詢詳解 20.1 LINQ實現字符串查詢 433 20.1.1 用LINQ查詢字符串中的數字 435 20.1.2 用LINQ統計單詞出現的次數 437 20.2 LINQ訪問ArrayList數組 440 20.2.1 使用LINQ訪問簡單字符串ArrayList數組 441 20.2.2 使用LINQ訪問對象ArrayList數組 442 20.3 LINQ訪問文件目錄 443 20.4 LINQ to XML詳解 447 20.4.1 什么是LINQ to XML 447 20.4.2 使用LINQ to XML創建XML樹 450 20.4.3 使用LINQ to XML加載XML文件 453 20.4.4 用XmlReader創建樹 454 20.4.5 檢測不正確的XML文檔 457 20.5 LINQ to SQL詳解 458 20.5.1 什么是LINQ to SQL 458 20.5.2 使用LINQ to SQL連接數據庫 459 20.5.3 使用LINQ to SQL直接執行SQL命令 466 20.6 本章小結 468 第5篇 Web開發 第21章 Web應用 21.1 HTML簡介 472 21.1.1 HTML的由來 472 21.1.2 頁面介紹 474 21.1.3 格式設置...... 475 21.1.4 文本標記...... 477 21.1.5 多媒體...... 478 21.1.6 表格...... 480 21.1.7 鏈接...... 482 21.1.8 框架...... 482 21.1.9 表單 ......485 21.2 ASP.NET簡介...... 488 21.2.1 靜態頁面與動態頁面...... 488 21.2.2 其他動態頁面技術...... 488 21.3 第一個ASP.NET程序...... 488 21.4 常用控件介紹...... 489 21.4.1 Label控件...... 490 21.4.2 TextBox控件...... 491 21.4.3 Button控件...... 491 21.4.4 DropDownList控件...... 492 21.4.5 ListBox控件...... 494 21.4.6 CheckBox控件和CheckBoxList控件...... 494 21.4.7 RadioButton控件和RadioButtonList控件...... 496 21.4.8 Image控件 ...... 498 21.5 ASP.NET服務端支持(IIS)...... 499 21.6 本章小結...... 500 第22章 數據檢驗 22.1 檢驗簡介...... 501 22.1.1 什么是檢驗...... 501 22.1.2 客戶端檢驗和服務端檢驗...... 502 22.2 驗證控件...... 502 22.2.1 必須字段驗證...... 503 22.2.2 比較驗證...... 507 22.2.3 范圍驗證...... 512 22.2.4 正則表達式驗證...... 517 22.2.5 自定義驗證...... 521 22.2.6 驗證總結...... 526 22.3 本章小結 ......529 第6篇 項目實戰 第23章 俄羅斯方塊網絡對戰 23.1 游戲簡介...... 532 23.1.1 游戲規則簡介...... 532 23.1.2 名詞術語...... 532 23.2 單元格的設計與實現...... 533 23.2.1 設計BrickUnit類...... 533 23.2.2 測試BrickUnit類...... 534 23.3 方塊的設計與實現...... 535 23.3.1 方塊和單元格坐標...... 535 23.3.2 設計Brick類...... 536 23.3.3 改變Brick類樣式...... 538 23.3.4 方塊的旋轉...... 538 23.3.5 測試Brick類...... 539 23.4 游戲地圖的設計...... 539 23.4.1 與游戲地圖相關的類...... 539 23.4.2 游戲地圖相關類的功能分析...... 540 23.4.3 單元格集合...... 540 23.5 游戲畫面繪制...... 544 23.5.1 雙緩沖技術...... 544 23.5.2 繪圖操作...... 546 23.5.3 局部刷新...... 549 23.5.4 地圖與方塊的界面顯示...... 549 23.6 游戲地圖的實現...... 550 23.6.1 游戲地圖框架...... 550 23.6.2 判斷滿行和消除行...... 552 23.6.3 粘貼活動方塊...... 554 23.6.4 移動和旋轉方塊...... 554 23.6.5 落下活動方塊...... 557 23.7 游戲面板...... 557 23.7.1 界面設計...... 557 23.7.2 FormPlay類的字段和屬性 559 23.7.3 游戲速度計......算 559 23.7.4 添加音效...... 559 23.7.5 游戲設置窗體...... 561 23.7.6 測試游戲面板...... 564 23.8 本章小結 ......564 第24章 一個簡單的瀏覽器 24.1 實例功能介紹...... 565 24.2 編程思想...... 567 24.3 關鍵技術...... 568 24.3.1 HTTP...... 569 24.3.2 HTTP通信舉例...... 569 24.3.3 瀏覽器與HTTP...... 571 24.4 瀏覽器程序實現步驟...... 571 24.4.1 建立程序框架...... 571 24.4.2 建立程序界面...... 575 24.4.3 實現瀏覽器功能...... 580 24.5 瀏覽器擴展功能的實現...... 586 24.5.1 默認搜索選擇...... 586 24.5.2 記錄和刪除用戶瀏覽的網站地址...... 587 24.5.3 皮膚選擇...... 589 24.6 本章小結...... 589 第25章 網絡監控軟件 25.1 編程思路...... 590 25.2 關鍵技術...... 592 25.2.1 套接字Socket...... 592 25.2.2 事件與委托...... 593 25.3 實現步驟 595...... 25.3.1 建立程序框架...... 595 25.3.2 IP頭格式定義...... 597 25.3.3 PacketArrivedEventArgs事件參數類和委托...... 598 25.3.4 SniffSocketException異常類的實現...... 600 25.3.5 SniffSocket類構造函數...... 600 25.3.6 創建和綁定連接...... 600 25.3.7 接收和處理IP包...... 601 25.3.8 MainForm主界面...... 604 25.3.9 主窗體載入過程...... 605 25.3.10 數據包中消息顯示的實現...... 606 25.3.11 主窗體sniff功能的實現...... 607 25.3.12 獨立的程序入口類...... 608 25.4 本章小結...... 608 第26章 遠程分布式數據庫查詢系統 26.1 實例介紹...... 609 26.2 編程思路...... 610 26.3 關鍵技術...... 611 26.3.1 分布式數據庫技術...... 611 26.3.2 使用ADO.NET訪問數據庫...... 612 26.4 遠程分布式數據庫查詢程序實現步驟...... 614 26.4.1 建立數據庫服務對象(DbServer)的DLL工程...... 614 26.4.2 創建數據庫和系統表...... 615 26.4.3 DbServer類的初始化過程...... 615 26.4.4 DbServer的查詢方法...... 616 26.4.5 根據DataSet創建臨時表...... 618 26.4.6 遠程創建臨時表...... 619 26.4.7 合并數據表...... 620 26.4.8 建立客戶端程序框架...... 621 26.4.9 建立客戶端程序界面...... 622 26.4.10 實現查詢功能 ......623 26.4.11 系統程序代碼清單...... 625 26.5 本章小結...... 626 第27章 ASP.NET學生信息管理系統 27.1 需求分析...... 627 27.1.1 數據實體上下文...... 627 27.1.2 權限分析...... 628 27.2 界面設計...... 629 27.2.1 登錄頁面設計...... 629 27.2.2 學生管理界面...... 629 27.2.3 專業及班級管理界面...... 630 27.2.4 系統管理及字典管理界面...... 631 27.3 主頁面及控件實現 ......631 27.3.1 主頁面...... 631 27.3.2 菜單控件...... 632 27.4 學生管理實現...... 633 27.4.1 學籍變動及獎懲...... 633 27.4.2 新增學生...... 636 27.4.3 管理學生信息...... 637 27.4.4 查看學生信息...... 642 27.4.5 更新學生信息...... 643 27.5 組織管理實現...... 644 27.5.1 學院管理...... 644 27.5.2 專業管理...... 646 27.5.3 班級管理...... 647 27.6 系統管理實現...... 650 27.6.1 用戶登錄...... 650 27.6.2 用戶更新...... 653 27.6.3 用戶管理...... 653 27.7 字典管理實現...... 653 27.7.1 學籍變動類型管理...... 654 27.7.2 獎懲類型管理...... 654 27.8 本章小結...... 655 附錄A 順序、分支和循環結構(光盤中) A.1 順序結構...... 656 A.2 布爾邏輯...... 658 A.2.1 位運算符...... 658 A.2.2 關系運算...... 660 A.2.3 邏輯表達式...... 661 A.3 分支結構...... 662 A.3.1 if語句...... 662 A.3.2 三元運算符...... 668 A.3.3 switch語句...... 669 A.3.4 break語句...... 672 A.3.5 default語句...... 673 A.4 goto語句...... 676 A.5 while循環...... 678 A.5.1 while循環語句的語法格式...... 678 A.5.2 while循環語句的應用...... 678 A.6 do循環...... 682 A.6.1 do循環語句的語法格式...... 682 A.6.2 do循環語句的應用...... 682 A.7 for循環...... 685 A.7.1 for循環語句的語法格式...... 685 A.7.2 for循環語句的應用...... 685 A.8 循環的嵌套...... 692 A.9 循環的中斷 ......695 A.9.1 break語句...... 695 A.9.2 continue語句...... 697 A.9.3 goto語句...... 698 A.10 本章小結...... 699 附錄B 數組與集合(光盤中) B.1 數組...... 702 B.1.1 什么是數組...... 702 B.1.2 數組的定義...... 702 B.1.3 數組的索引...... 707 B.1.4 數組的遍歷...... 709 B.1.5 數組元素的清空...... 711 B.1.6 數組的查找...... 712 B.1.7 數組的排序...... 712 B.1.8 數組的使用...... 714 B.2 集合...... 716 B.2.1 什么是集合...... 716 B.2.2 為什么使用集合...... 716 B.3 ArrayList動態數組...... 717 B.3.1 ArrayList的構造...... 717 B.3.2 ArrayList元素的添加...... 718 B.3.3 ArrayList元素的刪除...... 720 B.3.4 ArrayList元素的查找...... 721 B.3.5 ArrayList元素的遍歷...... 722 B.3.6 ArrayList向Array的轉換...... 723 B.3.7 縮減ArrayList的容量...... 725 B.4 Hashtable哈希表...... 727 B.4.1 Hashtable的構造...... 727 B.4.2 Hashtable元素的特點...... 728 B.4.3 Hashtable元素的操作...... 729 B.4.4 Hashtable的優點...... 732 B.5 Queue隊列...... 732 B.5.1 Queue的概念...... 733 B.5.2 Queue的構造 ......733 B.5.3 Queue的相關屬性...... 733 B.5.4 Queue的操作...... 734 B.5.5 Queue與其他集合的區別...... 735 B.6 Stack堆棧...... 736 B.6.1 什么是Stack...... 736 B.6.2 定義Stack...... 737 B.6.3 Stack元素的操作...... 737 B.6.4 Stack元素的獲取規則...... 738 B.7 SortedList排序集合...... 740 B.7.1 SortedList的概念...... 740 B.7.2 SortedList元素的操作...... 740 B.7.3 何時使用SortedList...... 742 B.8 Dictionary字典...... 743 B.8.1 Dictionary類簡介...... 743 B.8.2 更改Dictionary類中的條目 ......744 B.8.3 更改條目的值...... 745 B.8.4 查找條目 746...... B.8.5 遍歷Dictionary...... 747 B.9 對象和集合初始化...... 748 B.9.1 什么是對象初始化器...... 748 B.9.2 什么是集合初始化器...... 749 B.10 匿名類型...... 750 B.10.1 創建匿名類型對象...... 750 B.10.2 匿名類型的特點...... 752 B.11 本章小結...... 752 附錄C 運算符重載(光盤中) C.1 運算符的可重載性...... 754 C.2 重載運算符的應用...... 755 C.3 本章小結...... 760 附錄D 輸入/輸出(光盤中) D.1 文件...... 762 D.1.1 System.IO類介紹 ......762 D.1.2 文件類File...... 764 D.1.3 文件夾類Directory...... 766 D.1.4 文件信息類FileInfo...... 767 D.1.5 文件夾信息類DirectoryInfo...... 769 D.1.6 文件信息類與文件夾信息類的用法...... 770 D.2 流...... 770 D.2.1 流操作類介紹...... 770 D.2.2 文件流類FileStream...... 771 D.2.3 流寫入類StreamWriter...... 776 D.2.4 流讀取類StreamReader...... 778 D.2.5 二進制流寫入類BinaryWriter...... 780 D.2.6 二進制流讀取類BinaryReader...... 781 D.3 高級實例...... 783 D.4 本章小結...... 787 |
序: |