7±2

心理学的7±2原理表明人类认知能力有限,祖先发明分而治之方法克服局限。人体可用四层结构描述,很多软件系统也如此。软件设计要分块、分层,遵循7±2原理,如UML图实体、接口公共函数数量等,开发小组人数也以七人以下为佳。
部署运行你感兴趣的模型镜像

心理学研究认为人同时只能处理7±2件事,也就是说人通常只能同时处理59件事。超过这个范围,就容易出现混乱或差错。据说,在某些古代文明中,“七”有很多的意思。

 

7±2原理表明了人类认知能力的局限性。为了克服这个局限,我们的祖先很早就发明了分而治之(Divide and Conquer)的方法。在研究一个复杂事物时,将其划分成若干小部分,并逐渐细化,直到能把握为止。然后再反过来研究各部分之间的联系,最终达到理解整个事物的目的。

 

以人体为例,人体可看成是一个四层结构:系统、器官、组织、和细胞。人体由若干系统组成,如呼吸系统、消化系统、循环系统、神经系统等,系统若干器官组成,器官由若干组织组成,组织由细胞组成。这样我们在研究每一部分时,同时需要考虑的问题就不会太多。这样既容易描述,也便于理解。如果在划分时没有加入系统这一层,而把人体看成是心脏、大脑、脾、肝、胃、肠、肺、手、脚、腿、臂、眼、耳、鼻、喉等,就不利于我们理解各器官之间的关系以及人体的运作机理。就本质而言,人体是由细胞组成的,但这对我们理解人体有多大帮助呢?所以合理的分层是我们描述问题、理解问题的有力武器。

 

人体是一个复杂系统,但我们用一个四层结构就能描述得相当清楚。巧的是,相当多的软件系统都能用四层结构描述。以把每一部分都分成七个小部分计算,一个四层结构能描述28007+7*7+7*7*7+7*7*7*7)个子系统或类。有多少软件系统能超出这个范围呢?

 

软件设计的一个重要任务是分块、分层,使每一块、每一层都自成一体,完成某一功能,但又不过于复杂。并使各块、各层之间的耦合度要尽量小。这样的软件系统既易于开发,又易于维护。不幸的是,一个软件可能有很多划分方法。怎样使划分更合理,那就要看经验与感觉了。但如果一种划分违背了7±2原理,就很可能表示该划分不合理。大的原则是:不是完成同一功能的子部分不要放在一起,不是同一抽象层的子部分不要放在同一层。把心脏归到呼吸系统显然不对,把上皮组织与消化系统的各器官并列起来也不妥当。当然,也不要指望一次就能划分好,要随时调整。

 

在软件开发中,要自觉运用7±2原理,

l         每一张UML图都尽量不要超过7±2个实体。

l         每个接口(interface)或抽象类的公共函数(public functions)都尽量不要超过7±2个。

l         每个函数都不要过长。函数内,紧密相关的表达式之间不留空行,形成一个表达式组,与其它表达式组用空行隔开。每个表达式组最好有注释,解释整个表达式组的行为。每个表达式组的行数也不要过多。

l         软件的物理结构与逻辑结构要尽量匹配。这样,如果逻辑结构遵从7±2原理,物理结构就能自动符合要求。

l         每个开发小组的人数以七人以下为佳。

l         等等。

 

不管我们喜欢与否,7±2原理是大自然赋予人类的限制。也许这个原理是美得一种表现呢,不是说简单就是美吗?那就让每一个模块、每一个类、每一个函数都美起来吧。

 

您可能感兴趣的与本文相关的镜像

Linly-Talker

Linly-Talker

AI应用

Linly-Talker是一款创新的数字人对话系统,它融合了最新的人工智能技术,包括大型语言模型(LLM)、自动语音识别(ASR)、文本到语音转换(TTS)和语音克隆技术

要使用TPS7A4901线性稳压器实现±13.5V电压输出,需要根据其电气特性和封装特性进行外围电路设计和配置。TPS7A4901属于TI的高耐压线性稳压器系列,其功能和TPS7A4101类似,支持高输入电压,并具有热关断和电流限制保护功能[^1]。以下是设计要点和实现方法: ### 1. 输入电压范围 TPS7A4901能够承受高达50V的输入电压,因此输入端可以选择高于±13.5V的电压作为输入,例如±15V或±24V,以确保稳压器能够提供稳定的输出电压。 ### 2. 输出电压配置 TPS7A4901是固定输出电压的稳压器,若需要±13.5V输出,需确认该型号是否支持该电压值。若无固定版本,则可通过外接电阻分压网络调整输出电压。具体公式为: $$ V_{out} = V_{ref} \times \left(1 + \frac{R_2}{R_1}\right) $$ 其中 $ V_{ref} $ 为内部基准电压,通常为1.2V左右,$ R_1 $ 和 $ R_2 $ 为分压电阻。 ### 3. 外围元件选择 - **输入电容**:建议使用大于1μF的陶瓷电容以确保输入稳定。 - **输出电容**:TPS7A4901在输出端要求最小4.7μF的电容以维持稳定,推荐使用低ESR陶瓷电容。 - **使能引脚(EN)**:可连接至高电平以启用稳压器,或通过外部逻辑控制进入低功耗模式。 ### 4. 封装与散热 采用HVSSOP-8封装的TPS7A4901具备良好的热管理能力,适用于高输入电压应用场景。在PCB布局时,应确保足够的散热区域,以防止热过载。 ### 5. 电路示例 以下是一个±13.5V输出的LDO稳压电路示例(假设使用可调版本): ```circuit Vin+ ---+----+----+---- Vout+ | | | C1 R1 | | | | +----+----+ | R2 | +----+----+ | | | GND C2 Vref | | | Vin- ---+----+---- Vout- ``` - $ C1 $:输入电容(1μF以上) - $ C2 $:输出电容(4.7μF以上) - $ R1 $、$ R2 $:用于调节输出电压的分压电阻 ### 6. 应用场景 TPS7A4901适用于需要高稳定性和高耐压能力的工业和电信系统中,例如精密放大器供电、数据采集系统或高精度传感器供电。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值