C#與.NET 3.5高級程序設計

出版時間:2009-3  出版社:人民郵電出版社  作者:特羅爾森  頁數(shù):1107  
Tag標簽:無  

前言

~應用程序開發(fā)的目標始終如一,就是在最短時間內(nèi)制作出最好的軟件。當今最流行的快速開發(fā)平臺是什么,毫無疑問,是微軟公司的.NET Framework。經(jīng)過近8年的發(fā)展,微軟的.NET已經(jīng)變得非常龐大和成熟,而且.NET發(fā)展的步伐越來越快。2002年年初,微軟發(fā)布了Visual Studio.NET 2002開發(fā)工具,也帶來了.NET框架的第一個版本1.0。2003年春天,微軟發(fā)布了Visual Studio.NET 2003以及.NET Framework 1.1。盡管只是1.1,但是.NET Framework 1.1比1.0多了幾項重大更新,例如對移動設備的支持(精簡版.NET)和對ODBC/Oracle數(shù)據(jù)庫的支持。2005年年底,.NET Framework 2.0隨著Visual Studio 2005以及SQL Server2005一起發(fā)布。無論是Visual Studio 2005、C#2.0還是ASP.NET 2.0,在易用性、安全性等方面都比前輩優(yōu)秀很多。C{fj}2.0中的泛型、迭代器、可空類型、匿名方法、分部類等特性確實給了我們很多方便。2006年年底,微軟隨Vista操作系統(tǒng)推出了.NET Framework 3.0。.NET Framework 3.0在2.0的基礎上增加了幾個重要組件:WCF、WPF、WF和WCS(本書厲面會對WCF、WPF~~HWF進行比較詳細的介紹)。WCF:Windows Communication Foundation,最完整的集成化通信管理框架。WCF編程模型把Web服務、.NET遠程技術、分布式事務和消息隊列統(tǒng)一到單個面向服務的編程模型中,從而實現(xiàn)了真正意義上的分布式計算。WPF:Windows Presentation Foundation,最華麗的界面技術框架。WPF提供了一種一致的方案來構建編程模型,并且支持使用更為豐富的控件和設計技術來開發(fā)Windows程序。WF:Windows Workflow Foundation,最靈活和最強大的工作流平臺。WF是微軟用來定義、執(zhí)行和管理工作流的編程模型、引擎和工具的總稱。WCS:Windows CardSpace,最安全的個人數(shù)字標識解決方案。2007年年底,微軟發(fā)布了Visual Studio 2008以及.NET Framework 3.5。在.NET Framework 3.0的基礎上,3.5又新增了一些程序集,并引入了LrNQ、ASP.NET AJAX等功能(本書基于C≠}3.0,而且也會對LINQ技術進行簡單介紹)。c#3.0:提供了隱式類型變量、自動屬性、擴展方法、對象初始化語法、Lambda表達式、匿名方法、分部方法等新特性,其實幾乎所有的新特性都是因LINQ而生的。LINQ:語言集成查詢,官方組件包括LINQ to SQL、LINQ to XML、LINQ to DataSet等。當然,還有很多第三方公司或個人推出的LINQ to XXX??梢酝ㄟ^這些組件使用統(tǒng)一的查詢語言對各種基于磁盤、網(wǎng)絡甚至服務的數(shù)據(jù)源進行查詢。ASP.NET AJAX:其實ASP.NET AJAX最早并不是在.NET Framework 3.5中出現(xiàn)的,只不過.NET Framework 3.5集成了ASP.NET AJAX。關于.NET Framework 3.0中四大技術的擴展,我們也可以認為.NET Framework 3.5提供了WCF/ WPF/WF/WCS的2.0版本。~

內(nèi)容概要

  《C#與.NET 3.5高級程序設計》(第4版)是C#領域久負盛名的經(jīng)典著作,深入全面地敘述了C#編程語言和.NET平臺核心,并以大量示例剖析相關概念。書中介紹了C#的各種語言構造、.NET 2.0的類、核心API、公共中間語言(CIL)、動態(tài)程序集和ASP.NET擴展等內(nèi)容;同時也介紹了.NET 3.0和.NET 3.5中新的編程API,包括WPF 、WCF和WF 的功能;另外,還介紹了最新的C# 3.0編程語言、LINQ編程技術、COM與.NET 的互操作性以及平臺無關的.NET開發(fā)。

