Eric Lippert 推荐的C# 阅读清单

40 sec read

Eric Lippert 是微软C#编译器d的开发者和C#语言设计小组的重要成员。他的博客,Fabulous Adventures in Coding, 页主要是关于编程语言的设计和实现。他也经常作为一名问题解答者出现在Stack Overflow的C#板块内容中。

以下是他推荐的一些相关图书:

Sams Teach Yourself Visual C# 2010 in 24 Hours by Scott Dorman

中文版:《C# 5.0入门经典

不要被这本书的名字吓到,这本书对于入学者非常的初学者。虽然Eric Lippert更加认同花十年学一门语言。作者没有像其他入门书作者一样,用自己的学习路径来组织书本的结构,也没有按照程序发展的顺序进行介绍,而是采用循序渐进。由浅入深的方式。

Essential C# 4.0 by Mark Michaelis

中文版:《C# 6.0本质论

C# In Depth, 2nd Edition by Jon Skeet

中文版:《深入理解C#

这两本书Eric经常推荐给中高级C#程序员,这两本书都将全部注意力放到了C#语言上,只是偶尔提到了.NET基础框架。Mark Michaelis 的书不仅适合初学者,也适合C#熟手,以及从其他语言转型过来的程序员。(Eric在以前的博文中就曾经推荐过这本书 。《Essential C#》每一章的开头都有一个思维导图来展示本节的内容,这比仅仅使用一个列表要生动得多,也更利于记忆。Jon SkeetStackOverflow传奇 ,他的书从C# 1.0开始,介绍了各个C#版本的语言特性。如果说Essential C#传达了C#的本质,那么C# in Depth则深入了C#各个晦涩的角落。Jon的英式幽默还贯穿了整本书。

Effective C#, 2nd Edition by Bill Wagner

中文版:《C#高效编程:改进C#代码的50个行之有效的办法

More Effective C# by Bill Wagner

中文版:《More Effective C#中文版

这两本书都不是初学者教程,而是分别探讨了50个编写高质量C#代码的技巧。Bill Wagner 总是能简明准确地解释复杂的主题。如果你想了解优秀的(或糟糕的)C#实践,可以浏览Bill在MSDN Developer Center上的文章 。这两本书和他的文章将指引优秀的程序员迈向通往伟大的道路。

The C# Programming Language, 4th edition by Anders Hejlsberg, Mads Torgersen, Scott Wiltamuth and Peter Golde

中文版:《C 程序设计语言

这是一本关于C#语言详细说明的书,由C#之父Anders Hejlsberg编写,这边书甚至比MSDN上的C#语言规范还要详细。虽然可以免费下载C#语言规范,但是还是建议购买纸质版,本书还包含了大量的C#专家注释(包括Eric本人、Jon Skeet、Bill Wagner等)。注释内容详细的解释和说明了一些语言设计时的一些难点。

Java Puzzlers by Joshua Bloch and Neal Gafter

中文版:《Java解惑》

你一定会奇怪为什么C#书单里会混杂着一本Java书籍,Eric的解释是:
  • Neal GafterJoshua Bloch (Effective Java的作者)所指出的这些陷阱对语言的设计者来说是一个警醒。如果开发者落入了陷阱,这是语言设计者的责任,因为他们应该让程序员能轻松有效地避开这些陷阱。
  • 本书介绍的一半以上的陷阱会在等价的C#程序中产生警告或错误!不管是语言设计还是生活,要避免犯错误,就要从其他人犯的错误中吸取教训。
  • 在语言设计和生活中,最好的错误是别人的错误。
Neal现在在微软C#设计和实现小组工作,也许有一天你会看到一本C# Puzzlers。

 

Introduction to Algorithms, 3rd Edition by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein

中文版:《算法导论

Purely Functional Data Structures by Chris Okasaki

中文版:暂无

这两本书都不直接与C#有关,但Eric却经常向人们推荐。Introduction to Algorithms在微软几乎人手一本。很多计算机科学科班出身的开发者很少在日常开发中使用他们学到的理论原则,但C#编译器小组可不是这样。商业软件开发者如果精通计算机科学理论,也可以获益良多。

我们正处于函数式编程复兴的年代。像F#这样的函数式语言越来越受欢迎,并且纯函数式语言中的一些理念正在逐步融入主流面向对象语言。比如C#和VB中的LINQ,在很大程度上受到了Haskell式的单体查询的影响。同样,纯粹的函数式数据结构在并发程序中能工作地更好。大而全的算法书主要关心的是传统的数据结构,如可变数组、栈、队列等,而Chris Okasaki的这本薄而优雅的算法书则主要关注的是用不可变的、线程安全的、内存高效的部分构建复杂的数据结构。本书中的很多内容都可以在线浏览 。C#开发者可能不太适应其紧凑的语法,F#开发者可能要感觉好得多。

原文地址:http://www.informit.com/articles/article.aspx?p=1769249

打赏作者
微信支付标点符 wechat qrcode
支付宝标点符 alipay qrcode

Chrome扩展程序代码路径

Chrome中安装了一个翻译的扩展程序,但该扩展程序对“复制”进行了监听,每次复制翻译的内容都弹出一个框要求注
8 sec read

Chrome占用大量内存的解决方法

在日常使用Chrome的过程中会发现其非常的占用内存。原因是Chrome对每个插件和浏览器标签页都新开一个单独
6 sec read

发表评论

电子邮件地址不会被公开。 必填项已用*标注