当前位置:首页 > 软件设计 > 正文内容

读软件设计的要素01概念

邻居的猫1个月前 (12-09)软件设计1543

1. 概念

1.1. 一个软件,从运转于手机上的最小程序到大型的企业体系,都是由概念组成的,每个概念都是独立的功用单元

1.2. 软件中的可用性问题,常常能够追溯到其底层概念

  • 1.2.1. 概念协助辨认软件的不可用性

1.3. 概念都是以相同办法在各种软件中重复运用的

  • 1.3.1. 将规划分解为最基本的概念带来了概念重用的时机

1.4. 概念就像是分子

  • 1.4.1. 尽管互相结合在一起,但不管在哪里出现,它们的特色和行为都是相似的

1.5. 概念没有可视化的办法,它们十分笼统

1.6. 任何关于规划的谈论都有必要环绕基本概念,并点评概念选用的行为形式是否契合它的意图

  • 1.6.1. 用户界面也很重要,但在必定程度上用户界面仅仅服务于概念,并将概念出现给用户

  • 1.6.2. 假如咱们想让软件更好用,就有必要从概念着手

1.7. 在传统的规划学科中,规划是从概念这个中心动身的

  • 1.7.1. 当挑选好中心概念后,后续的规划决议计划也是不可防止的

  • 1.7.2. 规划作为一个全体,需求使著作出现出共同性,使它看起来像是一个人的著作,哪怕它是由一个大型团队共同完成的

  • 1.7.3. 用户能够感知到著作的完整性和统一性,而规划中潜在的杂乱性要让坐落简略的著作形象

1.8. 概念的杂乱性是合理的

  • 1.8.1. Photoshop软件的图层和蒙版就归于杂乱的概念

2. 规划的层次