作者簡介

作者:(美國)特羅爾森 (Andrew troelsen) 譯者:朱曄 肖逵 張大磊AndFew Troelsen,世界級c#專家。微軟;Visual C#MVP,他是著名的微軟技術咨詢企業(yè)Intertech的合伙人和副總裁。該公司的客戶包括微軟、霍尼韋爾、美國宇航局等。他曾為MSDN網(wǎng)站和MacTech網(wǎng)站撰寫了有關各種操作系統(tǒng)平臺上.NET技術的文章,并經(jīng)常在業(yè)界主要技術會議上發(fā)表演講和開設技術講座。除本書外,他還撰寫了COM and.NET Interoperability和Visual Basic.NET andthe.NET Platform:An Advanced Guide等十多部.NET技術方面的著作。譯者簡介:朱曄,微軟ASP.NET MVP,熟悉.NET、c#、ASP.NET、SQL Server等技術。擅長基于.NET的分布式電子商務網(wǎng)站、互聯(lián)網(wǎng)網(wǎng)站和網(wǎng)游平臺的架構設計。近期出版了暢銷圖書《ASP.NET第一步——基于c#和ASP.NET 2.0》和譯著《SQL server 2005范例代碼查詢辭典》等。個人博客:http://www.cnblogs.com/lovecherry。張大磊,超過10年的軟件研發(fā)實踐,在網(wǎng)絡安全、地理信息、醫(yī)療、生產(chǎn)制造和商業(yè)智能等多個領域積累了較為豐富的經(jīng)驗。近年來主要關注微軟平臺技術,曾任微軟公司開發(fā)技術經(jīng)理。業(yè)余時間與大中華區(qū)各地的微軟技術架構師和最有價值專家進行廣泛的技術交流,并多次受邀在TechED、MSDN等技術活動中發(fā)表主題演講。也是多個開源項目的貢獻者,多個在線社區(qū)的特邀技術專家與微軟金牌講師的評委??梢酝ㄟ^http:\\kmsdpe.enblogs.com與他聯(lián)系。肖逵資深軟件開發(fā)工程師,高級技術講師,畢業(yè)后一直效力于公司核心開發(fā)部門,主持研發(fā)數(shù)個大型企業(yè)級軟件產(chǎn)品,對.NET Framework及相關技術有深人研究,曾就職于HoneyWell、HP等公司。王少葵,2004~2008年四屆微軟Visual Developer.Visual C#方面MVP,通過MCP、MCDBA、MCSA、MCAD、MCSD等多項微軟認證,有10多年IT行業(yè)從業(yè)經(jīng)驗,現(xiàn)為ABB(中國)有限公司金屬部高級工程師。主要為生產(chǎn)制造企業(yè)提供自動控制整體解決方案,與微軟、寶信、用友等軟件公司有良好的合作。曾主持和參與寶鋼、太鋼、攀鋼、酒鋼、漣鋼等多個企業(yè)的自動化控制、MES、ERP等若干大型系統(tǒng)設計與研發(fā),涉及辦公自動化、物流、數(shù)據(jù)存儲、計算機通信、人機接口、模型計算等諸多領域?;钴S在CSDN社區(qū),致力于研究.NET新技術。范睿,(網(wǎng)名:fancyf)有5年.NET框架編程經(jīng)驗,超過6年使用C/C++的程序開發(fā)經(jīng)驗,對.NET框架有比較深入的研究。經(jīng)?;钴S在CSDN社區(qū),熱心解答網(wǎng)友們的問題,致力于宣傳與推廣微軟.NET技術的應用。曾多次受邀進行有關.NET技術的講座和培訓。

書籍目錄

