background image

《学了

.Net 做什么开发》中我讲到了目前.Net 开发主要方向是 Web 开发,因此在本篇中我将主要讲解做 Web 开

发要学哪些东西,怎么学,由于内容比较多,我将分几次发。下图是我推荐的学习内容和学习顺序(除了这里列
出的内容,要走向高手之路肯定还有更多技术需要学习,我这里只是对于初学者列出的主干学习内容,并不是全
部):

   开发者口中的.Net 全称是.Net Framework,在中国大陆,一般将.Net

读作 道特耐特 (中文音标比英文

音标更好读,呵呵)或者 点耐特 。

.Net 是微软推出的一门技术,它是一个技术平台,基于这个平台进行开发可

以简化很多工作。关于到底什么是

.Net,不是一两句话能说清楚的,而且也没办法让初学者理解到底什么

.Net,因此你只要记住.Net 这个词,随着我们越学越深入,你就会理解.Net

    

到底是什么东西了。

.Net 平台上有很多语言,比如 C#、VB.Net、IronPython、F#、Powershell 等,F#、Powershell 是满

足特定用途的语言,

IronPython、IronRuby 等并没有广泛应用,VB.Net 是仅次于 C#的第二大基于.Net 的语

言,不过按照微软的战略是把主要精力放到

C#上,VB.Net 只是微软为了将 VB 开发人员平滑的转移到.Net 平台

下的语言。因此对于语言来说大家学习

C#即可。C#

在中国大陆的叫法一般是

C sharp(C 煞普)”,也有少数人

读成

C

井 ,我不推荐这种叫法。

    初学者可能会弄不清 C#和.Net 的关系,.Net 是一个技术平台,而 C#是这个技术平台上的一门语言,就像
Windows 是一个操作系统,而 Word、QQ、FireFox 则是在 Windows 上运行的一个程序。初学者不必纠结于这
个概念,不是很明白也没关系。
    .Net 的开发工具是 VisualStudio,VisualStudio 现在有

VisualStudio2005、VisualStudio2008、VisualStudio2010

等版本,注意不要纠结于 到底装

VisualStudio2005 还是 VisualStudio2008,听说有的公司还在用 VisualStudio2005” “

、 到底是用新版

本的

VisualStudio2010 还是用 VisualStudio2008”这样的问题,因为这些版本并没有本质的不同,使用方

法都类似,就像你会用

WindowsXP,换了 Windows7 以后经过短暂的熟练会用 Windows7 了一样。因为

VisualStudio2010 比较消耗资源,如果你的计算机配置较好可以安装 VisualStudio2010,如果配置较差则
推荐安装

VisualStudio2008。

     要学习 Web 开发一定要按照正确的顺序进行学习,很多人被一些《21 天精通***》这样的垃圾书的影响,
不学

C#、不学.Net Framework、不学 Dom,直接上来就学 ASP.Net,拖两个控件、配两个属性、双击控件写

一个事件响应方法,就开始自诩 精通

ASP.Net”了,照着书控件拖来拖去,可是连

C#、.Net、ASP.Net、HTML、JavaScript 之前的关系是什么都不清楚,闹出了很多笑话。欲速则不达,速成
的结果就是以后浪费更多的时间,回想这么多年你走过的路,有多少次为了走快点就跳着走,最后又浪费时间返
工的事情,按照正确的顺序才能更快、更好的掌握

.Net。

    

有的人可能认为 我不想成为高手,有一口饭吃就行了,会拖控件就行了呗 ,千万不要以为会 不拖控件的

” “

开发 就是高手了,高手没有那么好当的。我没有奢求学编程的人个个都是以 成为世界顶尖级程序员 、 国

.Net

开发者中的知名开发者 为目标,这个也不现实,大部分人学编程只是看做软件开发工资不低,想赚几年

钱娶媳妇生娃,这种想法并不是多没出息的想法,毕竟 老婆孩子热炕头 是最朴实的幸福,你不需要背负 振兴中

国软件产业 这种的重任,但是最起码应该找到一份不错的工作,工作几年以后能有钱交得起房子首付(对于大部
分人来讲,能够交得起首付成为房奴都是很奢侈的事情)、每月供月供吧,如果只会拖控件的话就不是能不能成
为高手的问题,而是能不能养家糊口的问题了。
     下面来详细讲解学习的各个步骤:
一、

C#面向过程编程。

    学习 C#语言分为 C#面向过程编程和 C#

面向对象基础两部分。听到

C#

面向过程编程 有人会问了

C#不是一

门面向对象的语言吗,哪儿来的面向过程编程? ,其实面向对象不是代替面向过程的,面向对象是面向过程的一
个补充和发展,面向过程就是代码逐行执行,面向过程就是

if/else,面向过程就是 for 循环,面向过程就是变

量、函数,

C#中最基础的也是 if、for、变量、函数等这些东西,这些东西就是 C#的面向过程部分。对于编程的

初学者来说,最难的不是类、继承、控件、

ASP.Net、AJAX

之类神乎其神的东西,而是 程序化的思维方式 ,也

就是怎么把一个问题的解决方式用计算机的思维方式进行描述。
    我接到过很多想深入学习.Net

学生的咨询,当我问到 你的

.Net

基础怎么样 的时候,很多人都回答 学过

C#、.Net、ASP.Net

,感觉基础还行 ,但是我给了他一个很简单的题,比如 用

for 循环累加的方式计算 1 到

100

” “

之间整数的和 、 提示用户输入两个数字,然后程序打印两个数字的和 ,很多人都做不出来。

    对于初学者来说先不用管面向对象、ASP.Net 之类的东西迷惑,先学习用最朴实的 for、if 来编写程序,

通过亲手编写练习题代码来逐渐形成程序化的思维方式,这个阶段也不要使用 看起来很酷 的

WinForm 或者

ASP.Net 页面来做,因为那样就会涉及到这个阶段不需要去了解的问题,先编写最简单的控制台程序就可以。推
荐大家看我录制的视频教程《【传智播客

.Net 视频】第 1 季 C#编程基础》,这个教程针对 C#零基础的同学进行

讲解,并且在课程中给出了非常多的练习,一定要自己亲手把代码熟练的写出来,记住是亲手写出来,而不是照

” “

着我的代码抄,更不能是看懂了我的代码就以为自己掌握了,要知道 看懂了 和 会写了 之间差着十万八千里呢。

对于初学者来说一开始写那些练习可能有点困难,先理解我写的代码,然后自己总结成 先

***后***,再***,

如果

***则***”这样的用语言描述的算法,然后照着算法描述自己写代码,发现有地方写起来遇到问题的话再参