首页 > 其他分享 >[转] 认知负荷才是关键

[转] 认知负荷才是关键

时间:2024-12-31 14:18:56浏览次数:1  
标签:架构 负荷 代码 认知 关键 模块 我们

Title: cognitive-load/README.zh-cn.md at main · zakirullin/cognitive-load

URL Source: https://github.com/zakirullin/cognitive-load/blob/main/README.zh-cn.md

简介(Introduction)

这世上有如此多的“流行语”和“最佳实践”,但是让我们把注意力转向更基础的方面。即——开发人员在浏览代码时所感受到的“困惑程度”。

困惑是以时间和金钱为代价的。困惑是由高_认知负荷_造成的。这不是什么花哨的抽象概念,而是一种人类的基本限制因素

由于我们花在阅读和理解代码上的时间远远多于编写代码的时间,所以我们应该不断地问自己,我们是否在代码中嵌入了过多会给人带来认知负荷的内容。

“认知负荷”(Cognitive load)指的是开发人员为了完成一项任务而需要进行思考的量。

在阅读代码时,人们会将诸如变量值、控制流逻辑和调用序列等内容记在脑海里。通常情况下,一般人在工作记忆中大约可以保存四个这样的部分。一旦达到这个临界值,理解事物就变得更加困难。

假设我们被要求对一个完全不熟悉的项目进行修复工作。并被告知在此之前,有一位非常聪明的开发人员在项目中编写了代码。采用了许多复杂高级的架构、花哨的库和先进的技术。换句话说项目的前任开发者给我们带来了很高的认知负荷。

我们应该尽可能地减少项目中会给人带来认知负荷的内容。

认知负荷的类型(Types of cognitive load)

内在的 - 源于任务本身所固有的难度。它是软件开发的核心要素,且这种难度无法降低。

与任务无关的 - 由信息的呈现方式导致。通常由与任务并无直接关联的因素引发,比如那些聪明人的 “骚操作”。并且这种类型的认知负荷是可以避免的。我们将在下文着重关注这一类型的认知负荷。

接下来让我们直接看一些“与任务无关的”认知负荷的具体实例。


我们将认知负荷的“困惑程度”定义如下:

标签:架构,负荷,代码,认知,关键,模块,我们
From: https://www.cnblogs.com/math/p/18643902/cognitive-load

相关文章

  • 线上事故频发?别只盯着“大事故”,这些认知误区才是真凶!
    最近和不少技术团队的朋友交流,大家都在为线上事故频发而头疼。吭哧吭哧跟踪了半年,各种复盘、优化,结果呢?事故依然像打不死的小强,层出不穷。为什么我们如此努力,却依然难以摆脱线上事故的困扰?很多时候,问题并非出在我们的执行力上,而是我们对于稳定性的认知就存在偏差,让我们在错误的道......
  • 线上事故频发?别只盯着“大事故”,这些认知误区才是真凶!
    最近和不少技术团队的朋友交流,大家都在为线上事故频发而头疼。吭哧吭哧跟踪了半年,各种复盘、优化,结果呢?事故依然像打不死的小强,层出不穷。为什么我们如此努力,却依然难以摆脱线上事故的困扰?很多时候,问题并非出在我们的执行力上,而是我们对于稳定性的认知就存在偏差,让我们在错误的道......
  • Java学习笔记01-static关键字
    static静态,可以修饰成员变量、成员方法##一、static修饰成员变量1、静态变量(类变量):有static修饰,属于类,在计算机里只有一份,会被类的全部对象共享2、实例变量(对象的变量):无static修饰,属于每个对象,每个对象的实例变量各不相同packageorg.example.staticfield;publicclass......
  • 认知体系和知识体系是我们认识世界和改造世界的两大支柱
    这个问题非常深刻,涉及到思维、学习和知识管理的核心。简单来说,「认知体系」和「知识体系」是两个不同但密切相关的概念,它们在本质上、功能上和形成方式上都有所区别。   一、什么是认知体系? 认知体系是一套与世界互动的思维框架,反映了一个人理解、分析和决策的方式。......
  • 杨立昆的洞见:AI 安全的关键不在于限制,而在于精巧的设计
    最近,人工智能领域的领军人物、图灵奖得主杨立昆(YannLeCun)在接受约翰霍普金斯大学和VoxMedia联合播客"OnwithKaraSwisher"的采访时,提出了一个极具价值的观点:“AI的安全性在于设计,而不是限制。”https://weibo.com/1233486457/P77gm41G3#commenthttps://www.youtube.com......
  • 软件系统验收全流程解析:从准备到后续保障,关键要点一览
    验收准备阶段确定验收标准:在项目启动初期,就应根据项目需求和合同约定,制定详细的验收标准。验收标准应涵盖功能、性能、安全、兼容性、易用性等各个方面,确保软件系统满足用户的业务需求和预期。组建验收团队:验收团队通常由用户方代表、项目负责人、技术专家、测试人员等组成。......
  • 深入探究微服务架构与分布式系统关键技术
    1.SpringBoot和SpringCloud的区别?SpringBoot:简化开发:SpringBoot是为了简化基于Spring的应用程序的创建和部署。它通过提供默认配置、依赖管理和内嵌服务器等功能,使得开发者可以快速上手,不需要进行大量的配置。独立运行:使用SpringBoot,你可以很容易地创建一个独立运行的......
  • 抢占先机!2025,三大认知降低To B赛道门槛
    前两天,有位用户找到阿道聊咨询的业务。三言两语中,处处凸显着现阶段ToB企业的困难:“到处都在降本增效,我们成本也收缩了,效率也提高了,但还是持续亏损。这不,想从工具落地的角度看看,有没有可以优化的。”ToB市场发展势头强劲,一片向好,然而身处其中的各大企业,却面临严峻的生存挑战。......
  • 电力交易笔记-附件5:负荷集成商,也叫负荷聚合商
    转自https://www.zhihu.com/question/468414700/answer/2248279000 负荷聚合商(loadaggregator,LA)作为新的专业化需求响应资源整合者,最先出现在发达国家,通过专业技术评估用户的需求响应潜力,整合分散的需求响应资源来参与电力系统运营。从系统运行方的角度看,LA被看做是一个大......
  • 介绍1个简单好用的随手画圆网站,关键还免费,挑战单手画圆啦
    #网站介绍无聊的时候不知道画什么,解决画画的烦恼,从单手画圆开始网站网址https://whattodraw.art功能特点1、画画的想法从简单、中等、难根据选择随机生成 2、免费无登录不注册3、有个转盘,自定义画画的想法随机生成 4、从最简单的开始,单手画圆,看看你的得分吧 硅谷王......