第一部分 C#和.NET平臺簡介第1章 NET之道1.1 NET之前的世界1.2 NET解決方案1.3 NET平臺構造塊(CLR、CTS和CLS)簡介1.4 其他支持.NET的編程語言1.5 NET程序集概覽1.6 CTS1.7 CLS1.8 CLR1.9 程序集/命名空間/類型的區(qū)別1.10 使用ildasm.exe探索程序集1.11 使用Lutz Roeder的Reflector來查看程序集1.12 部署.NET運行庫1.13 NET的平臺無關性1.14 小結第2章 構建C#應用程序2.1 NET Framework 3.5 SDK的作用2.2 用csc.exe構建C#應用程序2.3 使用TextPad構建.NET應用程序2.4 使用Notepad++構建.NET應用程序2.5 使用SharpDevelop構建.NET應用程序2.6 使用Visual C# 2008 Express構建.NET應用程序2.7 使用Visual Studio 2008構建.NET應用程序2.8 其他.NET開發(fā)工具2.9 小結第二部分 C#核心編程結構第3章 C#核心編程結構Ⅰ3.1 一個簡單的C#程序3.2 有趣的題外話:System.Environment類的其他成員3.3 System.Console類3.4 系統(tǒng)數(shù)據(jù)類型和C#簡化符號3.5 System.String數(shù)據(jù)類型3.6 窄化和寬化數(shù)據(jù)類型轉(zhuǎn)換3.7 C#迭代結構3.8 條件結構和關系/相等運算符3.9 小結第4章 C#核心編程結構Ⅱ4.1 方法和參數(shù)修飾符4.2 成員重載4.3 C#中的數(shù)組操作4.4 枚舉類型4.5 結構類型4.6 值類型和引用類型4.7 值類型和引用類型:最后的細節(jié)4.8 C#可空類型4.9 小結第5章 定義封裝的類類型5.1 C#類類型5.2 類構造函數(shù)5.3 this關鍵字的作用5.4 static關鍵字5.5 定義OOP的支柱5.6 C#訪問修飾符5.7 第一個支柱:C#的封裝支持5.8 常量數(shù)據(jù)5.9 只讀字段5.10 C#的分部類型5.11 通過XML生成C#源代碼的文檔5.12 查看勞動成果5.13 小結第6章 繼承和多態(tài)6.1 繼承的基本機制6.2 回顧Visual Studio類關系圖6.3 第二個支柱:繼承6.4 包含/委托編程6.5 第三個支柱:C#的多態(tài)支持6.6 基類/派生類的轉(zhuǎn)換規(guī)則6.7 超級父類:System.Object6.8 小結第7章 結構化異常處理7.1 錯誤、bug與異常7.2 NET異常處理的作用7.3 最簡單的例子7.4 配置異常的狀態(tài)7.5 系統(tǒng)級異常(System.SystemException)7.6 應用程序級異常(System.ApplicationException)7.7 處理多個異常7.8 finally塊7.9 誰在引發(fā)什么異常7.10 未處理異常的后果7.11 使用Visual Studio調(diào)試未處理的異常7.12 小結第8章 對象的生命周期8.1 類、對象和引用8.2 對象生命周期的基礎8.3 應用程序根的作用8.4 對象的代8.5 System.GC類型8.6 構建可終結對象8.7 構建可處置對象8.8 構建可終結類型和可處置類型8.9 小結第三部分 C#高級編程結構第9章 接口9.1 接口類型9.2 定義自定義接口9.3 實現(xiàn)接口9.4 在對象級別調(diào)用接口成員9.5 接口作為參數(shù)9.6 接口作為返回值9.7 接口類型數(shù)組9.8 使用Visual Studio 2008實現(xiàn)接口9.9 通過顯式接口實現(xiàn)解決命名沖突9.10 定義接口層次結構9.11 構建可枚舉類型(IEnumerable和IEnumerator)9.12 構建可克隆的對象(ICloneable)9.13 構建可比較的對象(IComparable)9.14 回調(diào)接口9.15 小結第10章 集合與泛型10.1 System.Collections命名空間的接口10.2 System.Collections命名空間的類類型10.3 System.Collections.Specialized命名空間10.4 裝箱、拆箱以及和System.Object的關系10.5 類型安全和強類型集合問題10.6 System.Collections.Generic命名空間10.7 創(chuàng)建自定義泛型方法10.8 創(chuàng)建泛型結構和類10.9 創(chuàng)建自定義泛型集合10.10 創(chuàng)建泛型基類10.11 創(chuàng)建泛型接口10.12 小結第11章 委托、事件和Lambda11.1 NET委托類型11.2 使用C#定義委托11.3 System.MulticastDelegate與System.Delegate基類11.4 最簡單的委托示例11.5 使用委托改造Car類型11.6 更復雜的委托示例11.7 委托協(xié)變11.8 創(chuàng)建泛型委托11.9 C#事件11.10 泛型EventHandler委托11.11 C#匿名方法11.12 方法組轉(zhuǎn)換11.13 C# 3.0 Lambda運算符11.14 小結第12章 索引器、運算符和指針12.1 索引器方法12.2 運算符重載12.3 自定義類型轉(zhuǎn)換12.4 指針類型12.5 C#預處理指令12.6 小結第13章 C# 3.0的語言功能13.1 隱式類型局部變量13.2 自動屬性13.3 擴展方法13.4 分部方法13.5 對象初始化器13.6 匿名類型13.7 小結第14章 LINQ14.1 LINQ的作用14.2 LINQ查詢表達式初覽14.3 LINQ和泛型集合14.4 LINQ和非泛型集合14.5 查詢運算符的內(nèi)部表示14.6 LINQ查詢運算符14.7 LINQ查詢14.8 小結第四部分 使用.NET程序集編程第15章 .NET程序集入門15.1 定義自定義命名空間15.2 .NET程序集的作用15.3 .NET程序集的格式15.4 構建和使用單文件程序集15.5 構建和使用多文件程序集15.6 私有程序集15.7 共享程序集15.8 使用共享程序集15.9 配置共享程序集15.10 GAC的內(nèi)部結構15.11 發(fā)行者策略程序集15.12 元素15.13 System.Configuration命名空間15.14 機器配置文件15.15 小結第16章 類型反射、晚期綁定和基于特性的編程16.1 類型元數(shù)據(jù)的必要性16.2 反射16.3 構建自定義的元數(shù)據(jù)查看器16.4 動態(tài)加載程序集16.5 反射共享程序集16.6 晚期綁定16.7 特性編程16.8 構建自定義特性16.9 程序集級別(和模塊級別)特性16.10 使用早期綁定反射特性16.11 使用晚期綁定反射特性16.12 反射、晚期綁定和自定義特性的使用背景16.13 構建可擴展的應用程序16.14 小結第17章 進程、應用程序域和對象上下文17.1 回顧傳統(tǒng)的Win32進程17.2 NET平臺下與進程進行交互17.3 NET應用程序域17.4 對象上下文邊界17.5 進程、應用程序域和上下文小結17.6 小結第18章 構建多線程應用程序18.1 進程、應用程序域、上下文及線程之間的關系18.2 NET委托的簡短回顧18.3 委托的異步性18.4 異步調(diào)用方法18.5 System.Threading命名空間18.6 System.Threading.Thread類18.7 以編程方式創(chuàng)建次線程18.8 并發(fā)問題18.9 使用Timer Callback編程18.10 CLR線程池18.11 BackgroundWorker組件的作用18.12 小結第19章 CIL和動態(tài)程序集的作用19.1 CIL編程的本質(zhì)19.2 CIL指令、特性和操作碼19.3 入棧和出棧:CIL基于棧的本質(zhì)19.4 正反向工程19.5 CIL指令和特性19.6 NET基類庫、C#和CIL數(shù)據(jù)類型的映射19.7 在CIL中定義成員19.8 剖析CIL操作碼19.9 使用CIL構建.NET程序集19.10 動態(tài)程序集19.11 小結第五部分 .NET基類庫簡介第20章 文件輸入輸出和隔離存儲20.1 研究System.IO命名空間20.2 Directory(Info)和File(Info)類型20.3 使用DirectoryInfo類型20.4 使用Directory類型20.5 使用DriveInfo類類型20.6 使用FileInfo類20.7 使用File類型20.8 Stream抽象類20.9 使用StreamWriter和StreamReader類型20.10 使用StringWriter和StringReader20.11 使用BinaryWriter和BinaryReader20.12 以編程方式“觀察”文件20.13 實現(xiàn)異步文件I/O操作20.14 隔離存儲的作用20.15 代碼訪問安全入門20.16 隔離存儲概覽20.17 使用IsolatedStorageFile獲取存儲20.18 實戰(zhàn)隔離存儲:ClickOnce部署20.19 小結第21章 對象序列化21.1 對象序列化21.2 為序列化配置對象21.3 選擇序列化格式化程序21.4 使用BinaryFormatter序列化對象21.5 使用SoapFormatter序列化對象21.6 使用XmlSerializer序列化對象21.7 序列化對象集合21.8 自定義序列化過程21.9 小結第22章 ADO.NET之一:連接層22.1 ADO.NET高層次定義22.2 ADO.NET的數(shù)據(jù)提供程序22.3 其他的ADO.NET命名空間22.4 System.Data命名空間的類型22.5 使用接口抽象數(shù)據(jù)提供程序22.6 創(chuàng)建AutoLot數(shù)據(jù)庫22.7 ADO.NET 數(shù)據(jù)提供程序工廠模型22.8 ADO.NET的連接式訪問22.9 使用數(shù)據(jù)讀取器22.10 構建可重用的數(shù)據(jù)訪問庫22.11 創(chuàng)建控制臺UI前端22.12 使用SqlCommand進行異步數(shù)據(jù)訪問22.13 數(shù)據(jù)庫事務22.14 小結第23章 ADO.NET之二:斷開連接層23.1 ADO.NET斷開連接層23.2 DataSet的作用23.3 使用DataColumn23.4 使用DataRow23.5 使用DataTable23.6 將DataTable對象綁定到用戶界面23.7 使用數(shù)據(jù)適配器填充DataSet/ DataTable23.8 重訪AutoLotDAL.dll23.9 切換多表DataSet對象23.10 Visual Studio 2008的數(shù)據(jù)訪問工具23.11 從UI層解耦自動生成的代碼23.12 小結第24章 LINQ API編程24.1 LINQ to ADO.NET的作用24.2 使用LINQ to DataSet編程24.3 使用LINQ to SQL編程24.4 使用sqlmetal.exe生成實體類24.5 使用Visual Studio 2008建立實體類24.6 使用LINQ to XML操作XML文檔24.7 在內(nèi)存文檔中導航24.8 小結第25章 WCF25.1 各種分布式計算API25.2 WCF的作用25.3 WCF核心程序集25.4 Visual Studio WCF項目模板25.5 WCF應用程序的基本構成25.6 WCF的ABC25.7 構建WCF服務25.8 承載WCF服務25.9 構建WCF客戶端應用程序25.10 使用WCF服務庫項目模板25.11 以Windows服務承載WCF服務25.12 異步調(diào)用服務25.13 定義WCF數(shù)據(jù)契約25.14 小結第26章 WF26.1 定義業(yè)務流程26.2 WF的構建塊26.3 WF程序集、命名空間和項目26.4 構建一個啟用工作流的簡單應用26.5 WF引擎承載代碼26.6 在工作流中調(diào)用Web服務26.7 構建可重用的WF代碼庫26.8 關于自定義活動的簡要說明26.9 小結第六部分 桌面用戶界面第27章 Windows Forms編程27.1 Windows Forms 命名空間27.2 創(chuàng)建一個簡單的Windows Forms 程序(不用IDE)27.3 Visual Studio Windows Forms項目模板27.4 剖析Form27.5 響應鼠標活動27.6 響應鍵盤活動27.7 設計對話框27.8 通過GDI+呈現(xiàn)圖形數(shù)據(jù)27.9 創(chuàng)建一個完整的Windows Forms應用程序27.10 小結第28章 WPF和XAML28.1 WPF背后的動機28.2 各種形式的WPF應用程序28.3 WPF程序集28.4 創(chuàng)建(不使用XAML的)WPF應用程序28.5 Application類型的其他細節(jié)28.6 Window類型的其他細節(jié)28.7 構建(XAML相關的)WPF應用程序28.8 將標記轉(zhuǎn)換為.NET程序集28.9 使用代碼隱藏文件實現(xiàn)的關注點的分離28.10 XAML語法28.11 使用Visual Studio 2008構建WPF應用程序28.12 在運行時處理XAML:SimpleXaml- Pad.exe28.13 微軟Expression Blend的作用28.14 小結第29章 使用WPF控件編程29.1 WPF控件庫概述29.2 使用XAML聲明控件29.3 依賴屬性的作用29.4 路由事件29.5 使用Button類型29.6 使用CheckBoxe和RadioButton29.7 使用ListBox和ComboBox類型29.8 使用文本區(qū)29.9 使用面板進行內(nèi)容布局29.10 使用嵌套面板創(chuàng)建窗口框架29.11 WPF控件命令29.12 WPF數(shù)據(jù)綁定模型29.13 使用IValueConverter進行數(shù)據(jù)轉(zhuǎn)換29.14 綁定到自定義對象29.15 將UI元素綁定到XML文檔29.16 小結第30章 WPF 2D圖形呈現(xiàn)、資源和主題30.1 WPF圖形呈現(xiàn)服務30.2 探究Shape派生類30.3 使用WPF畫刷30.4 使用WPF畫筆30.5 探究Drawing派生類30.6 UI變換的功能30.7 WPF動畫服務30.8 WPF的資源體系30.9 為WPF控件定義應用樣式30.10 使用模板改變控件的UI30.11 小結第七部分 使用ASP.NET構建Web應用程序第31章 構建ASP.NET網(wǎng)頁31.1 HTTP的作用31.2 Web應用程序和Web服務31.3 HTML的作用31.4 客戶端腳本的作用31.5 提交表單數(shù)據(jù)(GET和POST)31.6 構建傳統(tǒng)的ASP頁面31.7 傳統(tǒng)ASP相關問題31.8 ASP.NET命名空間31.9 ASP.NET網(wǎng)頁代碼模型31.10 ASP.NET站點目錄結構細節(jié)31.11 ASP.NET頁面編譯周期31.12 頁面類型的繼承鏈31.13 與傳入的HTTP請求交互31.14 與輸出HTTP響應交互31.15 ASP.NET網(wǎng)頁的生命周期31.16 Web.config文件的作用31.17 小結第32章 ASP.NET Web控件、主題和母版頁32.1 Web控件的本質(zhì)32.2 System.Web.UI.Control類型32.3 System.Web.UI.WebControls.WebControl類型32.4 ASP.NET Web控件的類別32.5 構建功能豐富的ASP.NET站點32.6 驗證控件的作用32.7 使用主題32.8 使用HTML表格布局控件32.9 小結第33章 ASP.NET狀態(tài)管理技術33.1 狀態(tài)問題33.2 ASP.NET狀態(tài)管理技術33.3 ASP.NET視圖狀態(tài)的作用33.4 Global.asax文件的作用33.5 應用程序狀態(tài)與會話狀態(tài)差別33.6 使用應用程序緩存33.7 維護會話數(shù)據(jù)33.8 cookie33.9 元素的作用33.10 ASP.NET用戶配置API33.11 小結第八部分 附錄附錄A COM與.NET的互操作性A.1 NET互操作的研究范圍A.2 NET調(diào)用COM互操作的簡單示例A.3 NET互操作程序集A.4 運行庫可調(diào)用包裝A.5 COM IDL的作用A.6 使用類型庫創(chuàng)建互操作程序集A.7 創(chuàng)建一個更復雜的COM服務A.8 互操作程序集A.9 在COM中使用.NETA.10 CCW的作用A.11 NET類接口的作用A.12 構建.NET類型A.13 生成類型庫并注冊.NET類型A.14 導出類型信息A.15 創(chuàng)建一個Visual Basic 6.0的測試客戶端A.16 小結附錄B 使用Mono進行平臺無關的.NET開發(fā)B.1 NET的平臺無關性B.2 獲取和安裝MonoB.3 Mono開發(fā)工具B.4 使用Mono創(chuàng)建.NET應用程序B.5 推薦學習B.6 小結索引

