第一步 掌握一门NET面向对象语言,C#或VB.NET

我强烈反对在没系统学过一门面向对象(OO)语言的前提下去学ASP.NET。 ASP.NET是一个全面向对象的技术,不懂OO,那绝对学不下去!

第二步 对.NET Framework类库有一定的了解

可以通过开发Windows Form应用程序来学习.NET Framework。

ASP.NET是建构在.NET Framework之上的技术,你对.NET Framework了解得越深,学习ASP.NET就越快。

举个例子:下面简单列出几个对掌握ASP.NET非常重要的概念: 对象的内存模型,委托,
事件,多线程,程序集和应用程序域,安全模型 .NET Framework当然还有许多其它的东西,

但不理解与把握清楚上述这些东西,是很难真正把握 ASP.NET的。

出于急迫的心情与现实的考虑,不少人没有扎实的面向对象基础就想直接学习ASP.NET,

其结果只 能是欲速则不达。 在具备了OO基础之后,以下是具体的学习ASP.NET技术步骤。

第一步:学习HTML与CSS  这并不需要去学一大堆的诸如Dreamweaver,

Firework之类的各种网页设计工具,关键是理解HTML 网页嵌套的block结构与CSS的box模型。

许多ASP.NET控件最后都必须转化为HTML。而且,div+CSS是当 前主流的网页布局模型。

学习这部分时,关键在于理解概念,而不需要将精力花在美化页面的许多技巧上,那是网站美工的 工作,不是程序员的工作。

第二步:学习JavaScript JavaScript不是Java,它主要运行于浏览器端。

可以完成许多工作,功能也很强大:比如它将客户 端网页中的HTML元素看成一棵树,

可以编写代码访问并修改树节点,动态生成新的HTML代码,从而达到 动态修改网页显示特性的目的。

JavaScript在目前的网站开发中用得很多,非常重要。 另外,它也是目前非常流行的AJAX技术的基础。

第三步:学习计算机网络原理

找一本大学<计算机网络>教材,重点看看它的有关互联网的部分,

了解一些域名解析和HTTP协议等 知识。这是进行互联网开发的理论基础。

第四步:学习ASP.NET表示层技术,会设计Web页面 需要结合先前打好的面向对象技术的基础,

至少掌握以下内容:

(1) 各种Web控件的使用方法,

(2) 理解信息在网页中的传送方式,比如Cookie,ViewState,Session等的使用。

(3) ASP.NET应用程序与网页的生命周期,以及相关对象(比如httpcontext,response,request) 的用途。

(4) ASP.NET实现事件驱动的内幕

(5) 自定义用户控件 再次强调一下,没有OO基础,很难掌握上述技术,就只能被这些东东牵着鼻子走了,会很被动。

第五步 掌握数据库技术

具体地说,要学习以下内容:

(1) 学会使用SQL Server 2005:不要求精通它的各种工具与管理配置技术,但至少知道如何连接 ,如何建表,如何创建存储过程

(2) 学习ADO.NET,掌握使用代码人工访问数据库(别用VS2005的向导)的方法

(3) 学习数据绑定控件的使用

第六步 理解多层架构

这时,先前在OO学习阶段涉及到的程序集与应用程序域等就派上用场了,

现在,网站架构大多采用 多层架构:表示层、业务逻辑层、数据存取层以及数据库本身。

可以先上网找一此多层架构的资料看,再找一个现成的比较复杂的开源ASP.NET项目分析一下其架 构就差不多了。

基本上都是一个套路,到处应用。 有的朋友问:学习架构是不是必须学习设计模式。

我的看法是:不必!当然,你如果学习过设计模式,那当然更好。

但在实际开发中,如果只想着机 械地套用某种模式,反而起不到好的结果。

我的观点:在学习设计模式时要多思多悟,其思想就会渐渐 地融入你的大脑,

在真实的设计实践中,忘掉所有的写在书上的模式,一切从实际出发,相信你的直觉 ,

只要达到设计要求的方案就是可行的方案,事实上,你这样做了之后,回过头来再看,

会发现你的设 计往往暗合设计模式的理论。

第七步 学习XML与Web Service

先了解XML的基础知识,找本讲XML的书看一下就差不多了,然后,再学习Web Service。

Web Service其实可类比为远程方法调用(以XML格式表达的调用信息)。 学 到了这里,如果你还有兴趣,不妨再去看看SOA,不过SOA的资料都是理论与概念,看起来比较 郁闷,而且离实际开发可能比较远。所以,这是可选项。

第八步 学习AJAX

学习AJAX的主要目的是创建具有更丰富特性的Web表示层,而经过前面七步的学习,到此再学习 AJAX已水到渠成,所有的基础都已具备,不会有太大的问题了。 在基础未具备的前提下直接学AJAX,就象“浮沙之上筑高台”,所以,将AJAX的学习次序安排在这 里。 第九步 学习RIA技术 RIA:Rich internet application,可看成是将C/S与B/S优点合二为一的尝试。

就具体技术来说, 主要指微软的Silverlight(WPF_E),毕竟前头一路行来都是微软路线。

IE Developer ToolBar

