C#3.0 Cookbook(中文版)

出版時(shí)間:2008-12  出版社:清華大學(xué)出版社  作者:(美)希爾雅德(Hilyard,J.),(美)特爾赫特(Teilhet,S.) 著,陳宗斌 等譯  頁數(shù):699  譯者:陳宗斌  
Tag標(biāo)簽:無  

前言

C#語言是Microsoft公司為推行.NET戰(zhàn)略而發(fā)布的一種全新的編程語言。它是一種全新的、純面向?qū)ο蟮木幊陶Z言,具有清晰明了的語法結(jié)構(gòu)、優(yōu)秀的編程開發(fā)環(huán)境和高效率的編譯工具。C#語言從C++語言發(fā)展而來,繼承了C++語言的所有優(yōu)點(diǎn),同時(shí)根據(jù).NET戰(zhàn)略的需要增強(qiáng)了自身的功能,拋棄了C++中各種不安全因素,從而使程序員能夠更有效率地使用C#開發(fā)應(yīng)用軟件。另外,C#在許多方面與Java相似;Java程序員一旦學(xué)習(xí)了Framework SDK,他們?cè)贑#中就會(huì)有一種賓至如歸的感覺。C#還非常適合于Visual Basic.NET程序員,當(dāng)他們需要能夠更多地控制代碼執(zhí)行的任務(wù)并且不想為此編寫C++代碼時(shí)就可以使用C#。本書側(cè)重于解決C#程序員在開發(fā)應(yīng)用程序時(shí)遇到的各類問題,并根此組織全書內(nèi)容。這些解決方案稱為秘訣;每個(gè)秘訣都包含一個(gè)問題,它的解決方案及相關(guān)信息的討論,最后還提供了關(guān)于使用FCL中的類的詳細(xì)信息的出處、針對(duì)這個(gè)主題的其他書籍、相關(guān)的文章以及其他秘訣。這種問題一答案格式提供了問題的完整解決方案,使得本書易于閱讀和使用。幾乎每個(gè)秘訣都包含一個(gè)完整的書面代碼示例,展示了如何解決特定的問題,還討論了底層技術(shù)的工作原理,并且根據(jù)需要列出了一些替代方法、限制條件及其他考慮事項(xiàng)。

內(nèi)容概要

  當(dāng)你在使用C#3.0的過程中陷入困境而需要快速找到解決方案時(shí),為什么要辛苦地讀完一本教程呢?這本最暢銷書現(xiàn)在提供了超過250個(gè)代碼秘訣,針對(duì)的是C#程序員面臨的常見和不那么常見的問題。本書添加了許多新秘訣,從以前版本繼承來的大多數(shù)秘訣都經(jīng)過了修訂,以便幫助你利用C#3.0和.NET 3.5平臺(tái)提供的能力——以及克服它們提出的挑戰(zhàn)。本書用一整章的篇幅介紹了用于LINQ(語言級(jí)集成查詢)的秘訣,并用額外兩章介紹了使用擴(kuò)展方法的秘訣,還介紹了lambda表達(dá)式、對(duì)象和集合初始化器、新的同步原語以及LINQ to XML等。本書中的每個(gè)秘訣都提供了對(duì)單個(gè)問題的解決方案,討論了它為什么會(huì)工作,并且提供了查找額外信息的資源。

作者簡(jiǎn)介

作者:(美國(guó))希爾雅德 (Hilyard.J) (美國(guó))特爾赫特 (Teilher.S.) 譯者:陳宗斌

書籍目錄

