清晰度 要实现结构清晰,从你想说什么到你如

Collaborative Data Solutions at Canada Data Forum
Post Reply
rumiseoexpate5
Posts: 56
Joined: Wed Dec 11, 2024 3:56 am

清晰度 要实现结构清晰,从你想说什么到你如

Post by rumiseoexpate5 »

何表达,必须有一条直接的路径。这一原则主要侧重于表达和减少间接性。

大多数人是否更喜欢在命令行界面中输入晦涩难懂的命令来启动记事本应用程序,还是简单地用手指点击图标?您喜欢用汇编语言还是 C 语言编码?您喜欢 GPS 坐标列表还是绘制路线的地图?当表示级别与您思考问题的级别相匹配时,可以说它在结构上是清晰的。

要清楚,系统的概念必须有一个结构,而且必须 埃及 whatsapp 电话号码列表 清晰可见。实现这一点的常见方法是使用熟悉的隐喻,例如 Macintosh 的“桌面”、VisiCalc 的“电子表格”或 Squarespace 的“块”。

示例:对同一数据建模的两种方法
在设计数据模型时,您需要对表示形式做出结构性决策。以下哪项更清晰?

转移记录 退款
方向:-1
退款金额:“10.05”
数量:1005
货币:“美元”
货币编号:1
收费:“31f0alq8xz710a0”
父交易ID:“31f0alq8xz710a0”
从结构上看,右边的设计对其他人来说会更清晰。与左边相比,右边的间接性更少,左边的几个字段必须解释才能有意义(他们必须以某种方式知道 direction -1 表示反转,知道 currencyIdx 1 对应于美元,等等)。

Image

3 一致性
只要熟悉系统的一部分,你就能预测其余部分。请注意,一致性并不意味着一切都是一样的。我称之为“统一性”,如果几个元素都相同,那么它们就是多余的,你会遵循简约性来消除它们!相反,一致性要求存在一个将所有元​​素统一起来并确保某种形式的兼容性的基本原则。这个原则应该很容易表述。例如,你会期望包中的所有函数都尝试最大化重用并抛出类似格式的异常、使用类似的错误代码并采用类似的输入类型。它产生的设计不仅非常实用和易于理解,而且还解锁了元素之间的互操作性。

例如:ISO 216 纸张系列
下载.png
好的例子 原则
纸张系列 (ISO 216) 该系列中的每一张纸都是前一张纸的 2 倍大小
公制 每个单元都比上一个单元大 10 倍
Vitsoe 606 通用货架系统 所有搁架模块均具有标准宽度,可安装在轨道上的任何位置
UNIX 管道 所有输入和输出都是纯文本
腓尼基字母 所有单词均由 22 个符号组成,每个符号都有一个发音
上述所有系统都可以用一句话来解释。有了一致性,代码 实际上会更短 、需要的 测试更少 ,并且更能适应变化。当您向系统引入新元素时(例如,货架系统的新功能模块、UNIX 工具箱中的新程序,甚至是字母表中的新字母),您无需花费精力重新设计与之相关的其他组件:统一原则可确保新来者轻松与其他组件“相处融洽”。

另一方面,不一致的成本非常高昂。如果所有微服务都以不同的格式输出日志,那么就不可能聚合​​它们的输出或轻松地搜索它们;工程师需要了解每个微服务的各种怪癖才能调试问题。由于不一致,您的组织的成本最终是O(N)而不是O(1),其中N是您要维护的事物的数量。允许开销以这种速度增长是不可持续的,最终可能会严重影响您的开发速度。
Post Reply