目录
简介/回顾
代码单元
方法视角
改变视角
融合
倒置
当前
中间件
软件制造
部件
倒置
错误的东西
我们管理错误的东西
供人深思
简介/回顾
Web开发比它需要的更复杂。一个贡献者是命名冲突避免。另一个是管理CSS级联的复杂性。这些和其他因素的背后是“太多的东西”因素。
我们使用的许多实践和方法是在早期的网络时代开发的。网络缓慢且不可靠,工具薄弱,标准的许多功能即使有任何支持,也有限。页面是1-Shot的(所有内容都预先加载)。总共加载了链接的资源,全部加载到同一命名空间中。你知道问题和补救措施。每一次技术进步似乎都增加了更多的问题——CSS Sheets不断变大,脚本不断变大。更多的脚本,更多的工作表...东西太多了!
在最简单的形式中,浏览器只是一个查看器。任何在任何时候都看不到的东西都是超重行李。自早期以来,技术格局已经发生了根本性的变化,但我们的方法并非如此。我们仍然使用大文档,以文档为中心的方法,充满了多余的东西。我称之为“以防万一”的方法:加载您需要的所有内容,以及更多(以防万一)在前面。但是,借助现代技术,“及时”加载同样容易,从而使Web应用程序更快、更动态、更易于管理。
代码单元
在进入“太多的东西”之前,我想简要介绍一下“代码单元”。
在最简单的形式中,代码单元(UOC)是一系列指令,它将执行到完成而不会延迟或中断,它表达了单个可识别的目的或“思想”。
简化:连续的、相关的代码行,不分支(包括调用和new)或块,我们可以命名。片段和指令与UOC相关联。
UOC是一个“基本粒子”——所有代码都可以用UOC分组和层次结构来表示。“最简单的”UOC价值有限——不能创建任何东西或调用任何东西的代码没有很多引人注目的用例。如果你还记得整个机器的事情,我们可以把它看作是——机器(抽象),工作区(下面),指令(UOC步骤)。UOC机器分三个步骤运行:
- 初始化——初始化设置环境。它设置变量,并且可以在外面获取值。它可以获取对象,但是在UOC中使用对象(读取其值)将需要某种中断/调用。必须将必需值提取到本地值类型中。
这就是工作空间。 - 运行——UOC运行,更改本地值类型。这是“不间断运行”部分。 重温工作:工作是一种消耗能量的资源,以执行指令,以实现所需的更改。
- 更改资源——这是“所需的更改”。我们需要改变一些外部的东西才能有用。(从技术上讲,我们告诉资源进行更改。我们无法改变我们不拥有的东西。
这里的功/能量包括与经典物理学相同的功/能量思想。大多数标准方程都适用。方程以值|度量集(4 |米)表示。创建UOC的一个目的是提供一个“软件标准单元”,用于开发工作/代码的可测量维度,以用于这些和其他方程。这在这里不是很重要,但对规划和管理至关重要。许多方法将管理/分析指标“置于”方法之上。在这里,它是内置的,从头开始。
所有软件都是UOC的组合,(每个)都有定义的标准可测量方面。
如果所有的“部分”都是可测量的,那么“整体”应该是可测量的,任何部分也应该是可测量的。UOC提供了比“代码行数”更有用的指标。
UOM机器可以(部分)由下图表示。“代码单元”替换为名称/标识符。数字(此处为1)定义了层次结构中的位置。层次结构的两种格式是虚线(1.1.2.3)或斜杠(/1/1/2/3/)。

最后的UOC部分只是信息性的,但值得介绍。
我们可以从两个角度定义UOC:
- 方法视角—— “用这些项目做你的工作,给我结果”。
- 更改视角——“以这种方式更改项目X,Y”。
“把盘子洗干净,放好”——方法
“把水槽里的脏盘子换成架子上的干净盘子。”——改变
让我们看看这些菜肴的UOC视角。
方法视角
方法视角通过操作指定。
操作由签名标识。签名包含一个应描述其功能的名称、输入列表和单个(可能是复合)返回项;
方法视角查看器知道两个“操作”——洗涤..,放好..
它启动操作并处理结果。这是一种推送方法。
要了解比公共界面更多的信息,观众必须查看内部或具有先验知识。
签名没有说明它更改了什么。
功能分析具有纯函数的概念——仅返回一个值而不改变任何内容的函数。它“没有副作用”。
使用方法视角图:
Dishrack.Dishes = WashDishes(Sink.Dishes); Shelf.Dishes = PutAway(Dishrack.Dishes);
讯享网

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/14828.html