0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

详谈代码结构化的重要性和经验方法

如意 来源:读芯术 作者:读芯术 2020-07-05 10:25 次阅读

作为代码工作中至关重要的一环,代码结构化是颇具难度的。要想写出结构良好的代码,编写者需要具有正确的思维方式,对设计模式有自己的理解,还得拥有丰富经验。通常情况下,要想培养上述能力,你要走的路可不少。

代码结构化的重要性不应被低估,从可读性和可维护性的角度来看,代码结构非常重要。

经验1:提前设计

在着手编写代码之前,你最好考虑一下对将要构建的应用程序进行提前设计,统一建模图表(UML diagrams)就是个不错的选择。在编写代码之前,如果提前有计划在手,编写者可以更加专注。通过提前思考代码的结构,创建一些有用的UML图表,许多明显缺陷都可以提前避免。

更重要的是,制定计划能让我们认识到,在编写代码前还有许多需要编写者思考的事情。UML图还可以防止代码编写者“思想游离”,并且防止编写者在代码里添加自认为将来会派上用场的非必要功能。

不做计划就急着开始,在最初你能跑得快一点儿,但跳过这个步骤最终会使你不得不对大量代码进行重构,进而消耗大量时间和动力。记住,欲速则不达。

经验2:类与函数准则

以下准则可以帮助你保持类与函数的可读性及可维护性:

· 使类与函数尽可能地小

· 类与函数应遵循单一职责原则

保证类与函数尽可能小可以使代码更容易理解。一般来说,较大的类和函数应被分解为较小的专门化类别。

遵循单一责任原则可以帮助你保持类和函数在较小的级别,即每个类、每个函数只做一件事。但注意,要在合理范围内划分得“小”,因为多数情况下,过多的细小分类反而要比几个大类糟糕得多。把函数分成“获取、处理及存储数据”这样的大型函数是行不通的。你必须将此函数分成三个较小的函数:分别用于提取、处理和数据存储。

经验3:使用设计模式

了解设计模式及其工作方式可以帮助你编写出更加结构化、更具可读性与可维护性的代码。如果你清楚在哪些情况下可以使用哪种设计模式,就不必非得自己想解决办法了,你只需遵循设计原则就可以保持代码的整洁。

不过要注意,不要过度使用设计模式,这是使用这种方法时最常见的陷阱。尽管在特定情况下可以使用设计模式,但过度使用设计模式对编写者来说有弊无利,它会使应用过度机械化,其他开发人员会很难理解代码。

经验4:代码规范

代码结构化在很大程度上与代码规范有关。对于每个项目来说,代码规范都是必要,如果没有代码规范,代码变得团团乱以至难以阅读是迟早的事。

我们可以列出代码规范清单,记录下声明变量的方法、命名规范等。你可以无限向列表中添加规则,规则的数量也是可以变化的,只列出对你和对你的团队有帮助的规则便可。团队成员也可以随时向规范列表中添加或移除规则。

制定好规范清单后,就坚持照做吧!

经验5:编写单元测试

编写单元测试能产生不错的预期外的效果,它让你必须对代码进行结构化处理。为了能够编写出单元测试,至少要保证代码的结构是正确的。

也许你以前听说过或者编写过不可测试代码,如果有哪段代码让你不知道该如何编写单元测试的话,可能是因为这段代码功能过多,或者写得太差。

不管是上述两种情况的哪一种,只有一个原因会导致代码无法测试,那就是糟糕的结构。遇到不可测试的代码时,你会发现自己大部分时间都用在了重构上。单元测试便可以作为一种限制,使你必须将代码进行结构化处理。

实现代码结构化有好些方式。在你键入第一个代码字母之前就开始了,包括提前考虑应用程序的设计、创建帮助编写者消除明显缺陷的UML图等。

只要你准备编写代码,就应该确保拥有一份可以遵守的代码规范表。学习使用设计模式也可以进一步帮你实现这个目标。同时,你还需保持类与函数单位较小,并且让这些类与函数只做一件事。最后,要养成编写单元测试的习惯,不这样做最终只会得到一堆不可测试的代码。

要更认真地对待代码结构化了!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 编程
    +关注

    关注

    88

    文章

    3438

    浏览量

    92320
  • 源代码
    +关注

    关注

    94

    文章

    2923

    浏览量

    66047
  • 结构化
    +关注

    关注

    0

    文章

    26

    浏览量

    10264
