程序设计原则——优化程序
1.类的设计和接口
类的设计好坏可以从一些方面看出,比如:能否方便地添加新的接口,维护是否简单。
如果说一个程序能用,但是要添加新功能时就很困难,甚至需要把整个程序重写,那么它在设计时肯定出现了问题。
2.消除代码复制
代码复制的情况下,如果程序员想要改变一处地方,那它复制或被复制的地方就要进行修改,否则就存在不一致的问题。这增加了维护程序员的工作量,而且存在造成错误的潜在危险。
解决方案:函数和父类。
3.封装,低耦合
耦合和聚合可以反应一个类设计的好坏。
耦合这个词指的是类和类之间的联系,而耦合度反映了这些类联系的紧密度。
耦合度决定了 修改应用程序的容易程度。低的耦合度使我们要追求的,因为如果类间的联系过于紧密,当程序员想要对一个类的修改也会导致对其他一些类的修改。
程序设计原则——优化程序相关推荐
- 程序设计原则(总结)
程序设计原则(总结) (一)结构化程序设计的主要原则 1.自顶向下 程序设计时,应先考虑总体,后考虑细节:先考虑全局目标,后考虑局部目标.不要一开始就过多追求众多的细节,先从最上层总目标开始设计,逐步 ...
- 性能之巅:定位和优化程序CPU、内存、IO瓶颈
摘要:性能优化指在不影响系统运行正确性的前提下,使之运行得更快,完成特定功能所需的时间更短,或拥有更强大的服务能力. #一.思维导图 #二.什么是性能优化? 性能优化指在不影响系统运行正确性的前提下, ...
- 44 面向对象程序设计原则
问题: 面向对象程序设计原则有哪些? 答案: (1)单一职责原则(Single Responsibility Principle):如果一个类有多于一个的动机被改变,那么这个类就具有多于一个的职责.而 ...
- Epigentek染色质可及性检测试剂盒原则与程序
艾美捷Epigentek EpiQuik™ 染色质可及性检测试剂盒是一套完整的优化试剂,旨在通过实时 PCR 对各种生物样品的核小体/转录因子定位进行染色质可及性的基因特异性分析.它是快速检测开放和封 ...
- 凸优化 机器学习 深度学习_我应该在机器学习项目中使用哪个优化程序
凸优化 机器学习 深度学习 This article provides a summary of popular optimizers used in computer vision, natural ...
- matlab拓扑优化流程图,Sigmund的99行Matlab拓扑优化程序简析
引言 Sigmund在2001年在Structural and Multidisciplinary Optimization 上发表一篇名为 "A 99 line topology opti ...
- Sigmund的99行Matlab拓扑优化程序简析
引言 Sigmund在2001年在Structural and Multidisciplinary Optimization 发表一篇名为 "A 99 line topology optim ...
- 面向对象的程序设计原则之SOLID原则
Ò程序设计领域, SOLID (单一功能.开闭原则.里氏替换.接口隔离以及依赖反转)是由罗伯特•C•马丁在21世纪早期 引入的记忆术首字母缩略字,指代了面向对象编程和面向对象设计的五个基本原则.当这些 ...
- 程序设计原则之接口隔离原则
一.什么是接口隔离原则 尽量使用多个专有接口,而不是使用单一的总接口,客户端不应该依赖它不要的接口方法 但是接口数量也不能过多,要适量,否则会增加程序设计的复杂性 二.一个单一总接口的例子 其类图如下 ...
最新文章
- VMWare不能安装64位操作系统原因探析
- 论记笔记的重要性:以三个电影为例
- 【数据库系统概论】考研第三部分重点分析【3.1】
- 钉钉轻松顶住信息洪流的原因,竟然是它
- 基于JAVA+Swing+MYSQL的超市管理系统
- 我的奇思妙想机器人消防员_【小作家专栏】我的奇思妙想(三)
- 【UVA10562】Undraw the Trees(括号表示法输出树+fegts读取)
- mysql改根用户_MySQL数据库中复位根用户密码的方法 | 很文博客
- 数字集群通信的业务与功能
- 隐藏Ubuntu 18.04 顶部通知栏( hide top bar)
- #torch.bmm()函数解读
- python 将列表中的英文或者拼音转换为中文
- 指定JDK运行Jar包
- Java提取URL某个参数的值
- Matlab函数功能学习记录(1)
- 腾讯云添加添加二级域名
- 文献 | 你的狗狗是否也很擅长“察言观色”?
- 链表的定义及使用 综合实战:超市购物车
- Vcc、Vee、Vdd、Vss傻傻分不清楚?
- http_build_query或者拼接链接等方式中timestamp变成×tamp问题
热门文章
- NYOJ 409 郁闷的C小加(三)
- k8s通过label来控制pod的位置
- PCL已有点类型介绍和增加自定义的点类型
- XML学习笔记(二)-- DTD格式规范
- C# WinForm 添加Windows Media Player 控件调试出现未能加载文件或程序集Interop.WMPLib,该怎么解决...
- 结对项目——电梯调度算法的实现和测试
- Squid 代理服务器 编译源码 伪造HTTP_X_FORWARDED_FOR 请求头
- ThinkPHP采用模块和操作
- 线程的状态、进程的状态
- 一些琐碎+分不清的知识点