前一段时间在silverlight 2出来的时候我们公司就有个家伙用siverlight做了个项目,吹嘘了一下说开发有多快,用户体验有多好,搞得公司里火了一段时间,后来又有项目组也开始用silverlight 开发产品,但很不顺利,效果很差,第一个项目组把项目做成功的原因是这哥们技术真的不错,肯专研,可惜后来离职了,而其他项目组菜鸟居多所以搞得进展很慢。做得也很辛苦。
后来我也研究一下silverlight 2/3/4 ria 1.0,还有最近在看一些asp教程.net mvc相关的技术,也算是做个小小的总结吧。
asp.net教程 web forms
优点:最重要的一点解决方案多,什么控件特效,比如datagrid的模板列什么都能实现只要有需求基本都能找到解决方法,
经验丰富,从asp.net1.0开始用的最多做得项目最多的就是web form了,做项目要的就是熟能生巧。
提供的组件多,到asp.net2.0 .net framework就提供很多有用的组件想profile,membership,微软microsoft patterns & practices一些资源(企业库)
ui控件多,特别是ajax toolkit,gridview,dataform,一些第三组件
缺点:这个还真不好说,要说就是太自由,随你怎么搞。
silverlight
优点: 我看过有些silverlight业务系统,做得好的,真的好看,而且好用,用户体验真的不错,这些就是异步处理好处
不得不说binding功能很强大,结合mvvm模式开发一些功能真的很简单
做富媒体应用最合适,我们有个项目是做一个堆场监控的,用到了google map sdk和图片和deep zoom组件,还可以调用摄像头的监控视频,真的不错,用其他技术估计都很难做的到
缺点:目前解决方案太少,有些需求真的很难或是说不知道如何去实现,要google老半天,就比如datagrid搞个checkbox提交选中行的数据,或加个按钮这类简单的操作都要搞半天
与后台交互真的不好搞,所有交互只能是web service(wcf),虽然ria1.0(不支持oracle)也很方便,但都是异步操作,总没有web form那么直接了当。回调来对调去的还有4.0提供了很强大的匿名方法还有action<>这些类库。
最后我只能说要想做得好真不容易。
asp.net mvc
我还没有用mvc 2,3做过项目只是最近做一些tutorial感觉还可以,就简单评价一下
优点:层次清晰,model,controller,view ,action,都有向导产生,非常规范,感觉就是很专业,像是搞大项目架构,不想web form那么随意,以后程序维护肯定方便。
还有同样强大的route url功能。
其实我想优点应该还有很多
缺点:UI控件很少,什么都要自己去组合,感觉又回到了开发asp时代,输出个数据还得<tr><td>的搞,受不了,类似做个grid的且套,模板列都不容易。
与后台交互虽然比silverlight要好点,不用异步方法,但只能post,submit还是没有web form的事件机制好用。
一定要精通网页特效,jquery,json不然ui这关真不好过。
最后 稍微总结一下
如果做业务系统项目还是web form好,简单快速,做一些多媒体应用的silverlight当然是最好了,MVC可能做大项目比较好吧