本文在《深入理解C#(第二版)》译者序的基础之上进行了一些删改

Manning出版社出版的很多图书,都用XXX in Action这样的方式来命名,如著名的Ajax in Action、专门介绍LINQ的LINQ in Action,以及jQuery in Action、PHP in Action等等。这些书偏重基础,并包含大量的代码示例,即使是初学者,读起来也会十分轻松。我们一般称这种书为入门书,图灵公司在引进的时候,也给它们起了一个恰如其分的中文名:实战。如《Ajax实战》、《LINQ实战》等等。

然而这本书则不同,它的英文名不是C# in Action,而是C# in Depth。这in Depth和in Action有什么区别呢?

很多C#程序员在有了一定基础之后,会出现一个成长的瓶颈。他们觉得似乎了解了C#的基本语法和各种语言特性,但对于这些特性的演变以及它们之间的关联却知之甚少。他们会在代码中使用泛型集合,但是对于类型推断的规则似乎还很模糊;他们经常使用foreach语句,但却无法自如地使用yield;他们知道C# 3中增加了很多非常酷的语法糖,但却不知道这些语法糖实际上都是为了最酷的LINQ准备的;他们为C# 4提供了动态类型而欢欣鼓舞,但却不了解DLR如何实现动态绑定,并且往往会滥用dynamic。这时候,他们需要一本书,一本能对C#的每个特性进行透彻分析的书,一本能指引他们走向正确道路的书。他们不需要一本C# in Action,因为他们已经熟悉了字符串和整型,已经会编写接口、类、方法、属性和字段,甚至能说出引用类型和值类型的区别。他们需要的是一本进阶书,一本深入讲解C#的书。而现在您手上的,正是这样一本书。

这就是in Depth和in Action的区别!

本书没有任何关于.NET平台和CLR的内容,也不会指导你如何创建WPF或ASP.NET应用程序,它将全部注意力都放到C#语言本身,着重解析了C#各个版本的进化和演变。它面向中高级C#程序员,如果您只是初学者,那它并不适合您。正如老赵所说,这本书中肯定有一半以上是你不知道的东西。而且我觉得,书中的每一段代码,都可以作为一道面试题,如果您打算招聘一位高级.NET工程师,不妨参考书中的示例。

在本书英文版刚刚问世时,就得到了业界诸多大牛的肯定和推荐。当图灵的编辑问我是否有兴趣翻译第二版的新增内容时,我恰好刚刚阅读完第一版的中文版,正处于余香绕齿的阶段,于是毫不犹豫地就答应了下来。

