首页 > 其他分享 >代码大全2 阅读笔记01

代码大全2 阅读笔记01

时间:2022-09-30 12:46:59浏览次数:59  
标签:01 错误 代码 笔记 参数 内聚性 异常 子程序 大全

第七章:高质量的子程序 1、为什么要创建子程序?         提高程序的可读性,减少以及隔离程序复杂度,提高代码复用率,在代码变更时减少带来的影响(功能变更,变更导致的测试),可移植性,方便后期优化,隐藏复杂逻辑结构等的实现细节...... 2、如何设计子程序?         保证子程序功能的内聚性,既一个子程序只完成一个功能。避免其它的内聚性,比如逻辑上的内聚性,顺序上的内聚性等。 3、什么是好的子程序名字?         能够描述子程序所做的事情,使用动宾结构,并且对返回值有所描述,比如checkOrderInfo,使用对仗词(比如get/set,create/destroy),一般命名长度为9~15个,在一个项目里最好给一些通用的操作确立命名规则(比如创建、更新记录时),避免模糊命名(比如detail); 4、子程序可以多长?         考虑事项:子程序的功能的内聚性,嵌套的层次,变量的数量,决策点的数量等;         研究表明应该一般不超过200行, 5、如何使用子程序参数?         按照输入、修改、输出的顺序排列参数;         如果几个程序都用了类似的一些参数,应该让这些参数的排练顺序保持一致;         不要把子程序的输入参数用作工作变量,工作变量最好在子程序中创建,保证参数尽量不被改变;         把子程序的参数个数限制在大约7个以内,且保证每一个参数都被用到;         为子程序传递用以维持其借口抽象的变量或对象,传递给子程序什么类型的参数,应该为对子程序而言,哪种方式对子程序更方便;                 第八章:防御式编程 1、什么是防御式编程?为什么需要?         防御式编程不是指不让别人批评你的代码,而是指确保你要承担的责任,保证你的方法不会因为传入错误数据而破坏,看似微小的防范,收益可能大于你的想象,能够让错误更容易发现,修改,并减少对已经编写代码的修改 2、如何使用防御式编程?         在开发阶段,建议不从产品角度考虑,建议让错误暴露的越明显越好,能更快的排查错误;在产品上线时,防御式编程的代码可能影响性能以及体验,需要适当修改,但是需要根据场景考虑,比如银行设备以及普通网站,不同产品,错误处理方式不一样;         隔离程序与参数,即对参数进行验证,使之能包容错误造成的损害,并进行适当处理; 3、如何对错误进行处理?处理的方式         需要根据实际场景,程序是更需要健壮性还是正确性,一般普通的消费产品更倾向于健壮性,但和数据相关,则更倾向于正确性;建议在架构设计上就决定好如何处理错误,是异常还是其他的方式。 4、关于异常         避免在构造和析构函数中使用异常;考虑创建一个集中的方式处理异常,能够为一些与异常有关的信息提供集中的存储;把项目中对异常的使用标准化,考虑创建抛出异常的基类,这样就能把记录日志、报告错误等操作集中起来并标准化;不滥用异常,应该在异常和其他错误处理手段进行权衡,如果某些错误能局部处理,那就局部处理它;

标签:01,错误,代码,笔记,参数,内聚性,异常,子程序,大全
From: https://www.cnblogs.com/pengsuoqun123/p/16744547.html

相关文章

  • 程序员修炼之道+从小工到专家阅读笔记01
    作者在第一章讲述了注重实效应有的思想,如何成为一个注重实效的程序员。注重实效的程序员会有考虑大局的思想,他们谦虚敢于承认错误,敢于负责任。作者用一句“我的源码让猫给......
  • 《代码大全2》(1)
    《代码大全》看完前面觉得有很多值得回味的地方,而且每部分之后作者还推荐了不少经典书籍。本书的思想管理软件项目的本质是管理复杂性。代码承载的是人与人之间的交流。在......
  • EN 892:2012+A1:2016亚马逊登山绳安全要求
    攀岩绳是与攀岩安全带和锚点(例如:墙壁、岩壁或山壁)相连的一件器械。攀岩绳用于防止攀岩者坠落。攀岩绳通常由长捻纤维芯和编织彩色纤维外护套组成。产品示例亚马逊美国站安......
  • 程序员修炼之道:从小工到专家读书笔记
    注重实效的哲学   注重实效的程序员对他的职业生涯负责,并且不害怕承认无知或错误,如果你确实同意要为某个结果负责,你就应切实负起责任。当你犯错误、或者判断失误时,诚实......
  • 【尚硅谷】Vue2.x组件化编码学习笔记--渐进式的JS框架
    Vue组件化编码​​一、使用Vue-cli创建项目​​​​1.1说明​​​​1.2创建Vue项目​​​​1.2.1如何修改端口以及自动运行​​​​1.3Vue-cli创建的项目的目录结构​​......
  • JavaWeb基础day01_XML
    一、XMLXML文件的默认打开方式是浏览器xml:是可扩展的标记语言ExtensibleMarkupLanguage。以一种标签语言与HTML类似1、xml的作用编写配置文件:C3P0编写XML配置文件做数据......
  • 【Kubernetes】K8s笔记(四):从 Job 和 CronJob 看 Kubernetes 的设计理念
    0.前言:在线业务和离线业务Kubernetes的业务可以分为两大类:在线业务和离线业务。在线业务:像Nginx、MySQL这样长时间运行的业务,这些应用一旦运行起来,除非出错或者停......
  • 懒人IDEA 常用快捷键大全
    查找类的快捷键双击Shift:查找任何内容Ctrl+F:在当前文件夹中查找Ctrl+Shift+F:在项目或指定窗口中查找Ctrl+N:在项目中查找类Ctrl+Shift+N:查找文件Ctrl+R:在当前文件中文本替换C......
  • 《程序员修炼之道:从小工到专家》阅读笔记2
    依据你的职业发展、你的项目和你每天的工作,为你自己和你的行为负责这样-种观念,是注重实效的哲学的一块基石。注重实效的程序员对他或她自己的职业生涯负责,并且不害怕承认无......
  • Pycharm-001-Pycharm一些设置
    1、设置滚轮滑动变大字体File—>setting—>Keymap—>IncreaseFontSize(双击)—>在弹出的对话框中选择AddMouseShortcut  出现上述窗口,按住ctrl+滑轮上滑2......