JS 中的常量以及柏拉图和亚里士多德与它有什么关系

js 中的常量以及柏拉图和亚里士多德与它有什么关系

在我看来,后辈将代码组件视为物质的东西,而前辈则更多地处理理想的类别。
或者也许这取决于一个人的世界观而不是他们的专业水平?

有时在代码审查期间,我会遇到代码,其中开发人员使用常量table_width而不是常量car_width,因为这是他找到的第一个具有合适值的常量。

当开发人员根据常量的值而不是名称来选择常量时,这是一个常见问题。事实证明,开发人员不理解常量的主要用途。在他看来,常量只是为了重用和可读性。

让我们回想一下柏拉图和亚里士多德对此的说法。

他们有自己的常量,称为ship_of_theseus.
https://en.wikipedia.org/wiki/ship_of_theseus
它在希腊语中的命名可能不同,但我们会用拉丁语写它,因此将其翻译成英语。

const ship_of_theseus = {    name: "ship of theseus",    parts: ["mast", "hull", "sail"]};

登录后复制

此例中的常数ship_of_theseus象征着忒修斯之船的不变身份。它的值随着时间的推移而变化,代表着物质的变化。

// Day 1: Initial state of the shipconst SHIP_OF_THESEUS = {    name: "Ship of Theseus",    parts: ["mast", "hull", "sail"]};// Day 2: Developer changes one part of the shipconst SHIP_OF_THESEUS = {    name: "Ship of Theseus",    parts: ["new mast", "hull", "sail"]};// Day 3: Developer changes another part of the shipconst SHIP_OF_THESEUS = {    name: "Ship of Theseus",    parts: ["new mast", "new hull", "sail"]};// Day 4: Developer changes structure of the part of the shipconst SHIP_OF_THESEUS = {    name: "Ship of Theseus",    parts: {        mast: "new mast",        hull: "new hull",        sail: "sail"    }};

登录后复制

理想(常数):

ship_of_theseus:每一天,这个常数都代表着忒修斯之船的理想本质。尽管其价值发生了变化,但船舶的概念保持不变。

材料(常数值):

零件:每天都会变化的船舶零件列表。这反映了船舶的物质体现,随着时间的推移而变化。

柏拉图论理想与物质:

常数ship_of_theseus作为理想形式保持不变:每天它都代表忒修斯之船。然而,它的价值(零件)可能会发生变化,反映材料变化。

亚里士多德论形式与物质:

亚里士多德会说,船的身份是通过其 formfunction 保存的(与 js 中的鸭子类型非常相似,不是吗?)。在我们的示例中,尽管船舶的各个部分发生了变化,但对象的形式(其结构和功能)保持不变。尽管部件发生了变化,但每天它仍然是同一艘忒修斯之船。

那么使用常量的实际好处是什么?

主要好处不是可读性和可重用性。主要好处是将代码分离为理想材料(根据柏拉图)或形式物质(根据亚里士多德)。

通过这种分离,我们可以在不改变形式的情况下改变内容。
而且我们可以在整个程序中使用表单而不用担心任何问题。

以上就是JS 中的常量以及柏拉图和亚里士多德与它有什么关系的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2671777.html

(0)
上一篇 2025年3月7日 13:15:57
下一篇 2025年3月7日 13:16:03

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 使用 Formity 在 React 中创建动态、多步骤表单

    构建现代 Web 应用程序时,表单通常成为用户体验的关键部分。无论是收集用户数据、提供多步骤向导还是构建交互式调查,创建动态和响应式表单的挑战很快就会变得难以承受。输入 Formity,这是一个 npm 包,它消除了在 React 中创建表…

    2025年3月7日
    000
  • 开始使用 Vercel

    vercel 是一个流行的前端应用程序部署平台。它提供了一个命令行界面 (cli),允许您与 vercel 项目交互并高效部署应用程序。以下是一些常见的 vercel cli 命令及其用途: 安装 使用vercel cli之前,需要安装它。…

    2025年3月7日
    200
  • JavaScript:默认参数、扩展运算符、剩余参数和解构!

    默认参数 我们可以直接在参数列表中添加默认值 function rolldie(numsides = 6) { return math.floor(math.random() * numsides) + 1;} 登录后复制 这里,需要注意秩…

    2025年3月7日
    200
  • Devto 系列:如何开始编写代码

    选择一种编程语言并学习 决定编程语言非常重要,特别是当您是初学者时。 话虽如此,学习任何东西的关键就是开始。这可能看起来很困难。有一些最受欢迎且适合初学者的选项可供考虑。不过,C、C++、Java 和 Python 是最流行的高级编程语言。…

    2025年3月7日
    200
  • 什么是标记语言

    每当我们谈论标记语言时,我们都会想到 HTML 这个名字,但事实并非如此,HTML 并不是唯一的语言。今天我给大家介绍一些标记技术。 HTML、Markdown 和重构文本。我们都知道 HTML,但很少有人知道 Markdown 和 res…

    2025年3月7日
    200
  • 在 Javascript 中生成 UUID:分步指南

    最初发布在这里如果您曾经试图在不依赖基于序列或数据库存储值的系统中创建唯一标识符,那么 uuid(通用唯一标识符)就是关键。在 javascript 领域,uuid 在保护不同系统之间的数据唯一性方面发挥着至关重要的作用。了解 uuid 的…

    2025年3月7日
    200
  • 大家好

    大家好,我是Rounak Kumar Singh。我来自印度,是一名技术学士学生。我只是编程初学者,我只知道基本的数据结构和算法,我对学习 Web 开发和机器学习和深度学习感兴趣,我计划尽可能多地记录我的旅程,我将陈述我学到的东西每天在数据…

    2025年3月7日
    200
  • 盒子里有什么?!:变量

    小盒子 什么是变量?大多数(尤其是 mozilla web 文档(mdn))会将其描述为“值的容器”。命名代码,指的是从简单值到函数的任何类型的程序。 var foo = “i pity the…”;const group =[‘rho…

    2025年3月7日
    200
  • React – 服务器操作

    反应表单动作。 react 引入了新的表单 actions 和相关的钩子来增强原生表单并简化客户端-服务器通信。这些功能使开发人员能够更有效地处理表单提交,从而提高用户体验和代码可维护性。对于react form actions的深入探索,…

    2025年3月7日 编程技术
    200
  • 在 Jest 中验证字符串

    各位提交者们好! 也许您在 jest 中验证字符串时遇到了问题。 例如,上面的测试验证函数接收一个值并返回一个四舍五入的值。 it(‘it should properly format a unit value with rounding.…

    2025年3月7日
    200

发表回复

登录后才能评论