八、ASP.Net
    ASP.Net是.Net中用来开发动态Web应用程序的技术,ASP.Net主要分ASP.Net WebForm(以后简称WebForm)和ASP.Net MVC两种技术,大部分人说ASP.Net都是指的ASP.Net WebForm,而ASP.Net MVC则是微软最近推出的一门技术,前面已经提到过了ASP.Net MVC并不是用来代替ASP.Net WebForm的,因此不要认为“ASP.Net MVC淘汰了WebForm,学WebForm过时了”,对于初学者来说还是先学习WebForm,等WebForm掌握的比较好以后根据自己的情况学习ASP.Net MVC,现在很多公司招聘的时候都提出了“掌握ASP.Net MVC优先考虑”。下面我们还是主要来谈WebForm的学习。

很多人被那些“短平快”ASP.Net的书误导了,开始学习就从Button控件、TextBox控件、Repeater控件、GridView控件开始学习,为庞大的ASP.Net体系所折服,看着千八百页的书感叹“晕呢,这么多控件、什么多方法、这么多属性哪辈子学完呀”。当然也有人会拖几个控件以后就自诩“精通ASP.Net”,“拖控件、设属性、写事件”靠此三招走天下,但是一旦遇到稍微复杂一点问题就懵了。

WebForm是微软的一个伟大的创造,能够将复杂的Web开发进行了屏蔽,能够让我们进行傻瓜化的开发,但是微软再怎么封装也不可能让我们一直“快乐的傻下去”,不了解Http、不了解“请求—处理—响应”的模型、不了解ASP.Net的内部原理,那么遇到一些稍微复杂一点的问题的话就会感觉很茫然。一旦了解了Http、 ASP.Net的原理以后再去学ASP.Net你就能知道那些控件到底帮我们做了什么,这样就可以轻松的掌握那些控件,不是成为控件的奴隶,而是成为控件的主人,让控件为我们所用。正是基于这样的原则,我在传智播客.net班讲ASP.Net基础的时候,我没有立即讲解那些控件怎么用,而是使用了4天的时间来讲Http协议、Web开发基本原则、“请求—处理—响应”模型、基于HttpHandler开发Web应用、ViewState原理、IsPostBack原理、XSS漏洞等基础的东西,前4天的内容是难度非常高的东西,一旦把这4天的内容掌握了,后面用几天时间学员们就能掌握ASP.Net的基础的东西,而且掌握的非常深入、牢固,如果对这个感兴趣可以参考我的【传智播客.Net视频】ASP.Net上中下三季内容。

特别是以后会在ASP.Net开发中占有一席之地的ASP.Net MVC更是摒弃了ASP.Net WebForm中复杂的事件驱动、属性等非Web本源的东西,ASP.Net MVC回归了Web开发的本质,把Web开发重新用“请求→处理→响应”这样一个最简单的模型进行描述,其实是比ASP.Net WebForm更简单,但是如果只会用ASP.net WebForm进行拖控件开发,那么如果需要用到ASP.Net MVC就会非常不适应。

学习WebForm的时候一定要先掌握不使用WebForm进行Web开发的技术,因为有的项目中如果完全使用WebForm中的服务端进行开发就会有性能等问题,因此这些项目中会不允许使用服务端控件或者不允许使用服务端控件的某些特性。服务端控件必须学,因为很多功能点中用服务端控件会“多快好省”,但是不要离了服务端控件就活不了。

WebForm中并不是所有控件都是常用的,初学者的目的是用最短的时间学最有用的内容。工具箱中“标准”中常用的控件如下:Label、Button、LinkButton、ImageButton、HyperLink、DropDownList、ListBox、CheckBox、RadioButton、Literal、FileUpload。很多书上讲WebForm的时候讲把大量的篇幅放到GridView、DataList、DetailsView、Repeater、ListView等这些数据绑定控件上,其实这些控件大同小异,只要掌握了一个控件另外一个控件很容易掌握,推荐大家学习ListView和Repeater就够了。

上面我谈了学习.Net Web开发的的八步,这八步看似漫长,其实如果能把所有精力投入上面的话大约两个月就能学下来。当然学完了这些只是掌握了.Net开发的基础知识,还需要在项目开发中将这些基础知识进一步综合应用。

