您的位置:首页 > 其它

你必须知道的.NET》 - 学习方法论

2010-10-14 12:21 239 查看
1、基础至上

再花哨的应用,再绝妙的技巧,其实都架构在技术基础的基础上,没有对技术本质的深入理解,何来更进一步了解其他。所以必须要坚持,不放弃枯燥,从基础开始踏踏实实的学习基础,这是一个由量到质的飞跃,就.NET来说,了解CLR运行机制,深刻的认识内存管理、类型系统、异常机制,熟悉FCL基本架构,学习C#语言基础,认识MSIL、元数据、Attribute、反射、委托,面向对象和设计架构,都是必不可少的基础内容。

Don Box, Chris Sells, 《Essential .NET》,一本圣经,深刻而又深邃。

Jeffrey Richter,《Applied Microsoft .NET Framework Programming》,.NET世界的唯一经典,偶像级的Jeffrey。

Patrick Smacchia,《Pracical .NET2 and C#2》,.NET领域的百科全书,可以当作新华字典来读技术。

Richard Jones, Rafael D Lins,《Garbage Collection,Algorithms for Automatic Dynamic Memory Management》,内存管理方面,就靠它了。

Christian Nagel, Bill Evjen, Jay Glynn,《Professional C# 2005》,C#基础大全。

《Thinking in Java》,是的,一本Java书,但是带来的不仅仅是Java。

2、我够OO么?

但凡从项目和产品一路厮杀而来的高手,都理解OO的强大和神秘。所以OO也是软件技术的必要基础,也是技术修炼的基本功之一。然而,OO的修炼远没有.NET基础来得容易,苦嚼一车好书,狂写万行代码,也未必能够完全领悟其精妙。

EricFreeman, Elisabeth Freeman.《Head First Design Patterns》,标准的言简意赅,形象生动,难得佳作。

Erich Gamma, Richard Helm, Ralph Johnson, John Vlisside,《设计模式-可复用面向对象软件的基础》,开山祖师的作品。

Martin Fowler, Refactoring:《Improving the Design of Existing Code》,同样的经典,很拉风。

Robert C. Martin,《敏捷软件开发:原则、模式与实践》,对于设计原则,无出其右者。

张逸,《软件设计精要与模式》,国内作品的优秀作品,园子里的经典之作。

在读书的基础上,还要不断的学习和实践他人的智慧结晶,看经典框架,写熟练代码。“做软件的不写上千万行代码,根本就没感觉”。格物致知:

面向对象的基本内容:类、对象、属性、方法、字段。

面向对象的基本要素:封装、继承、多态、接口。

设计原则:接口隔离、单一职责、开放封闭、依赖倒置、Liskov替换。

设计模式:

Singleton

Abstract Factory

Factory Method

Composite

Adapter

Bridge

Decorator

Facade

Proxy

Command

Observer

Template Method

Strategy

Visitor

分层思想:例如经典的三层架构

模块化

AOP

SOA

ORM

……

这些OO领域的基本内容互相联系、互为补充,没有独立的分割,也没有独立的概念,了解这个必然牵出那个,故修炼起来不孤单,反而在不断的领悟中能够窃喜原来软件也可以如此精彩。

3、舍得,是门艺术

.NET技术有着近乎夸张的应用范畴,从Windows GDI应用,到ASP.NET Web应用,到WCF分布式应用,到Windows Mobile嵌入式应用,到ADO.NET数据处理,到XML WebService,.NET无处不在。故,对于.NET技术的学习,应该有个起码的认识——我不可能精通.NET的整个面貌。所以必须有个选择,在如此多的技术应用中,有一个基础始终支撑着.NET技术这艘航母在稳步前行,不管是什么应用,不管是什么技术,不管是什么框架,CLR总是.NET技术的心脏。对.NET的学习一定要打好基础,从了解CLR底层机制和.NET框架类库开始,逐渐的追求我的技术选择。必须要有分辨的能力,和抵抗诱惑的心态,找准自己方向,并且坚持下来,如何取舍,全凭自己慧眼。

4、读几本经典的作品

这是最初的开始,经典的作品是一个好的起点。

5、遵守规范,养成良好的编程习惯

软件是一个可持续的资源,于人于己都必须遵守规则,这是一个职业道德问题。对自己而言,良好的编程习惯正是一个良好学习习惯的开始。用艺术创作的心态写出优雅的代码。

Krzysztof Cwalina,Brad Abrams , 《.NET 设计规范--.NET约定、惯用法与模式》

6、学习,讲究方法

懂得了解自己的人才是真正的智者,挖掘自身潜力永远是摆在自己眼前的课题。自我探索,只有创新才能成功。若暂时找不到,那就苦练多看,这是最实在的方法。以无法为有法,以无道为有道。

7、找一个好老师

遇上一位德高望重而又乐于奉献的师长,乃是人生之幸运,但概率小之又小。所以互联网就是一位才高德厚的大师,google、baidu、MSDN、博客园……

8、英文,无可避免

师夷长技以制夷。多看多写多读。英文网站与博客,可让技术、英语同时提高:

http://code.msdn.microsoft.com/

http://codeproject.com/

http://www.asp.net/

http://codeguru.com/

http://www.c-sharpconer.com/

http://blogs.msdn.com/bclteam/

http://blogs.msdn.com/ricom/

http://samgentile.com/blog/

http://martinfower.com/bliki

http://blogs.msdn.com/kcwalina/

http://www.pluralsight.com/blogs/dbox/default.aspx

http://blogs.msdn.com/cbrumme/

累并快乐着,永远是这个行业的,这群人的主旋律。在技术面前,我开怀一笑,发现自己其实很专注,这就够了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: