Aspx Without WebForm之一:基本想法

WebForm 做的事情是封装了html/css/js这三样东西,封装成什么呢?显然是想封装出一个类似于GUI的东东!我有时甚至想,这彻头彻尾就是微软的一个大骗局!

微软这么做,是想作为Web开发技术的后来者,先把熟悉Windows GUI(包括vb6、mfc、delphi、winform等等)的开发者吸引过来。开发人员上了这条“贼船”后,再慢慢过渡到Web开发本来应该有的技术方向上去!或许,微软在开发WebForm的时候,自己是很清楚地知道WebForm技术的局限性的,但是仍然要大声的喊“像开发VB程序一样的开发Web网站、会VB就会网站开发”等等这些非常可笑的口号。

我就是一个上了这条贼船的Coder,不过回过头来,我很高兴上了这条贼船,正是剖析了WebForm种种的内部实现机制(注意,不是WebForm的应用),才让我对Web开发看得更透彻!

我对微软技术有一个总的看法就是:如果拿一台相机来比喻,那么微软产品是一个安装了傻瓜按钮的专业相机,然而正是由于装了这个傻瓜按钮,人们就以为这是一个傻瓜相机,因而也就没有人去摆弄那些专业的调节按钮了。

WebForm在提供了一个RAD(快速应用开发)的傻瓜按钮的同时,当然也提供了专业的调节按钮,即无穷多的自定义机制,理论上可以使用这些机制实现自己所需要的各种功能,事实上的确也能做到,问题是我们该不该这么做?

如果答案是否定的,那么就必须找出更好的方法是怎样做的?或者从理论逻辑上证明这样做的不合理之处!

显然,我的答案是:WebForm基本上是一个应该丢弃的技术!尤其是必须依赖<form runat=”server”>以及ViewState、回发事件等机制的功能,没有存在的意义。

鉴于这样的想法,我想在一些标题为“Aspx Without WebForm”的系列文章中,首先是和大家交流一下:在Without WebForm后,如何实现各种常见的功能,同时讨论这些方法所带来的新的、令人振奋的地方!其次,也从理论分析:为什么对html/css/js的类GUI的封装都是徒劳的,不要说服务端的封装,就连YUI这样的客户端封装,依然要承担大量丧失html/css/js的原生功能,以及带来不少的学习成本,所以说“此路不通”,不是微软没有做好这件事,任何人都不可能做好这件事情。

你可能感兴趣的:(Web,webform,asp.net,ViewState,局限性)