|
中高技术讲座
|
|
|
|
|
|
|
|
|
开发具有良好设计的、安全的、数据驱动的智能客户端应用程序 |
|
第1讲: 设计和构建智能客户端应用 |
|
智能客户端应用的模式和实践, IssueVision |
|
第2讲: 智能客户端应用的安全 |
|
安全数据、CAS、加密及其它的技巧 |
|
第3讲: 部署与维护智能客户端应用 |
|
部署和更新智能客户端应用的技巧 |
|
|
|
|
智能客户端: 新一类 Windows 应用程序 |
|
演示: IssueVision |
|
深入探讨: 桌面客户端的设计选择 |
|
智能客户端总结 |
|
|
|
|
|
可实现 “有时联机”的工作(occasionally connected) |
|
利用 Windows的最优特性 |
|
针对简单和复杂任务的超一流的可用性 |
|
本地PC机的能力和性能 |
|
布局精确性, 用户一致性 |
|
并且 解决了 Windows 应用的一些常见问题 |
|
简单的部署与维护 |
|
|
|
|
|
Windows 用户界面 |
|
应用数据基于服务器端 |
|
本地资源 |
|
|
|
智能客户端应用的其它特征 |
|
解决 Windows 应用的一些常见问题:
数据、安全和部署 |
|
脱机数据 |
|
完善的安全 |
|
容易部署和维护 |
|
|
|
|
|
用户界面不是浏览器 |
|
不是一个新的应用程序架构 |
|
N-层架构仍然适用 |
|
Client/Server仍然是一种选择 |
|
安装和更新的代价不会很高 |
|
|
|
|
|
|
|
|
|
|
场景: Helpdesk
事件跟踪 |
|
功能: |
|
很好的可用性 |
|
无缝切换到离线
工作状态 |
|
展示了最佳实践 |
|
UI 模式 |
|
有时联机数据 |
|
安全 |
|
部署 |
|
DevDays CD 包含有全部源码 |
|
|
|
|
|
|
|
利用了 Windows的最优特性 |
|
吸引人的桌面客户端程序, 很好的可用性 |
|
在联机和脱机之间无缝转移 |
|
安全地访问服务器端数据 |
|
安全地访问本地资源 |
|
低成本的安装和维护 |
|
解决了 Windows 应用的常见问题 |
|
自动更新 |
|
无 DLL Hell |
|
|
|
|
|
|
|
|
|
|
促进一致性和可维护性 |
|
应用越复杂就越有价值 |
|
微软模式与实践网站: |
|
http://www.microsoft.com/resources/practices/ |
|
IssueVision 桌面客户端程序使用的模式 |
|
观察者模式(Observer Pattern) |
|
协调同一数据的多个视图 |
|
命令模式 (Command Pattern) |
|
协调完成相同功能的菜单项和工具条按钮 |
|
|
|
|
|
|
观察者模式(Observer pattern) |
|
更方便保持数据的一致的和可维护的视图 |
|
行为和视图之间仅一半的连接 |
|
视图之间相互独立,一个视图并不知道其它视图 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
相关的菜单项和工具条按钮并不是自动地被同时处理的 |
|
命令模式(Command Pattern) |
|
命令对象统一了相关UI组件的状态和行为 |
|
例子: |
|
“保存”行为 |
|
菜单项 |
|
工具条按钮 |
|
上下文菜单
(Context menu) |
|
|
|
|
|
|
|
|
|
对一组用户交互的封装 |
|
或者, 用新的方法展示信息 |
|
购买之前先试一试 |
|
Visual Basic .NET Resource Kit |
|
合作伙伴网站:
http://www.vsipartners.com/search/advancedsearch.aspx |
|
创建你自己的可重用的控件 |
|
IssueVision 里的自定义控件 |
|
可展开列表(ExpandableList) |
|
图表(Chart) |
|
面板(Pane) |
|
|
|
|
|
|
|
|
应用特有的控件 |
|
可重用控件 |
|
尽可能绑定到一个通用的数据上 |
|
把通用的行为放在基类里,把应用特有的行为放在导出类里 |
|
利用 VS.NET 设计器的支持 |
|
属性类型采用 .NET framework 类可以充分利用内置的设计器支持 |
|
Public Class GroupItemCollection |
|
Inherits CollectionBase |
|
公共成员添上设计器特征
<Category("Layout"),
DefaultValue(DefaultItemHeight)> Public Property ItemHeight() As Integer |
|
|
|
|
|
|
给你的应用一个新鲜的外表 |
|
给你的客户端用户界面添加有平面外观的输入控件和圆角形的按钮 |
|
仅适用于Windows XP |
|
Application.EnableVisualStyles() |
|
把控件的 FlatStyle 属性设置成 FlatStyle.System |
|
在创建表单或控件之前调用 |
|
在主表单的构造里 |
|
|
|
|
|
|
|
使你的 UI 适合数据 |
|
寻找最佳的方法让用户浏览到和形象化你的数据 |
|
采用设计模式来提高一致性和可维护性 |
|
采用自定义控件来提高可用性 |
|
同时提高了一致性和代码重用 |
|
采用 Windows XP主题使应用有一个新鲜的外表 |
|
|
|
|
|
|
|
智能客户端--新一类 Windows 应用程序 |
|
Windows的非凡的可用性, 易维护 |
|
把 Windows 客户端应用程序扩展到新的解决方案: |
|
“有时联机“(Occasionally connected)的脱机数据 |
|
从Web上部署 |
|
自动更新 |
|
下面还有更多的最佳实践和演示! |
|
智能客户端应用的数据访问 |
|
智能客户端应用安全性 |
|
部署和维护智能客户端应用 |
|
|
|
|
|