出版時間:2010-4 出版社:人民郵電出版社 作者:Joe Mayo 頁數:695 譯者:張子陽,余昭輝,王波
Tag標簽:無
前言
歡迎閱讀《C#揭秘》,一本C#編程語言的程序員指南和參考書。C#主要是一種面向對象的編程語言,由強調使用組件方法進行軟件開發(fā)的微軟公司創(chuàng)建。C#目前已經到第3版,而且仍在發(fā)展當中,本書會引領你進行一次學習的旅程,了解該語言的發(fā)展如何幫助你在軟件開發(fā)過程中取得更多成就。 C#是.NET平臺的多種語言之一,.NET平臺包括一個稱為CLR(Common Language Runtime,公共語言運行庫)的運行時引擎和一個龐大的類庫。運行時是一個管理代碼的虛擬機,同時提供許多其他服務。類庫包含差不多數以千計的可重用對象,并為桌面和Web應用程序開發(fā)支持多種用戶界面技術。 C#作為一門編程語言正在發(fā)展著。它最初是一種面向對象的、基于組件的語言,但現在正發(fā)展成為一種人們常說的函數式編程語言。貫穿全書,你將會看到許多例子中對象和組件被用作應用程序構建基塊(building block)。你也將會看到許多含有LINQ(Language Integrated Query,語言集成查詢)的例子,LINQ是一種以聲明方式查詢數據源的方法,不管數據源是對象、關系數據庫、XML或是其他任何形式。 正如C#(以及.NET平臺)已經發(fā)展了,本書也是一樣。本書上一版是一個以語言為中心的學習指南和參考,教你使用C#編程。讀者背景很多樣化,因為C#是一門新的語言,各種背景的開發(fā)者都會使用它編程。所有的應用程序都在命令行上進行編譯,你只需要.NET框架SDK和一個編輯器,就能夠完成一切了。 就本質而言,本書第一版遵循的理念也體現在這一版中。例如,在開始之前你并不需要知道.NET。如果你使用任何語言進行過編程,本書對你來說應該是很容易的。本書包含了幾個命令行的例子,特別是在一開始的時候,因為我相信使用命令行仍然是一項必需且有用的技能。然而,我們很快會轉移到Visual Studio 2008(VS2008)IDE(Integrated Development Environment,集成開發(fā)環(huán)境),本書剩余部分的絕大部分內容都將用到它。然而本書并不要求你必須使用VS2008;我很快便會演示不使用它如何創(chuàng)建應用程序,而附錄A介紹了各種命令行選項,并伴有例子(和本書的第一版一樣)。盡管如此,VS2008仍是提高工作效率的一個極好工具,不過貫穿本書我都會為通過以代碼為中心的RAD(Rapid Application Development,快速應用程序開發(fā))來實現算法提供一些小技巧。 除了涵蓋VS2008以外,我也加了幾個新的章介紹一些最新的技術,例如WPF(Windows Presentation Foundation,Windows演示基礎)、WCF(Windows Communication Foundation,Windows通信基礎)和AJAX。如果你喜歡前沿技術,還有一些ADO.NET實體框架(ADO.NET Entity Framework)和ADO.NET數據服務(ADO.NET Data Services)的章節(jié)。談到數據,我已經在這本書中添加了一整部分好幾章,專門討論如何操作數據。
內容概要
C#提供了很多強大的特性,特別是通過使用lambda表達式、擴展方法和 LINQ,方便地引入了函數式編程,使C#程序員如虎添翼。本書以C#語言的預備知識開篇,最后以部署代碼結束全書,全面深入地講解了.NET技術的各個知識點,在廣度和深度上恰到好處。本書不僅系統(tǒng)地闡述了C#開發(fā)相關的重要理論知識,而且還提供了大量的實例和解決常見問題的最佳方案,是.NET開發(fā)人員必備的參考書。 本書適合于各層次的.NET開發(fā)人員閱讀。
作者簡介
作者:(美國)梅奧(Joe Mayo) 譯者:張子陽 余昭輝 王波Joe Mayo,使用C#的先驅,擁有20多年豐富的開發(fā)經驗,精通C、C++和Java等多種編程語言。在C#這個新語言推出不久,他就創(chuàng)建了C# Station網站,在其上公開C#教程,為全世界的Web開發(fā)人員所歡迎。除本書外,他還著有LINQ Programming一書。
書籍目錄
第一部分 C#基礎 第1章 .NET平臺簡介 第2章 C#和Visual Studio 2008概述 第3章 編寫C#表達式和語句 第4章 理解引用類型和值類型 第5章 操作字符串 第6章 數組和枚舉 第7章 用Visual Studio 2008調試應用程序 第二部分 使用C#面向對象編程 第8章 設計對象 第9章 設計面向對象程序 第10章 編寫方法和自定義操作符 第11章 錯誤處理和異常處理 第12章 使用委托和事件進行基于事件的編程 第13章 使用命名空間命名和組織類型 第14章 抽象類和接口 第三部分 應用C#高級語言特性 第15章 管理對象生命周期 第16章 特性與反射 第17章 泛型與迭代器 第18章 lambda表達式和表達式樹 第四部分 學習LINQ和.NET數據訪問 第19章 使用LINQ訪問數據 第20章 使用ADO.NET管理數據 第21章 操作XML數據 第22章 使用ADO.NET實體框架創(chuàng)建數據抽象 第23章 ADO.NET數據服務在云計算數據中的應用 第五部分 創(chuàng)建桌面用戶界面 第24章 挖掘控制臺應用程序極限 第25章 編寫Windows Forms應用程序 第26章 創(chuàng)建WPF應用程序 第六部分 設計Web用戶界面 第27章 使用ASP.NET創(chuàng)建Web 應用程序 第28章 用ASP.NET AJAX加強Web應用程序的交互性 第29章 用Silverlight精心制作豐富的Web應用程序 第七部分 使用.NET技術通信 第30章 使用.NET網絡通信技術 第31章 創(chuàng)建Windows服務應用程序 第32章 Remoting 第33章 編寫傳統(tǒng)ASMX Web服務 第34章 使用WCF創(chuàng)建Web服務 第八部分 .NET應用程序架構設計示例 第35章 使用Visual Studio 2008類設計器 第36章 C#中的設計模式樣例 第37章 創(chuàng)建N級/層系統(tǒng) 第38章 使用WF自動化邏輯 第九部分 體驗更多的.NET框架類庫 第39章 進程和線程管理 第40章 本地化和國際化 第41章 互操作(P/Invoke和COM)與不安全代碼 第42章 使用System.Diagnostics中的類型診斷應用 第十部分 部署代碼 第43章 程序集和版本控制 第44章 代碼安全 第45章 創(chuàng)建Visual Studio 2008 安裝項目 第46章 部署桌面應用程序 第47章 發(fā)布Web應用程序 第十一部分 附錄附錄A 編譯程序 附錄B 獲取.NET框架幫助
章節(jié)摘錄
插圖:通常,contacts數組的創(chuàng)建將在另一個對象中完成,該對象從一個數據源創(chuàng)建每一個對象,或者獲取一個數組的緩存版本。然而,我將它放在了這里,這樣你可以明確看到每一個對象的編譯時類型和運行時類型。在循環(huán)中有一個switch語句,它基于每一個查看的對象類型來進行條件判斷。注意到由System.Object所獲得的Get Type方法的用法,它用來得出對象的運行時類型是什么。在Get Type上調用To string創(chuàng)建了每個對象全限定名稱的字符串。通過case語句,你可以看到它們都是什么,我將每一個類都設計為Chapter-09命名空間的成員。再次重申,每一個對象的編譯時類型是Contact,但是我們需要知道每個對象的運行時類型,以便判斷出調用的是哪個方法。當程序遇到一個特定的case語句時,我們知道對象的運行時類型,并且可以安全地將contact轉換為那個類型。我們需要運行時類型的原因是因為我們需要在恰當的對象類型上調用SendAlert方法。否則,將總是調用Contact中的SendAlert,因為那是編譯器所知道的關于當前對象的全部信息。這很麻煩,也很復雜,對吧?對于維護來說,它也打開了一個充滿著蠕蟲的罐頭,swich語句可以用各種方式來修改,并且隨著時間的推移重復的功能會很容易出現。每一個需要提供SendAlert功能的新類也必須要添加。提前知道這些是整理出一個優(yōu)雅設計的關鍵,這個設計可以盡早地避免這樣的問題,并且使代碼更容易處理。
媒體關注與評論
本書講解全面、透徹,是迄今為止我看到的最好的C#書。 ——Rick Harrison,軟件咨詢師
編輯推薦
《C#揭秘》:LINQ、WPF、WF、WCF,無所不包全面、深入,適合各個層次需要C#與.NET平臺開發(fā)必備C#作為.NET平臺上的第一語言,自發(fā)布以來不斷增強,已經成為目前功能最強大的通用語言之一?!禖#揭秘》是C#頁域內的權威之作,秉承了Unleashed系列書的一貫風格,內容系統(tǒng)、全面,實踐性、可操作性強。書中不僅系統(tǒng)闡述了C#3.0的語言規(guī)范、面向對象編程和常用技巧。而且還透徹講解了與.NET Framework 3.5相關的一些新特性。此外?!禖#揭秘》還涵蓋.NET CLR、LINQ、XML、WPF、AJAX、WF、WCF、網絡通信等重要的.NET技術。初學者可從《C#揭秘》的基礎內容中了解C#的各個方面。有一定.NET開發(fā)經驗的開發(fā)者可以憑借此書更好地完成日常工作。
圖書封面
圖書標簽Tags
無
評論、評分、閱讀與下載