2.1. 物理层次

  • 2.1.1. 规划按键、布局和手势

  • 2.1.2. 对应用户的物理和认知才干

  • 2.1.3. 这个层次是关于组件的物理特性的

  • 2.1.3.1. 即便软件的界面仅仅在一块触摸屏上运转,也会有物理特性,只不过或许比较有限

  • 2.1.3.2. 咱们有限的视觉采样率导致了感知交融,这使咱们很难差异产生在30毫秒以内的事情,所以30帧/秒的画面就足以让电影看起来很流通

  • 2.1.4. 菲茨规律(Fitt's Law)猜测了用户将光标移动到目标点需求的时刻,并解说了为什么菜单栏应该坐落屏幕顶部,就像macOS的桌面那样,而不是像Windows体系桌面那样坐落软件的窗口内部

  • 2.1.5. 在物理层次进行规划时,有必要尊重用户身体特色的多样性

2.2. 言语层次

  • 2.2.1. 规划与用户沟通的图标、提示信息和术语

  • 2.2.2. 这个层次重视的是为了表达软件的运转办法而运用的言语,以协助用户阅读软件、了解可用的操作以及操作将产生的影响、软件现已产生的行为等

  • 2.2.3. 在言语层次进行规划时,有必要尊重用户在文明和言语上的差异

  • 2.2.3.1. 在欧洲,赤色圆圈的路标表明任何车辆都不答应通行

  • 2.2.3.2. 大多数美国司机却或许觉得禁行标识应该是赤色的斜杠

  • 2.2.4. 当用户界面的规划师议论对共同性的需求时,他们一般指的便是言语层次上的言语运用

  • 2.2.4.1. 共同性包含保证在整个用户界面中,对相同的词语选用了相同的运用办法

2.3. 首要重视用户界面中的概念表达

2.4. 概念层次

  • 2.4.1. 将底层行为规划为一系列概念

  • 2.4.2. 它重视规划背面的行为,即重视由用户和软件自身履行的操作,以及这些操刁难底层结构的影响

  • 2.4.3. 与言语层次比较,概念层次与沟通或文明无关

  • 2.4.4. 在编程中,笼统(abstraction)和表达(representation)有着重要的差异

  • 2.4.4.1. 笼统是捉住编程思维的实质,也或许用于对观测到的行为进行阐明

  • 2.4.4.2. 表达是通过代码完成这个实质

3. 心智模型

3.1. 概念规划之源

3.2. 用户知道软件中有这些功用,却依然无法正确地运用它们

  • 3.2.1. 最常见的原因是,用户的心智模型不正确,或许说与软件规划师和程序员的心智模型不共同

  • 3.2.2. 用户对他们运用的设备往往有着含糊、不完整乃至是不共同的心智模型,这并不令人意外

3.3. 处理这个问题的一个糟糕办法是训练用户

  • 3.3.1. 大多数用户都会回绝花时刻学习怎么运用软件,他们以为游刃有余

3.4. 一个更好的处理办法是规划软件的概念,使软件简略、灵敏并能很好地习惯用户的需求

  • 3.4.1. 一起通过用户界面向用户传达这些概念

3.5. 概念自身既是用户想要的心智模型,也是软件的规范

3.6. 用户界面规划师的使命便是规划出相似规划大师唐纳德·诺曼所说的“体系形象”

  • 3.6.1. 用户界面能够精确地对应概念模型,这样用户就能够获得与软件概念共同的心智模型

4. 概念能够表明单个软件

4.1. 概念是单个软件、一类软件以及各类软件的特征

4.2. 概念能够让你比较软件,留意其必要的功用以及知道怎么有用地运用这些功用

4.3. 短信和电子邮件的首要差异

  • 4.3.1. 短信是用会话概念安排起来的,一切发送给同一个人的音讯都会显现在同一个界面中

  • 4.3.1.1. 在必定程度上是由于短信的发送者和接收者仅由电话号码标识身份

  • 4.3.1.2. 短信依靠会话的场景

  • 4.3.2. 电子邮件一般运用“邮箱”​、​“文件夹”或“标签”等概念来安排

  • 4.3.2.1. 电子邮件用户往往具有多个通信地址,这使得依据地址对电子邮件进行分组并不牢靠

  • 4.3.2.2. 电子邮件信息往往是孤立的

5. 概念能够表明一类软件

5.1. 概念一般是软件差异化的要素,重视概念会让你更重视商场的需求,并提醒软件成功或失利的原因

5.2. 概念不只能够表明单个软件,而且能表明一类软件

  • 5.2.1. 文本修改器

  • 5.2.1.1. Atom、Sublime、BBEdit和Emacs来修改程序代码

  • 5.2.1.2. 文本修改器的要害概念是“行”和“字符”

  • 5.2.1.3. 行概念包含了强壮的功用,例如比较和兼并,这些对程序员办理代码来说是必不可少的

  • 5.2.2. 文字处理软件

  • 5.2.2.1. Word、OpenOffice和WordPerfect来创立各种文档

  • 5.2.2.2. 包含“阶段”​,还包含“格局”​,格局概念答应用户为文本指定排版特色

  • 5.2.3. 桌面出书软件

  • 5.2.3.1. Adobe InDesign、QuarkXPress、Scribus和Microsoft Publisher将文档安排成书本和杂志的终究版式

  • 5.2.3.2. 包含文字处理软件的基本概念,但增加了最重要的文本流概念,这一概念答应用户在文档的不同方位刺进链接在一起的文本框

5.3. 概念能够差异软件

6. 概念能够作为事务界说的中心

6.1. 概念能够协助从事数字化转型的公司规划行进的路途

6.2. 尽管出资中心概念这件事听起来没有那么花哨,但或许更有用

6.3. 只需确认事务的中心概念,就能够协助公司专心于正在供给的服务,以及将来或许会供给的服务

6.4. 析这些中心概念能够协助公司发现其间的抵触和时机,然后简化事务

6.5. 对概念清单进行排序,能够反映每个概念关于客户和公司的价值,以及施行和保护这些概念的本钱,然后为公司的服务战略供给依据

6.6. 通过整合一系列中心概念,公司能够保证客户在技能渠道和公司各部门之间具有共同的体会,并能够下降因具有多个概念变体导致的本钱

6.7. 为了使赢利最大化,大多数航空公司躲藏了座位的定价战略

  • 6.7.1. 只要专家才知道当时的座位价格与这架飞机上其他座位比较,或许与曩昔的座位价格比较,是贵了仍是廉价了

7. 概念能够确认本钱和收益

7.1. 概念能将功用更明晰地划分为独立的单元,每个功用单元都有自己的价值和本钱

7.2. 概念的杂乱性,即开发这个概念的本钱,以及用户混杂的本钱

7.3. 概念的新颖性,以及由此带来的危险

7.4. 依据二八规律,咱们知道20%的概念将带来80%的收益

8. 用概念别离重视点

8.1. 概念供给一种新的粒度,让软件规划师能够更有用地别离软件的功用点、探究概念的重用办法,并更合理地规划软件工程作业

8.2. 处理问题最重要的战略是别离重视点,即分隔处理重视点的不同方面,即便有些重视点并不是彻底独立的

8.3. 别离重视点是有用的,由于这样能使规划师一次只专心于一个方面

  • 8.3.1. 无须在规划审阅功用的一起考虑是否能够吊销约请

  • 8.3.2. 每个概念都能够规划得很丰厚,乃至能够独自成为一个小体系

  • 8.3.3. 假如规划师以为某个概念的本钱与收益不匹配,也能够彻底疏忽这个概念

9. 概念能够保证规划的安全

9.1. 概念是安全规划的实质,挑选正确的概念并了解其意义至关重要

9.2. 安满是一切软件都重视的问题

9.3. "安全规划”的盛行,反映了人们逐渐对软件安全达到了一种一致,即保证安全最好的办法不是没有安全漏洞(这几乎是不或许的)​,而是通过规划保证即便存在安全漏洞,体系依然是安全的

9.4. 体系规模的安全规划依靠几个要害的概念

  • 9.4.1. 身份验证概念,保证正确辨认出恳求的宣布者,也便是安全范畴中的“委托人”​

  • 9.4.2. 授权概念,保证这些恳求者只能拜访某些资源

  • 9.4.3. 审计概念,保证每次拜访都有实在的记载,而且能够据此赏罚不良行为等

9.5. 概念是一切体系规划的中心

  • 9.5.1. 安全(safety)范畴不同于安保(security)范畴,前者很少有规范的概念

  • 9.5.2. 假如一个事端重复产生,就意味着应该有一个新的概念发挥相似安保概念的效果,并选用传统的办法完成要害功用

  • 9.5.2.1. 医疗设备常常产生剂量计算错误,那么就应该规划一个剂量概念,用来处理各种单位、浓度和流速,然后消除许多导致患者受伤或逝世的悲剧性事端,这些事端本是能够防备的

10. 概念能够回应对规划的谈论

10.1. 概念为谈论规划供给了可用的准则,然后防止花很长时刻才干发现问题

  • 10.1.1. 把握这些准则的软件规划师会做出更好的规划,即便他们还没有清晰的主意

10.2. 在任何规划范畴,规划师都会对互相的著作进行剖析和谈论,这对规划有重要的效果

10.3. 谈论并不是一种通过体系性考虑的正式点评,但正是它的非正式性能够带来新的视角与创意

10.4. 规划准则能够有不同的运用办法

  • 10.4.1. 它们是规划谈论达到一致的根底,或许能够被体系地应用于启发式点评,但其更重要的效果是刻画规划师的思维

扫描二维码推送至手机访问。

版权声明:本文由51Blog发布,如需转载请注明出处。

本文链接:https://www.51blog.vip/?id=331

分享给朋友:

“读软件设计的要素01概念” 的相关文章

面向对象的三大特性,面向对象的三大特性是什么

面向对象的三大特性,面向对象的三大特性是什么

面向对象的三大特性是:封装、继承和多态。1. 封装(Encapsulation):封装是指将对象的属性(数据)和行为(方法)封装在对象的内部,对外提供公共接口(方法)来访问和操作这些属性。封装可以隐藏对象的内部实现细节,只暴露必要的接口,这样可以提高代码的安全性、可维护性和可重用性。2. 继承(In...

商业模式的设计,构建可持续发展的企业蓝图

1. 市场分析:了解目标市场的需求、竞争状况、消费者行为等。这有助于确定你的产品或服务在市场中的定位。2. 价值主张:明确你的产品或服务能为客户提供的独特价值。这应该与市场需求相匹配,并能够解决客户的问题或满足他们的需求。3. 成本结构:分析提供产品或服务所需的成本,包括原材料、生产、营销、运营等成...

面向对象特性

面向对象特性

面向对象编程(ObjectOriented Programming,简称OOP)是一种编程范式,它通过对象和类来组织代码。面向对象编程具有以下主要特性:1. 封装(Encapsulation): 封装是将数据(属性)和行为(方法)捆绑在一起,形成一个对象。这样可以隐藏对象的内部实现细节,只暴露...

系统架构设计师教程pdf,全面解析系统架构设计核心知识

系统架构设计师教程pdf,全面解析系统架构设计核心知识

你可以通过以下链接下载系统架构设计师教程的PDF文件:1. 系统架构设计师教程_带目录高清PDF版:。2. 系统架构设计师教程(第2版)PDF:。3. 系统架构设计师教程(第4版)PDF:。4. 系统架构设计师教程(第4版)PDF:。希望这些资源对你有所帮助!系统架构设计师教程PDF:全面解析系统架...

ios 架构设计,提升应用性能与可维护性的关键

iOS 架构设计是一个复杂的过程,涉及到多个方面,包括但不限于:1. 架构模式:选择合适的架构模式,如 MVC、MVVM、VIPER、Clean Architecture 等。每种模式都有其优缺点,需要根据项目需求进行选择。2. 模块化:将应用拆分成多个模块,每个模块负责不同的功能。这有助于提高代码...

行为型设计模式,行为型设计模式概述

行为型设计模式,行为型设计模式概述

行为型设计模式(Behavioral Design Patterns)是软件设计模式的一种,它关注对象之间的交互和职责分配,主要解决对象之间复杂的交互关系。行为型模式主要分为类行为模式和对象行为模式。类行为模式使用继承关系在几个类之间分配行为,而对象行为模式则使用对象的聚合来分配行为。1. 责任链模...