.Net应该学什么怎么学(四)的更多相关文章

  1. .Net应该学什么怎么学(二)

    更新时间:2012年06月05日18时23分 来源:传智播客.Net 接上篇<[我来解惑].Net应该学什么怎么学(一)>. 二.C#面向对象基础 初学者学面向对象的时候没必要(也做不到) ...

  2. python入门灵魂5问--python学习路线,python教程,python学哪些,python怎么学,python学到什么程度

    一.python入门简介 对于刚接触python编程或者想学习python自动化的人来说,基本都会有以下python入门灵魂5问--python学习路线,python教程,python学哪些,pyth ...

  3. .Net应该学什么怎么学(三)

    更新时间:2012年06月05日18时26分 来源:传智播客.Net 接上篇[我来解惑].Net应该学什么怎么学(二)七.HTML.JavaScript.Dom        HTML是对网页长什么样 ...

  4. 菜鸟学Java(十四)——Java反射机制(一)

    说到反射,相信有过编程经验的人都不会陌生.反射机制让Java变得更加的灵活.反射机制在Java的众多特性中是非常重要的一个.下面就让我们一点一点了解它是怎么一回事. 什么是反射 在运行状态中,对于任意 ...

  5. 一起来学Spring Cloud | 第四章:服务消费者 ( Feign )

    上一章节,讲解了SpringCloud如何通过RestTemplate+Ribbon去负载均衡消费服务,本章主要讲述如何通过Feign去消费服务. 一.Feign 简介: Feign是一个便利的res ...

  6. 跟我学SpringCloud | 第十四篇:Spring Cloud Gateway高级应用

    SpringCloud系列教程 | 第十四篇:Spring Cloud Gateway高级应用 Springboot: 2.1.6.RELEASE SpringCloud: Greenwich.SR1 ...

  7. .net基础学java系列(四)Console实操

    上一篇文章 .net基础学java系列(三)徘徊反思 本章节没啥营养,请绕路! 看视频,不实操,对于上了年龄的人来说,是记不住的!我已经看了几遍IDEA的教学视频: https://edu.51cto ...

  8. 每天学点SpringCloud(四):Feign的使用及自定义配置

    Feign:SpringCloud的官网对它的定义是这样的: 是一个声明式的Web服务客户端.它支持Feign本身的注解.JAX-RS注解以及SpringMVC的注解.Spring Cloud集成Ri ...

  9. 菜鸟学SSH(十四)——Spring容器AOP的实现原理——动态代理

    之前写了一篇关于IOC的博客——<Spring容器IOC解析及简单实现>,今天再来聊聊AOP.大家都知道Spring的两大特性是IOC和AOP,换句话说,容器的两大特性就是IOC和AOP. ...

随机推荐

  1. tomcat 的配置文件 server.xml 详解

    server.xml位于$TOMCAT_HOME/conf目录下,作为整个 tomcat 服务器最核心的配置文件,server.xml的每一个元素都对应了 tomcat中的一个组件,通过对xml中元素 ...

  2. eclipse 垃圾回收器,内存释放

    http://zhangrong-0825-163-com.iteye.com/blog/7334071.如何在eclipse里修改web工程的访问路径,步骤如下: 点击web工程——>选择pr ...

  3. 谷歌地图地理解析和反解析geocode.geocoder详解(转)

    谷歌地图地理解析和反解析geocode.geocoder详解 谷歌Geocoder服务 实例代码 地址解析就是将地址(如:贵州省贵阳市)转换为地理坐标(如经度:106.71,纬度:26.57)的过程. ...

  4. Windows下面安装和配置MySQL(5.6.20)

    1.首先到http://dev.mysql.com/ 上下载windows版mysql5.6免安装zip包.然后将zip包解压到D:\mysql-5.6.20-winx64下. 2.复制mysql下的 ...

  5. 《JAVA与模式》之参考资料

    1.书籍 <JHead First 设计模式(中文版)> <JAVA与模式> <大话设计模式> 2.连接地址 http://blog.csdn.net/jason0 ...

  6. Dev BarManager使用方法

    作者:jiankunking 出处:http://blog.csdn.net/jiankunking 近期使用BarManager时候.发现一个问题就是在一開始把BarManager控件拖到窗口上的时 ...

  7. SICP 习题 (2.8) 解题总结:区间的减法

    SICP 习题 2.8 须要我们完毕区间运算的减法.区间运算的加法书中已经有了,代码例如以下: (define (add-interval x y) (make-interval (+ (lower- ...

  8. struts2 循环标签使用

    struts2 counter循环标签的使用: struts2随提供了循环控制标签<s:iterator/>,,使用起来也比较方便,但在具体的应用中,也有不方便之处,他没有像struts1 ...

  9. CTPN - 训练

    源码地址:https://github.com/eragonruan/text-detection-ctpn 该地址提供了 CTPN 的 tf 版本的实现,代码文档写得很详细,issue 里面也帮助解 ...

  10. TCP协议具体解释(上)

     TCP协议具体解释 3.1 TCP服务的特点 TCP协议相对于UDP协议的特点是面向连接.字节流和可靠传输. 使用TCP协议通信的两方必须先建立链接.然后才干開始数据的读写.两方都必须为该链接分 ...