章節(jié)摘錄

當初步了解.NET的語言無關性后,開發(fā)者會提出許多問題。其中最普遍的問題可能就是:“如果所有的.NET語言都會編譯成‘托管代碼’,為什么我們還需要多種編譯器呢?”這個問題有多個答案。首先,程序員在選擇編程語言時有各自不同的喜好(包括我自己)。一些人喜歡充滿分號和圓括號而且關鍵字相當少的語言;另一些人喜歡更具有“可讀性”語法標記的語言(如EIVB);還有一些人在開始轉(zhuǎn)向.NET平臺時還希望可以使用他們已掌握的技能(通過COBOl.NET)?,F(xiàn)在,平心而論,如果微軟推出一門派生自BASIC語言系列的“官方”.NET語言,你認為所有的程序員會喜歡這樣的選擇嗎?或者,如果這個唯一的“官方”.NET語言是基于Fortran語法的,那么可以想象所有人都會對.NET置之不理。因為.NET運行庫并不在意一段托管代碼是由哪種語言生成的,所以.NET程序員可以繼續(xù)使用他們熟悉的語法,且與組員、部門甚至其他公司共享編譯的程序集(不管他們用的是哪種.NET語言)。將各種.NET語言集成為一個統(tǒng)一軟件方案的另一個好處,就是能夠取長補短。所有的編程語言都有各自的優(yōu)點和缺點。例如,一些編程語言對高級的數(shù)學處理有相當完美的內(nèi)在支持能力。另一些則精于支持財務計算、邏輯計算和與大型機交互等。當你學習到某種編程語言的優(yōu)點并將其融合于.NET平臺時,大家就都能受益。當然,實際上我們大部分時間還是在用自己習慣的.NET語言來編寫程序。但是,一旦學會了一種.NET語言的語法,就很容易掌握其他的了。這是非常有益的,對軟件技術顧問而言尤其如此。如果你熟悉C#,在為只使用Visual Basic.NET的客戶做咨詢時,你仍然能夠使用.NET Framework的功能,并且可以毫不費力地掌握代碼的整體結構。夠棒的吧。1.5.NET程序集概覽不管選擇了哪種.NET語言編程,需要明白的是,盡管.NET二進制文件COM服務器和非托管Win32二進制文件(*.dll或*.exe)具有相同的文件擴展名,但它們的內(nèi)部卻是完全不同的。例如,*.dll的.NET二進制文件不會導出與COM運行庫進行通信的方法(因為.NET不是COM)。此外,.NET二進制文件不使用COM類型庫文件描述而且不用在系統(tǒng)注冊表中注冊。也許更重要的是,.NET二進制文件不包含特定于平臺的指令,它包含的是平臺無關的IL(中間語言)和類型元數(shù)據(jù)。圖1.3清楚顯示了這個流程。插圖:

編輯推薦

《C#與.NET 3.5高級程序設計》(第4版)由微軟C# MVP Andrew Troelsen編寫,歷經(jīng)多次修訂,適合各層次.NET開發(fā)人員閱讀。Amazon超級暢銷書,全面涵蓋.c#3.O,用IL深入揭示各語言特性,深度剖析.NET 3.5平臺。讓你知其然,更知其所以然,國內(nèi)多位微軟MVP聯(lián)手翻譯。C#語言作為.NET平臺上的第一語言.已經(jīng)成為目前功能最強大的通用語言之一?!禖#與.NET 3.5高級程序設計(第4版)》是被譽為“C樣圣經(jīng)”的經(jīng)典巨著,因語言生動流暢、剖析深入、涵蓋全面而廣受推崇。暢銷不衰。曾經(jīng)獲得Referenceware編程圖書大獎。并入選Jolt大獎提名。書中探討了C#語言和.NET平臺的各種特性。包括重載運算符、指針、泛型等高級功能和CIt、遠程處理、Windows Forms、ASP.NET、ADO.NET等技術。不少概念都通過lL代碼透視其背后的本質(zhì),使你知其然。更知其所以然。新版更透徹闡述了C#3,0新功能(包括自動屬性、擴展方法、匿名類型等)和.NET 3.5的最新特性(包括LINQ、WPF、WCF和WF等相關技術)。附錄中包括了COM與.NET的互操作和Mono發(fā)等主題。與同類圖書不同。全書由世界級C#專家Andrew Troelsen以一人之力完成.因此寫作思路和布局謀篇都獨具匠心。中文版由國內(nèi)多位微軟MVP聯(lián)手譯出。強大的譯者陣容有力地保證了這部權威原著原汁原味的重現(xiàn)。