前言第1章 語言級(jí)集成查詢(KINQ) 1.0  簡(jiǎn)介 1.1  查詢消息隊(duì)列 1.2  使用帶有數(shù)據(jù)的集合語義 1.3 利用LINQ to SQL重用參數(shù)化查詢 1.4 以一種文化敏感的方式對(duì)結(jié)果排序 1.5  添加用于LINQ的功能擴(kuò)展 1.6  跨數(shù)據(jù)庫執(zhí)行查詢和連接 1.7  利用LINQ查詢配置文件 1.8  直接從數(shù)據(jù)庫創(chuàng)建XML文件 1.9  有選擇地輸出查詢結(jié)果 1.10  結(jié)合使用LINQ與不支持IEnumerable的集合第2章 字符串和字符 2.0  簡(jiǎn)介 2.1  確定char包含的字符種類 2.2 在比較兩個(gè)字符時(shí)控制大小寫敏感性 2.3 在一個(gè)字符串內(nèi)尋找另一個(gè)字符串出現(xiàn)的所有位置 2.4 在比較兩個(gè)字符串時(shí)控制大小寫敏感性 2.5 把一個(gè)字符串與另~個(gè)字符串的頭部或尾部作比較 2.6 插入文本到字符串中 2.7 刪除或替換字符串內(nèi)的字符 2.8 把二進(jìn)制數(shù)據(jù)編碼為base64格式 2.9  解碼base64編碼的二進(jìn)制數(shù)據(jù) 2.10  把作為byte[]返回的字符串轉(zhuǎn)換為字符串 2.11  把字符串傳遞給只接受byte[]的方法 2.12  把字符串轉(zhuǎn)換為其他類型 2.13  創(chuàng)建定界字符串 2.14  從定界字符串中提取數(shù)據(jù)項(xiàng) 2.15  遍歷字符串中的每個(gè)字符 2.16  從字符串的頭部和/或尾部刪除字符 2.17  測(cè)試字符串是否為null或者長(zhǎng)度為O 2.18  追加行第3章 類和結(jié)構(gòu) 3.0 簡(jiǎn)介 3.1 創(chuàng)建聯(lián)合類型的結(jié)構(gòu) 3.2  使類型可排序 3.3  使類型可檢索 3.4 間接重載+=、-=、/=和×=運(yùn)算符 3.5 間接重載&&、II和?:運(yùn)算符 3.6  創(chuàng)建無錯(cuò)的表達(dá)式 3.7  簡(jiǎn)化布爾邏輯 3.8 以程序設(shè)計(jì)語言無關(guān)的方式在簡(jiǎn)單類型之間轉(zhuǎn)換 3.9 確定何時(shí)使用強(qiáng)制轉(zhuǎn)換運(yùn)算符、as運(yùn)算符或is運(yùn)算符 3.10  利用as運(yùn)算符進(jìn)行強(qiáng)制轉(zhuǎn)換 3.1 1  利用is運(yùn)算符確定變量的類型 3.12  從一個(gè)方法返回多個(gè)數(shù)據(jù)項(xiàng) 3.13  解析命令行參數(shù) 3.14  在運(yùn)行時(shí)初始化常量字段 3.15  構(gòu)建可復(fù)制的類 3.16  確保處理對(duì)象  3.17  處理非托管資源    3.18  確定裝箱和拆箱的位置 第4章 泛型  4.0 簡(jiǎn)介  4.1 確定使用泛型的時(shí)間和位置  4.2  理解泛型類型  4.3 利用對(duì)應(yīng)的泛型替換ArrayList    4.4  用對(duì)應(yīng)的泛型替換Stack和Queue  4.5 使用鏈表  4.6 創(chuàng)建可以初始化為null的值類型  4.7 反轉(zhuǎn)有序鏈表中的內(nèi)容  4.8 以泛型方式創(chuàng)建只讀集合   4.9  利用對(duì)應(yīng)的泛型替換Hashtable  4.10  對(duì)泛型Dictionary類型使用foreach  4.11  約束類型參數(shù)  4.12  將泛型變量初始化為它們的默認(rèn)值 第5章 集合 5.0 簡(jiǎn)介 5.1 交換數(shù)組中的兩個(gè)元素  5.2  快速反轉(zhuǎn)數(shù)組  5.3 編寫更靈活的StackTrace類  5.4 確定一個(gè)數(shù)據(jù)項(xiàng)在List中出現(xiàn)的次數(shù)  5.5 檢索List中的特定數(shù)據(jù)項(xiàng)的所有實(shí)例 5.6  從數(shù)組中插入和刪除數(shù)據(jù)項(xiàng)  5.7  保持List有序  5.8  對(duì)Dictionary的鍵和/或值排序  5.9 創(chuàng)建具有最大值和最小值界限的Dictionary   5.10  在數(shù)組中存儲(chǔ)列表的快照  5.11  維持應(yīng)用程序會(huì)話之間的集合  5.12  測(cè)試Array或List中的每個(gè)元素  5.13  對(duì)Array或List中的每個(gè)元素執(zhí)行一種操作 5.14  創(chuàng)建只讀的Array或List第6章 迭代器、分部類型和分部方法 6.0  簡(jiǎn)介 6.1 在泛型類型上創(chuàng)建迭代器 6.2  在非泛型類型上創(chuàng)建迭代器 6.3  創(chuàng)建自定義的枚舉器 6.4  實(shí)現(xiàn)迭代器邏輯 6.5  強(qiáng)制迭代器停止迭代 6.6  處理finally塊和迭代器 6.7  在類中實(shí)現(xiàn)嵌套的foreach功能 6.8  組織接口實(shí)現(xiàn) 6.9  生成不再位于主代碼路徑中的代碼 6.10  向生成的實(shí)體中添加掛鉤第7章 異常處理 7.0  簡(jiǎn)介 7.1 知道何時(shí)捕獲和重新拋出異常, 7.2 使用finally塊時(shí)確保異常不會(huì)丟失 7.3 處理從通過反射調(diào)用的方法中拋出的異常 7.4  防止未處理的異?!?.5  獲取異常信息 7.6  快速找到問題的根源 7.7  創(chuàng)建新的異常類型 7.8 獲得棧記錄 7.9  在第一次機(jī)會(huì)的異常上中斷 7.10  處理從異步委托拋出的異常 7.11  利用Exception.Data給異常提供它們所需的額外信息 7.12  在WinForms應(yīng)用程序中處理未處理的異?!?.13  處理Windows Presentation Foundation(WPF)應(yīng)用程序中未處理的異常 7.14  為常見錯(cuò)誤分析異常第8章 診斷 8.0 簡(jiǎn)介 8.1 對(duì)調(diào)試/跟蹤輸出提供細(xì)粒度的控制 8.2 確定進(jìn)程是否停止了響應(yīng) 8.3  在應(yīng)用程序中使用事件日志 8.4  查找事件日志條目 8.5 監(jiān)視事件日志中的特定條目 8.6 實(shí)現(xiàn)一個(gè)簡(jiǎn)單的性能計(jì)數(shù)器 8.7 啟用和禁用復(fù)雜的跟蹤代碼 8.8 捕獲進(jìn)程的標(biāo)準(zhǔn)輸出 8.9 為類創(chuàng)建自定義的調(diào)試顯示第9章 委托、事件和lambda表達(dá)式 9.0 簡(jiǎn)介 9.1 控制何時(shí)以及是否在多播委托中觸發(fā)一個(gè)委托 9.2  從多播委托中的每個(gè)委托獲得返回值 9.3 為多播委托中的每個(gè)委托單獨(dú)處理異?!?.4 把同步委托調(diào)用轉(zhuǎn)換成異步委托調(diào)用 9.5 一種高級(jí)接口查找機(jī)制 9.6  觀察字典的添加和修改 9.7  使用larnbda表達(dá)式 9.8  清晰地建立事件處理程序 9.9  在lambda表達(dá)式中使用不同的參數(shù)修飾符 9.10  在C≠}中使用閉包 9.11  使用函子對(duì)列表執(zhí)行多種操作第10章 正則表達(dá)式 10.0  簡(jiǎn)介 10.1  枚舉匹配 10.2  從MatchCollection中提取組 10.3  驗(yàn)證正則表達(dá)式的語法 10.4  只快速查找字符串中的最后一個(gè)匹配 10.5  增強(qiáng)基本的字符串替換功能 10.6  實(shí)現(xiàn)更好的標(biāo)記器 10.7  統(tǒng)計(jì)文本行數(shù) 10.8  返回在其中找到匹配的一整行內(nèi)容 10.9  找到出現(xiàn)的特定匹配 10.10 使用常見的模式第11章 數(shù)據(jù)結(jié)構(gòu)與算法 11.0  簡(jiǎn)介 11.1  為一種數(shù)據(jù)類型生成散列代碼 11.2  生成優(yōu)先級(jí)隊(duì)列 11.3  生成一對(duì)多映射(MultiMap) 11.4  生成一棵二叉查找樹 11.5  生成一棵n叉樹 11.6  使用HashSet對(duì)象第12章 文件系統(tǒng)I/O 12.0  簡(jiǎn)介 12.1  操作文件屬性 12.2  重命名文件 12.3  輸出與平臺(tái)無關(guān)的EOL字符 12.4 操作目錄屬性 12.5  重命名目錄 12.6  使用通配符查找目錄或文件 12.7  獲取目錄樹 12.8  解析路徑 12.9  解析環(huán)境變量中的路徑 12.10 運(yùn)行并與控制臺(tái)工具交互 12.11 鎖定文件的子段 12.12 等待文件系統(tǒng)中要發(fā)生的動(dòng)作 12.13  比較兩個(gè)可執(zhí)行模塊的版本信息 12.14 查詢系統(tǒng)上所有驅(qū)動(dòng)器的信息 12.15 壓縮及解壓縮文件第13章 反射  13.0  簡(jiǎn)介  13.1  列出引用的程序集  13.2  列出導(dǎo)出的類型  13.3  找出重寫方法  13.4  找出程序集中的成員  13.5  確定并獲取程序集中的嵌套類型  13.6  顯示類型的繼承層次結(jié)構(gòu)  13.7  找出類型的子類  13.8  找出程序集中所有可序列化的類型  13.9  動(dòng)態(tài)調(diào)用成員  13.10確定類型或方法是否是泛型  13.11訪問局部變量信息  13.12生成泛型類型第1 4章 Web  14.0  簡(jiǎn)介  14.1  將IP地址轉(zhuǎn)換為主機(jī)名  14.2  將主機(jī)名轉(zhuǎn)換為IP地址  14.3  解析URl  14.4  處理Web服務(wù)器錯(cuò)誤  14.5  與Web服務(wù)器通信  14.6  通過代理服務(wù)器  14.7  從URL中獲取HTML  14.8  使用Web瀏覽器控件  14.9  將數(shù)據(jù)庫表與緩存綁定  14.10 通過編程預(yù)先構(gòu)建一個(gè)ASP.NET網(wǎng)站  14.11  為Web對(duì)數(shù)據(jù)進(jìn)行轉(zhuǎn)義與取消轉(zhuǎn)義 14.1 2 使用UriBuilder類  14.13 檢查并修改Web應(yīng)用程序配置  14.14 在用HTTP時(shí)使用緩存的結(jié)果以使性能更快  14.15 檢測(cè)Web服務(wù)器的自定義錯(cuò)誤頁第15章 XML 15.0  簡(jiǎn)介 15.1  以文檔順序讀取并訪問XML數(shù)據(jù) 15.2  讀取Web上的XML 15.3  查詢XML文檔的內(nèi)容  15.4  檢驗(yàn)XML 15.5  通過編程生成XML文檔 15.6  檢測(cè)對(duì)XML文檔的修改  15.7  處理XML字符串中的非法字符 15.8 XML的轉(zhuǎn)換  15.9  分割XML文檔  15.10 合并XML文檔 15.11 不重載驗(yàn)證修改過的XML文件 15.12 擴(kuò)展轉(zhuǎn)換  15.13 從已有XML文件中成批獲得用戶的模式  15.14 向轉(zhuǎn)換傳遞參數(shù)第16章 聯(lián)網(wǎng)  16.0  簡(jiǎn)介  16.1  編寫一個(gè)TCP服務(wù)器端  16.2  編寫一個(gè)TCP客戶端  16.3  模擬表單執(zhí)行  16.4  通過HTTP傳送數(shù)據(jù)  16.5  使用命名管道進(jìn)行通信  16.6  以編程方式發(fā)送Pin9  16.7  使用SMTP服務(wù)發(fā)送SMTP郵件  16.8  使用套接字掃描機(jī)器的端口  16.9  使用當(dāng)前的互聯(lián)網(wǎng)連接設(shè)置  16.10 使用FTP傳輸文件第17章 安全性  17.0  簡(jiǎn)介 17.1  控制對(duì)本地程序集中類型的訪問 17.2  加密/解密字符串 17.3  加密和解密文件 17.4  清理密碼信息 17.5  驗(yàn)證字符串保持未破壞的流傳輸 17.6  安全存儲(chǔ)數(shù)據(jù) 17.7  保證安全斷言的安全 17.8  驗(yàn)證程序集已經(jīng)具備特定許可 17.9  最小化程序集的攻擊面 17.10 獲得安全/審計(jì)信息 17.11  授權(quán)/撤銷對(duì)文件或注冊(cè)表鍵的訪問 17.12 使用安全字符串保護(hù)字符串?dāng)?shù)據(jù) 17.13 保護(hù)流數(shù)據(jù) 17.14 加密web.config信息 17.15  獲得拋出SecurityException的完整理由 17.16 實(shí)現(xiàn)安全的Unicode編碼 17.17 獲得一個(gè)更安全的文件句柄第18章 線程與同步  18.0  簡(jiǎn)介  18.1  創(chuàng)建每個(gè)線程的靜態(tài)字段  18.2  向類成員提供線程安全的訪問  18.3  防止沉默的線程終止  18.4  同步委托完成的通知  18.5  秘密存儲(chǔ)特定線程的數(shù)據(jù)  18.6  使用信號(hào)量實(shí)現(xiàn)資源的多重訪問  18.7  使用Mutex同步多個(gè)進(jìn)程  18.8  使用事件協(xié)調(diào)線程  18.9  為事件獲得命名權(quán) 18.10 在線程間執(zhí)行原子操作  18.11 優(yōu)化主讀訪問第19章 工具箱  19.0  簡(jiǎn)介  19.1  處理操作系統(tǒng)關(guān)機(jī)、電源管理或用戶會(huì)話修改 19.3  列出加載程序集的進(jìn)程 19.4  使用本地工作站上的消息隊(duì)列 19.5  找出當(dāng)前框架版本的路徑 19.6  確定全局程序集緩存(GAC)中注冊(cè)的程序集版本 19.7  捕獲標(biāo)準(zhǔn)輸出流的輸出 19.8  運(yùn)行位于自己的AppDomain中的代碼 19.9  確定操作系統(tǒng)和當(dāng)前操作系統(tǒng)的服務(wù)包版本第20章 數(shù)字與枚舉  20.0  簡(jiǎn)介  20.1  度與弧度之間的轉(zhuǎn)換  20.2  對(duì)各種數(shù)據(jù)類型使用按位求補(bǔ)運(yùn)算符  20.3  將數(shù)字從某種基數(shù)轉(zhuǎn)換為基數(shù)10  20.4  確定一個(gè)字符串是否是合法數(shù)字  20.5  舍入浮點(diǎn)值  20.6  選擇一種舍入算法  20.7  溫度計(jì)數(shù)法之間的轉(zhuǎn)換  20.8  安全地執(zhí)行收縮數(shù)字強(qiáng)制轉(zhuǎn)換  20.9  將一個(gè)枚舉值顯示為字符串  20.10 將純文本轉(zhuǎn)換為等價(jià)的枚舉值  20.11 測(cè)試合法的枚舉值  20.12 測(cè)試合法的標(biāo)志枚舉  20.13 使用位掩碼中的枚舉成員  20.14 確定一個(gè)或多個(gè)枚舉標(biāo)志是否被設(shè)置  20.15 確定Decimal或Double數(shù)字的整數(shù)部分

