`

NET 应用架构指导 V2 学习笔记(十八) 表现层组件设计指导

阅读更多

  本章讲述的是你在设计用户界面组件和表现层逻辑组件的时候应该有的步骤。首先需要理解用户界面的需求,选择适当的技术。然后决定如何将表现逻辑和数据绑定要UI控件上。确保你理解了用户界面中的异常错误处理和合法性验证。下面就是设计的步骤。

  1 理解用户界面的需求

  理解用户界面的需求是决定UI类型、技术、和控件类型的关键。你的用户界面应该被应用的功能和用户体验所驱动。

  从认识应用的用户开始,理解用户希望使用系统完成的目标和工作任务。特别关注序列化任务和操作。决定用户是希望一个一步一步的结构化用户体验,还是可以同时进行多个任务的非结构化用户体验。作为过程的一部分,用户需要的信息和格式。另外,考虑用户体验的等级。这些因素都可以帮助你进行一个以用户为中心的设计。对你的技术选择影响很大的一个因素是用户界面的功能。确定用户界面是否一定要暴露丰富的功能和用户接口,是否一定要有快速的响应,是否需要图形化或者是动画支持。同时要考虑例如时间、货币等数据类型是否需要本地化。另外,要确定是否需要个性化的功能,例如用户可以在运行的时候选择布局和风格。

  确保用户界面直观且容易使用,考虑如和布局和组织界面。用户如何导航。可以帮助你选择适当的控件和用户界面技术。理解一定要支持的物理的显示需求,屏幕大小,重定位。考虑访问需要,大字体和按钮。决定如何将相关的信息分组。决定用户快速查找信息的方式,搜索功能,清晰的提示,站点地图,其他适当的功能。

  2 决定你需要的用户界面类型

  在用户界面需求的基础上,你可以做决定需要什么杨的用户界面类型。在众多的用户界面类型中,每一种都有它自己的优点和缺点。经常会发现,你的用户界面需求可以用多种用户界面类型实现。也没有一种用户界面类型可以完全覆盖你的需求。

  移动应用可以作为瘦客户端或者是胖客户端来开发。富客户端的移动应用可以支持离线或者是偶尔在线的联网方案。web或者是瘦客户端只能支持在线的方案。设备资源也是设计移动应用的时候需要考虑的限制条件。

  富客户端应用通常是拥有一个图形化的用户界面,独立的,或者是联网的应用,可以部署在桌面或者是笔记本上。他们适合离线或者是偶尔在线的应用方案。富客户端提供动态的、高响应的用户体验,利用了本地的系统资源,也可以整合机器上的其他应用。

  RIA应用通常就是一个web应用加上一个运行在浏览中的丰富的图像界面。RIA是典型的在线应用。它可以使用客户端计算机的处理能力。

  3 选择适当的用户界面技术

  在你确定了用户界面类型之后,就需要选择一个实现技术。

  移动客户端可以选择下面的技术。

  •   Microsoft .NET Compact Framework。是.NET的子集,专门为移动设备设计。
  •   ASP.NET for Mobile。是ASP.NET的子集,专门为移动设备设计,不需要IIS。
  •   Silverlight for Mobile。Silverlight的子集,要求移动设备安装Silverlight插件。

  富客户端可以选择下面的技术。

  •   WPF。
  •   Windows Forms
  •   Windows Forms with WPF User Controls
  •   WPF with Windows Forms User Controls
  •   XAML Browser Application using WPF

  富Internet应用可以选择的技术。

  •   Silverlight
  •   Silverlight with AJAX

  Web应用可以选择的技术。

  •   ASP.NET Web Forms
  •   ASP.NET Web Forms with AJAX
  •   ASP.NET Web Forms with Silverlight Controls
  •   ASP.NET MVC
  •   ASP.NET Dynamic Data

  控制台程序可以使用的用户界面技术。

  •   Console
  •   Power Shell Commandlets

  4 设计表现层组件

  包括下面的三种组件:

  •   用户界面组件
  •   表现层逻辑组件
  •   表现层模型组件

  这些组件在表现层支持不同的关注。使用依赖注入的抽象模式,使得你的表现层逻辑更容易测试。

  用户界面组件

  用户界面组件是显示数据和接收用户输入的元素。他们通常被看做是Views。可以参考下面的设计原则:

  •   考虑将页面和窗体分离到用户控件中,最小化复杂性,支持控件重用。选择适当的用户界面组件,利用控件的数据绑定功能。
  •   避免通过继承来重用代码。考虑使用组合而不是继承来创建可重用的表现组件。
  •   避免建立自定义的控件,除非有特殊的显示需要。如果需要的话,可以考虑购买toolkit。如果一定要开发自己的控件,考虑扩展现有控件,而不是完全新开发。使用扩展现有控件的行为,而不是继承它。

  表现层逻辑组件

  

  表现层模型组件

  

未完待续。。。。。。。。。。。。。。。。。。。。。。。。。。

  

分享到:
评论

相关推荐

    牛【SystemVerilog】路科验证V2学习笔记(全600页)

    "牛【SystemVerilog】路科验证V2学习笔记(全600页)"是一份详尽的学习资料,涵盖了路科验证方法论的第二版(V2)在SystemVerilog中的应用。 笔记内容可能包含了以下几个关键知识点: 1. **基础语法**:...

    【SystemVerilog】路科验证V2学习笔记(全600页).pdf

    SystemVerilog的听课学习笔记,包括讲义截取、知识点记录、注意事项等细节的标注。 目录如下: 第一章 SV环境构建常识 1 1.1 数据类型 1 四、二值逻辑 4 定宽数组 9 foreach 13 动态数组 16 队列 19 ...

    【SystemVerilog】路科验证V2学习笔记(全600页)

    SystemVerilog的听课学习笔记,包括讲义截取、知识点记录、注意事项等细节的标注。 目录如下: 第一章 SV环境构建常识 1 1.1 数据类型 1 四、二值逻辑 4 定宽数组 9 foreach 13 动态数组 16 队列 19 关联数组 21 ...

    大型金融数据中心网络架构设计V2.pptx

    "大型金融数据中心网络架构设计V2.pptx" 本资源摘要信息来自一个关于大型金融数据中心网络架构设计的PPT文件,内容涵盖了金融数据中心网络架构设计的演进路线、金融网络应用场景的划分、数据中心应用服务域、双活...

    AADL 学习笔记_V2_aadl_

    在“AADL学习笔记.docx”文档中,读者可以期待找到对这些概念的详细解释、实例演示以及如何将它们应用到实际项目中的指导。这份笔记对于正在学习AADL或准备采用AADL进行系统设计的人来说是一份宝贵的资源。

    《软件架构设计文档》ADMEMS模板v2.docx

    软件架构设计文档ADMEMS模板v2是软件开发过程中的重要文档,旨在描述软件系统的架构设计,提供软件系统的总体架构、组件之间的关系、数据流向、接口定义等信息,以便于项目团队和stakeholders之间的沟通和协作。

    一种结合车联网和C-V2X的终端设备系统架构设计.pdf

    结合车联网和C-V2X技术的终端设备系统架构设计,旨在通过高效的通信模块和先进的信息处理能力,推动智能交通系统的发展,实现交通事故的减少和交通效率的提升,最终为驾驶者提供一个更安全、更便捷的驾驶体验。...

    03.AxureUX中后台管理信息系统通用原型设计方案 v2(设计组件).rp

    03.AxureUX中后台管理信息系统通用原型设计方案 v2(设计组件).rp 03.AxureUX中后台管理信息系统通用原型设计方案 v2(设计组件).rp 03.AxureUX中后台管理信息系统通用原型设计方案 v2(设计组件).rp 03.AxureUX中...

    Application Architecture Guide v2

    《应用架构指南v2》是微软发布的一份深入探讨应用架构的重要文档,旨在为软件开发者、架构师和项目管理者提供一套全面的指导原则和最佳实践。这份指南详细阐述了如何设计、构建和优化应用程序,以确保其高效、可扩展...

    SystemVerilog路科验证V2学习笔记

    SystemVerilog路科验证V2是一个SystemVerilog的听课学习笔记,包括讲义截取、知识点记录、注意事项等细节的标注,可快速获取自已需要的知识,喜欢的平台可下载试试! 介绍设计描述和验证语言SystemVerilog的基本...

    云平台系统架构设计文档v2.docx

    云平台系统架构设计文档v2.docx云平台系统架构设计文档v2.docx云平台系统架构设计文档v2.docx云平台系统架构设计文档v2.docx云平台系统架构设计文档v2.docx云平台系统架构设计文档v2.docx云平台系统架构设计文档v2....

    【SystemVerilog】路科验证V2学习笔记.7z

    本文将深入探讨“路科验证V2”学习笔记中的关键知识点,主要基于提供的"SV部分讲义"。 一、SystemVerilog基础 1. **数据类型**:SystemVerilog提供了丰富的数据类型,包括位(bit)、逻辑(logic)、整型(int)、...

    COM组件用例和测试代码V2

    4. **接口设计**:学习如何设计有效的COM接口,使其能够满足多种应用场景。 5. **测试策略**:掌握如何编写测试代码来验证COM组件的功能,包括单元测试和集成测试。 6. **注册与反注册**:理解如何在系统中注册和反...

    《合作式智能运输系统 车用通信系统应用层及应用数据交互标准》(TCSAE 53-2017)全文 中国 V2X 标准.pdf

    TCSAE(中国汽车工程学会)发布的《合作式智能运输系统 车用通信系统应用层及应用数据交互标准》(TCSAE 53-2017)是中国在V2X领域内首项正式标准,标志着国内相关技术的规范化发展。 该标准TCSAE 53-2017旨在提升...

    云平台系统架构设计文档v2.pdf

    云平台系统架构设计文档v2.pdf云平台系统架构设计文档v2.pdf云平台系统架构设计文档v2.pdf云平台系统架构设计文档v2.pdf云平台系统架构设计文档v2.pdf云平台系统架构设计文档v2.pdf云平台系统架构设计文档v2.pdf云...

    王晓波-从微服务到Serverless+架构应用与实践V2-32页.pdf

    微服务和Serverless是当前云计算架构设计中非常热门的概念,它们在解决传统单体应用所面临的可伸缩性、运维复杂性和快速迭代等问题上表现出了明显优势。在王晓波所著的《从微服务到Serverless+架构应用与实践》这份...

    【论文】旷视科技提出的新型轻量架构ShuffleNet V2

    随着移动设备计算能力的不断提升,以及深度学习技术的不断进步,轻量级神经网络架构设计将继续成为研究热点,ShuffleNet V2作为其中的重要里程碑之一,其创新点和实践经验对后续研究与应用都将有着深远的指导意义。

    kinect V2 学习资料

    从内容中可以看出,本文档主要是针对初学者设计,它介绍了如何从零开始搭建一个用于Windows 8.1平台的Kinect V2应用程序。文中提到了如何在Visual Studio 2013中创建一个项目,并且确保了使用的是适合Windows Store...

    LSD-TEST430F5438-01_V2_1学习板实验指导书

    通过以上知识点的梳理,可以看出LSD-TEST430F5438-01_V2_1学习板实验指导书覆盖了从硬件资源介绍到软件编程实践的全面内容,旨在帮助学习者深入理解MSP430F5438单片机的各项特性和实际应用,是一份非常实用的学习...

    中兴物联ME3760_V2公网模块硬件用户指导手册_V1.6.pdf

    文档中更新了TD-LTE band41频段及其射频性能指标,说明了模块在新的频段中的性能表现,并根据实际需要调整了模块在TD-LTE的速率,这对于模块在特定频段下的应用具有重要的指导意义。 在硬件用户指导手册中,还提供...

Global site tag (gtag.js) - Google Analytics