2.Web开发技术表示层的复兴
在这一年当中,微软又一次旧话重提,开始从新关注表示层技术,在ASP.NET 2.0市场占有率开始被PHP侵蚀的情况下,微软及时的推出了一款新的ASP.NET表示层技术,ASP.NET MVC技术。
WebForm技术在推出之后曾经一度受到广泛赞许,由于其具有快速开发,从Windows开发平滑过渡等诸多优势,很多首次接触Web开发的开发者都义无反顾的投向了这一技术的怀抱,但是随着网络应用日趋复杂,可定制部分不够灵活成为了这一技术的瓶颈,而更纯粹的开发技术,比如PHP,ASP反而逐渐回到人们的怀抱,且客户端的JavaScript越来越丰富,表示层方面的快捷已经不足以为开发者带来更高的敏捷特性,也不能让设计人员平滑的进入开发工作,于是微软推出了ASP.NET MVC。
ASP.NET MVC是在现有ASP.NET 3.5运行时的顶层提供一种新的模型-视图-控制器(MVC, Model-View-Controller)框架。这就允许开发人员利用MVC设计模式的优势创建自己的ASP.NET Web应用程序,它将内容显示(UI或者View)、业务逻辑和后台数据进行了清晰分离,可以说是MVC在ASP.NET中的实现。ASP.NET MVC的主要优点是:
·不再有ViewState:传统的ASP.NET WebForm模式利用ViewState保存表单的状态信息,由于B/S程序本身的限制,ViewState存储数据需要在隐藏表单域里面放置很大一段字符串,这会大大增加页面的字节数,导致网页加载变慢。
·简洁的HTML:最终生成的 HTML代码完全由自己控制,不会生成任何“垃圾代码”。
·更快的服务器端处理和客户端呈现:MVC只简单地处理“模板”,而无需构建复杂的控件树,因此,无论是在服务器处理的时间,和客户端的呈现速度都会有所提高。
·多种视图只需一种模型:有时候一个页面要显示的数据是同一个,但表现形式有细微的差别,此时只需要修改视图部分,可以采用现有的控制器行为。
·单元测试:Webform的测试是很困难的,使用MVC,可以将业务逻辑与页面分离开,可以不在ASP.NET进程中执行控制器,方便测试。
ASP.NET MVC不会代替传统的ASP.NET WebForm,但是会将其作为良好的补充者长期共存,另一项让微软大力宣传的技术就是富媒体表现技术SilverLight,这一技术是针对日益丰富的富媒体互联网表现需要而提供的,这次微软在很短的时间内把这个产品的由1.0版升级到3.0版本,在3D硬件加速,高清视频播放、本地数据缓存、离线安装与桌面应用等方面做了大量扩展。
(1)Video/Audio
Silverlight除VC-1外还支持H.264视频格式。这是YouTube等使用的新兴业界标准格式,并在很多设备上有硬解码。Silverlight也支持AAC音频。二者都以MP4容器格式实现(如.MP4或.M4A格式文件)。
另外还支持F4v, Adobe的高清格式. 可惜的是在3.0这个版本中Silverlight还不支持Camera. 听说下一个版本会加入, 大家还需等待一年.
(2)GPU Acceleration
这是Silverlight 3运行时中opt-in的特性,in-browser和out-of-browser都可以。在HTML中的Silverlight tag中,添加一个EnableGPUAcceleration=true参数来启用GPU加速。
(3)3D Support
Silverlight 3带有透视3D,对于一个父元素,你使用一个Projection attached property,如:
<PlaneProjection x:Name=”p3” RotationY=”-30” />
</Border.Projection>
这个perspective 3D也只是将平面对象转换成立体的对象, 而非真正的3D渲染引擎. 而Silverlight中还没出现Flash中的pv3d一类的3D engines.
Animation Easing新加入了很多easing的function, 和Flash里的Tween类似.
(4)Custom Dialogs
Silvelright 3现在支持SaveFileDialog。出于安全原因,我们不返回路径给开发者,相反,你可以从结果中打开文件:
if (mySaveFileDialog == true)
return mySaveFileDialog.OpenFile();
关于上传下载FlashPlayer10有一些新的更新. 另外我觉得如果禁止修改的, 打开文件也可以加上.