章節(jié)摘錄

插圖:

編輯推薦

  你將找到用于以下方面的秘訣:  你還將發(fā)現(xiàn)其他一些秘訣,它們用于加密和解密、控制對(duì)類型的訪問、安全地存儲(chǔ)數(shù)據(jù)、使用編程性  安全和聲明性安全等。所有的解決方案都是使用Visual Studi0.NET 2008開發(fā)的。  《C#3.0 Cookbook(中文版)(第3版)》的補(bǔ)充資源是一個(gè)公共共建性網(wǎng)站,它包括C#2.0秘訣的以前版本,C#3.0版本沒有修改它們。

圖書封面

圖書標(biāo)簽Tags

評(píng)論、評(píng)分、閱讀與下載


    C#3.0 Cookbook(中文版) PDF格式下載


用戶評(píng)論 (總計(jì)5條)

 
 

  •   很好,內(nèi)容很豐富,適合有一定的開發(fā)經(jīng)驗(yàn)人員作為工具書查看!
  •   一向相信oreilly書的品質(zhì),這次卻很失望。讀了幾章,感覺這本書的翻譯質(zhì)量很差,甚至讓我懷疑譯者是不是找了幾個(gè)學(xué)生拼湊的。大多數(shù)語句都談不上不通順,就是直統(tǒng)統(tǒng)的“翻”譯……。我相信原著不應(yīng)該是這個(gè)水平。總而言之,這翻譯對(duì)不起我的80塊錢,更對(duì)不起辛苦的著者。
  •   書還行就是翻譯濫了點(diǎn)
  •   以后絕對(duì)不會(huì)相信清華的翻譯了
  •   為什么不出影印版呢?
 

250萬本中文圖書簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號(hào)-7