上一个程序使用Smart Client结构开发,由于第一次接触这种结构,连摸索带开发一共用了两个月
今天终于测试完成了,对这种结构的程序做了个小结:
类型 |
优点 |
缺点 |
用户体验 |
用户体验非常好,操作和使用Windows一样, 支持用户自行设置页面控件,二级页面编辑后自动刷新一级页面等,BS实现这些功能相当复杂 |
|
界面开发 |
winform的界面开发直接调用windows的UI, 不用编写Javascript和CSS代码,节省很多时间 |
因为没有CSS,界面设计不方便统一更改,必须使用主题风格皮肤功能来控制 |
后台代码开发 |
代码的开发,精力基本上全部集中于程序的逻辑流程和算法方面,各种常用事件可以直接调用,非常方便 |
Webservice的Session功能做的不是很好,凡是用到Session的方法都必须声明启用Session,调用不同的webservice必须设置同一个CookieContainer才能访问同一个Session |
安全性 |
数据的操作全部由WebService来实现,所以安全性继承了BS结构的优点, 即使客户端被反编译也没有问题 |
|
移植性 |
移植性非常好,如果程序想改成其他形成的结构,Webservice不用做任何更改,只需制作不同的用户界面调用webservice的方法就可以了,甚至多个不同的程序调用这一个webservice |
|
软件更新 |
WebService端的更新非常方便,集成了BS的优点 |
Client端的更新还残留CS结构更新麻烦的缺点,在程序运行期间必须轮询获取版本号来检测更新(我们公司有人喜欢开着程序好几天不关,只在程序加载时检测更新是没用的) |