圖書封面

圖書標簽Tags

評論、評分、閱讀與下載


    C#與.NET 3.5高級程序設計 PDF格式下載


用戶評論 (總計17條)

 
 

  •   用了張十元代金券,竟然給我一本舊書。書皮褶皺,側面暗黃。哎~~~~不厚道。。。。。。
  •   卓越的書不僅很正版,書的內(nèi)容更加豐富,受益匪淺!
  •   如果需要學習c#,那么就請讀這本書吧,它讓里從.net底層到高層全面了解c#這本書我最早是看英文電子版的,中文版出來就馬上買了一本
  •   老公買的,千挑萬選選中的哦,老公覺得不錯
  •   買了這本書,居然在預計送到日期前到貨我跟蹤下自己的訂單,居然發(fā)現(xiàn)收到書時其還在配送途中,我懷疑快遞公司是不是給我的是正版書?。》饷嬗悬c皺巴巴的。
  •   .net搞3年了,看了后感受很多,特別細節(jié)上,對于概念的理解,舉的例子都很易懂,可以讓人跟容易理解,至少比當初在學校時好多了書里寫“源代碼在XX目錄下”是不是有光盤?我怎么沒有收到?
  •   無論是原版英文在內(nèi)容方面的廣度和深度,以及翻譯文字的質(zhì)量都是我所讀的難遇的好書
  •   經(jīng)典教材,不錯。。。
  •   講的比較深入,吧編譯的深層運行機制細細道來,不錯。。
  •   27號(周日)訂貨,31號早上到貨,原本期待30號能收到的,雖然比期待晚了一天但還是很欣喜。書的外觀完好無損,內(nèi)頁尚未發(fā)現(xiàn)破壞,一看上去書很新。粗略翻看了一下,內(nèi)容多、全、深但不細,或者是我功力不夠還不到能參悟的級別,將靜心潛讀。
  •   書名叫“高級程序設計”,非常名副其實,太高級了
  •   給LG買的。他說還可以。
  •   內(nèi)容與前言的溢美之詞很不匹配,頂多當工具書用,但形式上又不如Core Java,在微軟大旗下所謂的那些大師們,跟計算機科學領域的大師根本沒法比
  •   作者對ASP.net3.5非常內(nèi)行,不僅介紹了功能,還介紹了微軟的想法,原來微軟的東西是這樣用的!!如果你想成為微軟工具開發(fā)的正規(guī)軍,那這是一本了不起的書。
  •   感覺不是很好!畢竟是高級編程,不大適合初學者。網(wǎng)絡編程的沒有。
  •   還沒看,但發(fā)貨很快,第二天就拿到手了,很厚,有的看了,只是沒光盤
  •   講的東西太全了,如果是入門的話看的建議看 核心技術。
 

250萬本中文圖書簡介、評論、評分,PDF格式免費下載。 第一圖書網(wǎng) 手機版

京ICP備13047387號-7