ASP.NET自学之路(转载)的更多相关文章

  1. 马士兵_JAVA自学之路(为那些目标模糊的码农们)

    转载自:http://blog.csdn.net/anlidengshiwei/article/details/42264301 JAVA自学之路 一:学会选择 为了就业,不少同学参加各种各样的培训. ...

  2. 【转】JAVA自学之路

    JAVA自学之路 一: 学会选择 为了就业,不少同学参加各种各样的培训. 决心做软件的,大多数人选的是java,或是.net,也有一些选择了手机.嵌入式.游戏.3G.测试等. 那么究竟应该选择什么方向 ...

  3. 【转】Java自学之路——by马士兵

    作者:马士兵老师 JAVA自学之路 一:学会选择 为了就业,不少同学参加各种各样的培训. 决心做软件的,大多数人选的是java,或是.net,也有一些选择了手机.嵌入式.游戏.3G.测试等. 那么究竟 ...

  4. Java自学之路(新手一定要看)

    Java自学之路(新手一定要看) 转自尚学堂 JAVA自学之路 一:学会选择 为了就业,不少同学参加各种各样的培训. 决心做软件的,大多数人选的是java,或是.net,也有一些选择了手机.嵌入式.游 ...

  5. [感悟]马士兵Java自学之路——(精华版)

    JAVA自学之路 一: 学会选择 为了就业,不少同学参加各种各样的培训. 决心做软件的,大多数人选的是java,或是.net,也有一些选择了手机.嵌入式.游戏.3G.测试等. 那么究竟应该选择什么方向 ...

  6. 我的.NET自学之路

    我第一门语言接触的并不是.net,而是php刚学php感觉还好,但是一学到后面就有一点头晕乎乎的,我感觉没有一个好的编写php代码的编辑器.而且php是弱类型语言,感觉起来没有像c,java,c#这些 ...

  7. Java自学成长路线(转载)

    JAVA自学之路 一:学会选择  决心做软件的,大多数人选的是java,或是.net,也有一些选择了手机.嵌入式.游戏.3G.测试等.  JAVA是一种平台,也是一种程序设计语言,如何学好程序设计不仅 ...

  8. 聊聊我的 Java 自学之路

    最近经常在知乎收到类似『没基础,java 如何自学』.『怎么才能掌握编程』等等问题,再加上发现高中同学也在自学.有感而发,讲讲我的自学之路. 1.1. 大学 高考没正常发挥,考入一所二流的学校,当时分 ...

  9. 一个「学渣」从零开始的Web前端自学之路

    从 13 年专科毕业开始,一路跌跌撞撞走了很多弯路,做过餐厅服务员,进过工厂干过流水线,做过客服,干过电话销售可以说经历相当的“丰富”. 最后的机缘巧合下,走上了前端开发之路,作为一个非计算机专业且低 ...

随机推荐

  1. Java抽象类和接口的区别(好长时间没看这种文章了)

    Java抽象类和接口的区别(好长时间没看这种文章了) abstract class和interface是Java语言中对于抽象类定义进行支持的两种机制,正是由于这两种机制的存在,才赋予了Java强大的 ...

  2. springMVC实现基本文件夹压缩下载功能

    将文件夹压缩后下载: @Slf4j public class Test { private static final String BASE_PATH = "/root/doc/" ...

  3. 软件项目功能测试框架(转载自51Testing软件测试)

    测试用例的编写需要按照一定的思路进行,而不是想到哪写到哪,一般测试机制成熟的公司都会有公司自己自定义的测试用例模板,以及一整套的测试流程关注点,当然我们自己在测试生涯中也应当积累一套自己的测试框架,所 ...

  4. python 面向对象五 获取对象信息 type isinstance getattr setattr hasattr

    一.type()函数 判断基本数据类型可以直接写int,str等: >>> class Animal(object): ... pass ... >>> type( ...

  5. bzoj 3875: [Ahoi2014&Jsoi2014]骑士游戏【dp+spfa】

    设f[i]为杀死i的最小代价,显然\( f[i]=min(k[i],s[i]+\sum f[to]) \) 但是这个东西有后效性,所以我们使用spfa来做,具体就是每更新一个f[i],就把能被它更新的 ...

  6. Luogu P1970 花匠 【线性Dp】 By cellur925

    题目描述 Description 花匠栋栋种了一排花,每株花都有自己的高度.花儿越长越大,也越来越挤.栋栋决定把这排中的一部分花移走,将剩下的留在原地,使得剩下的花能有空间长大,同时,栋栋希望剩下的花 ...

  7. 数据结构 - 静态顺序线性表的实行(C语言)

    数据结构 - 静态顺序线性表的实行(C语言) 1 获取元素操作 对于线性表的顺序存储结构来说,如果我们要实现GetElem操作,即将线性表L中的第i个位置元素值返回,其实是非常简单的. 只要i的数值在 ...

  8. UCOSII学习 - 创建任务

    本人刚刚学习UCOSII,平台为正点原子的STM32F103战舰开发板,写这篇博客主要是为了学习UCOSII,也方便自己能够一点一点的进步,话不多说直入正题吧. 第一步:在STM32上移植好UCOSI ...

  9. CF449D Jzzhu and Numbers

    题解 刚刚学习了高维前缀和 这道题就肥肠简单了 高维前缀和其实原理肥肠简单 就是每次只考虑一维,然后只做这一维的前缀和 最后求出的就是总前缀和了 那么对于这道题 也就很简单了 发现选择的所有数每一位都 ...

  10. [Usaco2009 Feb]庙会捷运Fair Shuttle

    Description 公交车一共经过N(1<=N<=20000)个站点,从站点1一直驶到站点N.K(1<=K<=50000)群奶牛希望搭乘这辆公交车.第i群牛一共有Mi(1& ...