|
本章将会讲述在表现层的设计中的关键问题。帮助你理解在典型的分层应用架构中表现层是怎么杨的?通常包括什么?设计表现层会碰到的关键问题?你将会看到设计指导,推荐的设计步骤,相关的设计模式,可以选择的技术。 copyright lyttzx.com
表现层组件的实现包括用来显示的用户接口,以及对于用户交互的管理。显示包括用户输入和显示的控件,还有管理用户的交互行为。下图中的粗黑线框中的内容就是表现层。 lyttzx.com
lyttzx.com
内容来自泠云天天在线 表现层通常包括下面的部分: 内容来自泠云天天在线 lyttzx.com
通常的设计考虑 copyright lyttzx.com 在设计表现层的时候,你需要考虑很多关键的因素。可以参考下面的准则,确保你的设计满足应用的需求: 泠云工作室
特定的设计问题 泠云工作室
下面的设计中遇到的一些问题: 内容来自泠云天天在线
Caching缓存 lyttzx.com
缓存是提高应用性能和UI响应的最佳技术。你可以在表现层使用数据缓存,来优化数据查询,避免网络来回访问,避免不必要重复处理。可以参考下面的指导: 内容来自泠云天天在线
选择合适的缓存位置,例如:内存或者是硬盘。如果你的应用部署在web服务器场,避免使用本地缓存需要同步数据的问题。通常来说,对于web和应用服务器场的部署,考虑使用事务资源管理例如SQL SERVER,或者是支持分布式缓存的产品,例如:Memcached,或者是微软的Velocity缓存技术。但是,如果单个服务器的变化不是关键的,或者是数据变化很慢,内存缓存可能是比较合适的。 泠云工作室
Communication通信 泠云工作室
Composition容器 lyttzx.com 如果表现层使用在运行的时候组成的独立的模块和视图,你的应用是否很容易开发和维护?UI容器模式在运行的时候创建视图和表现布局。这种模式帮助最小化代码和库的依赖,否则在依赖改变的时候,需要重新编译和部署。容器模式帮助你实现共享、重用、可代替的表现逻辑和视图。在设计的时候可以参考下面的原则: 本文来自泠云天天在线
Exception Management异常管理 lyttzx.com 设计一个集中的异常管理机制,以一种一致的方式来捕获和管理意外的异常。要考虑异常信息在逻辑层和物理层之间的传播,甚至是跨越可信边界的传播。可以参考下面的原则: lyttzx.com
向用户提供友好的错误提示信息,确保在错误提示、错误页面、日志文件、审计文件中没有暴露敏感信息。如果有可能的话,提供一致的状态,如果不行就终止它。 lyttzx.com 确保异常信息的捕获,而不是在全局错误的地方才捕获,在异常发生之后释放资源和恢复状态。全局异常显示的是未处理的异常,未处理的异常表明系统处于不一致状态,可能需要关闭重新启动。 本文来自泠云天天在线
区分系统异常和业务错误。在发生业务错误的时候,给用户有好的提示,允许用户重新尝试。发生系统异常的时候,显示有好的提示,记录日志,帮助查找解决问题。 泠云工作室 只捕获你可以处理的异常,在不必要的时候不使用自定义异常信息。不适用异常来控制应用逻辑。 本文来自泠云天天在线 Navigation导航 lyttzx.com
User Experience用户体验 泠云工作室 良好的用户体验会将可用的和不可用的应用区分开来。感觉到的表现要比实际表现更重要。例如:用户不想等很久,页面才加载好。换句话说,也许就是几毫秒的UI区别,都会感觉应用不好。考虑使用调查、可用性学习、统计、面对面的交流来了解用户到底需要什么,希望你的应用提供什么,用这些结果来设计一个高效的UI。可以参考下面的原则: 内容来自泠云天天在线
User Interface用户界面 copyright lyttzx.com
设计一个合适的用户界面,支持需要的数据输入和验证。可以参考下面的原则: 内容来自泠云天天在线
Validation验证 lyttzx.com 设计一个高效的数据输入和验证策略对于安全和正确操作来说是关键的。确保表现层具有输入验证,就好像业务逻辑层需要有逻辑验证一样。可以参考下面的原则: 泠云工作室 输入验证应该由表现层来处理。同时业务规则的验证应该有业务逻辑层来处理。但是,如果业务逻辑层和表现层在物理上是分离的,业务逻辑的验证应该被镜像到表现层中,提高可用性和响应。可以使用元数据或者是在两层中使用通用的验证组件来实现。 lyttzx.com 在验证策略中要设计限制、拒绝、审查恶意输入。Investigate设计模式和第三方的类库可以帮助你实现验证。识别适合验证的业务规则,例如:传输限制,实现综合的验证,确保这些规则没有被妥协。 lyttzx.com
确保你正确的处理了验证错误,避免在错误提示中暴露敏感信息。另外,确保日志记录了验证失败,帮助查找发现恶意的行为。 copyright lyttzx.com
泠云工作室
未完待续。。。。。。。。。。。。。。。。。。。。。。。 本文来自泠云天天在线 (责任编辑:泠云) |