收藏 人收藏

    评论

    相关推荐

    什么是结构化网络布线?结构化网络布线有哪些好处?

    在电缆领域,结构化网络布线这个术语经常被提及。人们将其用作流行语,但它的真正含义是什么?结构化布线到底是什么? 为了了解真正的含义,让我们看它的一些相关定义。 根据光纤协会的说法,结构化布线
    的头像 发表于 04-11 11:54 151次阅读

    结构化布线的好处多吗

    结构化布线是网络系统中的重要组成部分,因为它为数据传输提供了强大、可扩展且可靠的基础。通过遵守全球公认的标准,结构化布线可促进高速连接、简化故障排除并确保未来的可扩展性。考虑到这些优势,企业应优先
    的头像 发表于 04-07 11:15 124次阅读

    电路板设计:测试点的重要性

    电路板设计:测试点的重要性 对学电子的人来说,在电路板上设置测试点(test point)是再自然不过的事了。 有多少人没听说测试点?知道测试点但不了解测试点用途的人又有多少呢? 基本上设置测试点
    发表于 02-27 08:57

    磁环的检验方法有哪些?要如何使用?

    磁环的检验方法有哪些?要如何使用? 磁环的检验方法是确保磁环质量和性能的重要环节,常用于磁环的生产、质检和维护过程中。下面将详细介绍磁环的常见检验方法及其使用
    的头像 发表于 01-11 15:25 555次阅读

    CFD 设计利器:结构化和非结构化网格的组合使用

    在CFD的发展历史中,结构化网格出现最早,至今仍在使用。结构化网格有几个主要优点,如精度高、生成速度快、单元分布均匀。有些工具擅长绘制这类网格,例如CadenceFidelityAutomesh
    的头像 发表于 12-23 08:12 373次阅读
    CFD 设计利器:<b class='flag-5'>结构化</b>和非<b class='flag-5'>结构化</b>网格的组合使用

    对与性能比较低的51单片机,结构化编程性能提升多少?

    对与性能比较低的51单片机,结构化编程性能提升多少
    发表于 10-26 06:21

    Python中进行特征重要性分析的9个常用方法

    重要性分析可以识别并关注最具信息量的特征,从而带来以下几个优势: 改进的模型性能 减少过度拟合 更快的训练和推理 增强的可解释性 下面我们深入了解在Python中的一些特性重要性分析的方法。 特征
    的头像 发表于 10-16 11:09 336次阅读
    Python中进行特征<b class='flag-5'>重要性</b>分析的9个常用<b class='flag-5'>方法</b>

    一种结构化道路环境中的视觉导航系统详解

    根据结构化道路环境的特点提出了一种将边沿检测和道路环境知识相结合的机器视觉算法 , 并结合基于行为响应的路径规划方法和智能预瞄控制方法 , 实现了一套基本的机器人视觉导航系统 . 在自主机器人实验
    发表于 09-25 07:23

    电源设计的重要性

    电源是最容易被忽视的,电源是系统运行的重要组成部分,电源就像“人体的心脏”,为系统的硬件输送血液(电),要是心脏(电源)运行不正常或供血(电)不足,会导致系统不运行或运行不稳定,在设计之前应该对核心
    发表于 09-08 14:43

    基于存储体系结构重要性

    电子发烧友网站提供《基于存储体系结构重要性.pdf》资料免费下载
    发表于 08-30 17:20 0次下载
    基于存储体系<b class='flag-5'>结构</b>的<b class='flag-5'>重要性</b>

    软件代码结构化覆盖测试-语句覆盖

    本篇将深入到代码层面,讲解单元测试中的一项重要工作-软件代码测试。
    的头像 发表于 08-25 11:50 381次阅读
    软件<b class='flag-5'>代码</b><b class='flag-5'>结构化</b>覆盖测试-语句覆盖

    射频芯片测试的重要性方法

    也显得尤为重要。下面将探讨射频芯片测试的重要性以及常用的测试方法。 首先,了解射频芯片测试的重要性是必要的。射频芯片的设计和制造中,可能会出现很多因素导致性能不稳定、工作不正常的问题。
    的头像 发表于 06-29 10:01 1242次阅读

    PCB印刷电路板打样的重要性

    PCB印刷电路板打样的重要性 PCB印刷电路板几乎是我们日常生活中使用的所有电子设备的重要组成部分。作为如此重要的组件,大多数原始设备厂商需要精密的PCB设计和制造,这是因为它们在应用程序中使用时
    发表于 06-07 16:37

    关于PCBA元器件布局的重要性

    重要性 以上分享了很多关于器件布局不当,而引发的生产问题,下面分享一个可以一键解决这些问题的工具:华秋DFM软件,可以提前检测元器件布局的安全间距,避免存在可组装性问题。 华秋DFM的组装分析功能
    发表于 05-22 10:34

    KUKA机器人-结构化机器人程序V5.9

    机器人程序的结构是体现其使用价值的一个十分重要的因数。程序结构化越规范,程序就越易于理解、执行效果越好、越便于读取、越经济。为了使程序得到结构化设计,可以使用以下技巧
    的头像 发表于 05-10 11:45 729次阅读
    KUKA机器人-<b class='flag-5'>结构化</b>机器人程序V5.9