第二版新增了三个大的章节(分别介绍了C# 4的新增特性和代码契约),并对迭代器和LINQ等内容进行了修订。说实话,我的工作量并不算多,但从开始翻译到最后交付,总共持续了八个多月(一月份签约,八月份交稿,后续还进行了一些修改),直接导致本书的上市推迟了将近半年,在此要向各位读者致歉。之所以翻译得慢,除了我自身的懈怠以外,本书的英文原文也并不像其他技术书籍那样浅显易懂,其中有很多暗语和弦外之音,如果我由于水平有限而没能参透其中的含义,请各位读者批评指正。

周靖和朱永光两位老师为第一版的翻译付出了艰辛的劳动,在他们打下的良好基础之上进行工作,让我感觉踏实了不少。我还要感谢老赵为本书进行复审,如果没有他的修改意见,您一定会对这本书失望有加。

最后,祝朋友们阅读愉快!希望您在学习编程这条永无止境的道路上,不仅in Action,更要in Depth

转载于:https://www.cnblogs.com/kirinboy/archive/2011/12/28/the-differences-between-in-depth-and-in-action.html

In Depth和In Action的区别——写在《深入理解C#(第二版)》出版之际相关推荐

  1. 徐雷:做最好的自己!写在《mongodb实战》第2版和《WCF服务编程》第4版出版之际...

    做最好的自己:写在<mongodb实战>第2版和<WCF服务编程>第4版出版之际.很久之前我写过一个类似的文章. 这篇文章写给过去的10.也写给未来的自己. 你是否对自己的未来 ...

  2. 模式对话框和非模式对话框的区别(出自MFC windows程序设计第二版p370)

    模式对话框和非模式对话框的区别:(出自<MFC windows程序设计>第二版p370) 1.显示模式对话框需要调用CDialog::DoModal,而显示无模式对话框则要调用CDialo ...

  3. 对《Clojure in Action》第二版的书评与作者问答

    由Amit Rahore及Francis Avila撰写,Manning出版的<Clojure in Action>第二版以本质性的.通透的.结构组织良好的方式对Clojure 1.6进行 ...

  4. python基础教程第二版和第三版有什么区别-《Python基础教程》(第2版修订版)中要注意的地方...

    想必现在大家学习Python都会用3.0及以上的版本了,虽然2.X的版本依然很多,但是这两年随着部分开源项目不再支持2.X版本,3.X已经成为趋势. 正是在这样的大背景下,我最近用这本<Pyth ...

  5. Action Pascal(A语言)v3.0官方版

    2019独角兽企业重金招聘Python工程师标准>>> 名称:Action Pascal(A语言)v3.0官方版 版本:3.0 软件大小:2.8MB 软件语言:中文简体 软件授权:免 ...

  6. 自己动手写一个印钞机 第二章

    2019独角兽企业重金招聘Python工程师标准>>> 作者:阿布? 未经本人允许禁止转载 ipython notebook git版本 目录章节地址: 自己动手写一个印钞机 第一章 ...

  7. 写在《ASP.NET MVC 4 Web 编程》即将出版之际!献给有节操的程序员!

    <Programming ASP.NET MVC 4>中文版即将上市了!非常荣幸我可以再次参与一本不错的技术书籍的翻译工作. 这也是在<WCF技术内幕>与<WCF服务编程 ...

  8. Python编程从入门到实践(第二版)课后习题自写代码

    Python编程从入门到实践(第二版)课后习题自写代码 第八章 函数 最近自学的python,动手做了一下课后习题,错误也许会有,和大家一起探讨.多多指教! 8.3 返回值 动手试一试代码片 &quo ...

  9. 手写一个基于NIO的迷你版Tomcat

    笔者也建立的自己的公众号啦,平时会分享一些编程知识,欢迎各位大佬支持~ 扫码或微信搜索北风IT之路关注 本文公众号地址:手写一个基于NIO的迷你版Tomcat 在很久之前看到了一篇文章写一个迷你版的T ...

最新文章

  1. 【java】兴唐第二十三节课(暑期第一节TreeSet)
  2. CodeChef--SEPT14小结
  3. swiper超出部分出现滚动条
  4. java抽象工厂模式_Java 抽象工厂模式
  5. zen服务器芯片,服务器版Zen处理器简直大杀器:32核64线程,8通道DDR4内存
  6. python gettext_python gettext使用
  7. 《ANSYS 14.0超级学习手册》一2.5 本章小结
  8. mysql --one-database_MySQL数分:安装及入门
  9. springboot酒店管理信息系统答辩PPT模板
  10. 雷达多普勒频率计算公式_智能驾驶之眼-毫米波雷达技术详解
  11. 从源数据库抽取数据到中间库
  12. 如何在web项目中访问HTML页面
  13. html中table设置滚动条
  14. 关于bat中set /p=前面加空格的bug修复方法
  15. Android实现第三方登录并获取到头像、名字
  16. STM32智能小车------TCRT5000循迹
  17. Liunx(2) 发送邮件通知
  18. 考研计算机会计专业大学排名,会计学研究生院校排名
  19. 天气预报c是什么意思_【技术·航天】气象锦囊--人工智能赋能数值天气预报
  20. Excel中如何制作下拉菜单

热门文章

  1. Gentoo Framebuffer, Bootsplash Grubsplash 指南(修改版)
  2. 通过 JavaScript 获取/设置元素样式的方法
  3. 【零基础学Java】—继承的概述(十九)
  4. 【王道考研操作系统】—文件的基本操作
  5. java audiostream 用不了_AudioInputStream不起作用
  6. python七巧板代码_canvas绘制七巧板
  7. 领导想提拔别人,让我让位置,我该怎么办?
  8. 哪些事情瞬间暴露了你的贫穷?
  9. 怎么做装修预算?装修预算需要注意的三大事项
  10. 创业者:永远站着顾客这边