前前后后收到过一些学生的来信,询问ASP.NET的学习顺序问题,在此就向打算系统学习ASP.NET技术的初学者谈谈我的建议。
如果你已经有较多的面向对象开发经验,跳过以下这两步:
第一步 掌握一门.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),毕竟前头一路行来都是微软路线。
不过目前学习它主要是为了技术储备。估计此技术的普及需要2到3年的时间,因为预装Vista的机器今年才开始大卖。
至此,九阳神功大功告成,您可以靠此神功行走江湖了。
(注:本文仅是个人看法,供初学者参考,不妥之外,欢迎高手予以斧正)。

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/zhangjie_xiaoke/archive/2008/03/05/2151371.aspx

转载于:https://www.cnblogs.com/googlegis/archive/2009/08/06/2979059.html

ASP.NET技术的学习顺序相关推荐

  1. asp.net技术的学习顺序问题

    asp.net技术的学习顺序问题 前前后后收到过一些学生的来信,询问ASP.NET的学习顺序问题,在此就向打算系统学习ASP.NET技术的初学者谈谈我的建议. 如果你已经有较多的面向对象开发经验,跳过 ...

  2. 探讨:ASP.NET技术的学习顺序问题

    前前后后收到过一些人的来信,询问ASP.NET的学习顺序问题,在此就向打算系统学习ASP.NET技术的初学者谈谈我的建议. 如果你已经有较多的面向对象开发经验,跳过以下这两步: 第一步 掌握一门.NE ...

  3. asp.net的Ajax学习进阶

    asp.net的Ajax学习进阶 作者:清清月儿 主页:http://blog.csdn.net/21aspnet/           时间:2007.6.3  1.什么是Ajax? 2006年忽如 ...

  4. ASP.NET Core 2 学习笔记(七)路由

    ASP.NET Core通过路由(Routing)设定,将定义的URL规则找到相对应行为:当使用者Request的URL满足特定规则条件时,则自动对应到相符合的行为处理.从ASP.NET就已经存在的架 ...

  5. 掌握ASP.NET技术之捷径

    掌握ASP.NET技术之捷径 --<ASP .NET 3.5揭秘> ASP.NET是微软公司构建高交互性.高扩展性网站的旗舰技术.许多在因特网上提供服务的大型网站都构建于ASP.NET F ...

  6. Spread for ASP.NET技术白皮书

    引言 随着互联网在全球范围内的快速发展,越来越多的中国企业开设自己的企业网站,向外展示自己的服务和产品.同时,企业内部的办公自动化系统.客户关系管理系统.内容发布系统等其它系统也逐渐开始使用以B/S为 ...

  7. python自学书籍顺序-【经验分享】自学Python的学习顺序!附学习资料

    自学Python要按照什么样的学习顺序?首先要有一个详尽的学习大纲,对于学习Python的各种知识点要安排的详略得当,做到由易到难,循序渐进,才能长久的坚持学下去.除了基础的理论知识,项目实战也是自学 ...

  8. ASP.NET Core 2 学习笔记(三)中间件

    原文:ASP.NET Core 2 学习笔记(三)中间件 之前ASP.NET中使用的HTTP Modules及HTTP Handlers,在ASP.NET Core中已不复存在,取而代之的是Middl ...

  9. ASP.NET MVC 5 学习教程:Details 和 Delete 方法详解

    ASP.NET MVC 5 学习教程:Details 和 Delete 方法详解 原文 ASP.NET MVC 5 学习教程:Details 和 Delete 方法详解 在教程的这一部分,我们将研究一 ...

最新文章

  1. python实现迭代的快速排序(Iterative Quick Sort)
  2. Unity学习笔记3 简易2D横版RPG游戏制作(三)
  3. 【机器学习基础】xgboost系列丨xgboost建树过程分析及代码实现
  4. 201771010102 常惠琢 《2018面向对象程序设计(Java)》第9周学习总结
  5. LinkedList专题1
  6. linux php 守护进程,PHP程序员玩转Linux系列 使用supervisor实现守护进程
  7. 计算机网络 多个站点共享信道的方式图
  8. 接口规范 11. 串流相关接口
  9. js控制数量包含截取
  10. ISP图像调试工程师——3D和2D降噪(熟悉图像预处理和后处理技术)
  11. ValueError: could not broadcast input array from shape (*,*) into shape (*)
  12. 《我也能做CTO之程序员职业规划》之十三:用凸透镜选择技术
  13. OpenCV-Python+Moviepy 结合进行视频特效处理
  14. 笔记本java稳定wifi信号_笔记本wifi网速不稳定的解决方法
  15. [FormulaExcelPython] 一次指数平滑、二次指数平滑、三次指数平滑(Holt-Winters)...
  16. 采用igraph包分析网络数据
  17. matlab倒立摆模型,线性倒立摆模型(LIP)Matlab建模.PDF
  18. jmeter压测指南
  19. 大规模部署lxc容器遇到的若干问题
  20. 深度学习目标检测——AP以及MAP

热门文章

  1. JVM 调优实战--一个案例理解常用工具(命令)
  2. oracle用户名无法登陆,sysdba却可以登陆
  3. 天翼云centos7.5系统挂载磁盘
  4. Host Switch Plus结合nginx使用
  5. Qt C++ 检测优盘插入或拔出
  6. 【规范】流程图的标准画法
  7. Matlab---傅里叶变换---通俗理解(二)
  8. memcpy和strcpy的区别及memcmp和strcmp的区别
  9. camvid数据集介绍_fastai 官方教程之查看数据
  10. 幼儿课外活动游戏_幼儿园的户外活动游戏有哪些?