编程的基本原则-解耦

小谈
2023-01-30 / 3 评论 / 104 阅读 / 正在检测是否收录...

核心矛盾:设计时候的随意发挥没有限制的和修改运行时bug频出的矛盾
解决思路:出了bug能定位和解决,方便增加和修改功能


核心原则1:解耦

1)模块化

减少重复的代码,函数解决的问题更宽泛,一个问题或者一个功能只定义一个函数

2)层次化

MVC模式,TCP/IP,计算机都是典型的分层设计,定义好层次间的接口,每层做好自己的事

V:view 前端展示 语言:JS/Html/Css 前端框架:boostrap/vue/微信小程序 多端展示框架:uni-app
C:control,serverlet处理前端请求
M:model=server+Dao=业务逻辑+原子性的增查改删
注:server 常用接口
MVC.jpg

3)模式化

解耦.png

具体列子说明
面向对象编程的SOLID原则:
1.single responsibility 一个类只做一件事,只有一个原因修改它
2.Open-close 对扩展开发,对修改关闭,不需要修改现有类就可以新增加功能,通过接口控制所有类都有该方法
3.liskov replacement 里式替代 所有父类出现的地方,子类也能出现,子类重新继承方法输出数据类型一致
4.Interface Segregation Principle 接口隔离原则,类不应该实现它不用的接口,不应该依赖于他不使用的方法
5.Dependency Inversion Principle 依赖反转原则,它声明高层模块不能依赖于低层模块,但它们应该依赖于抽象,依赖于接口定义的规则,使得高层次的模块不依赖于低层次的模块的实现细节,依赖关系被颠倒(反转)。

核心原则2:可靠性

1.考虑所有情况,让方法更通用,适用更多情况,会更改的地方放在输入变量处
2.输入的异常,数据类型是否可能是string,1,300
3.输出的异常:查询时候会为空,会不会执行不成功
4.冗余设计,数据库备份,多个服务器,异地多活

核心原则3:性能优化

1.算法和数据结构的优化
2.异步,并发和多行程
3.缓存,cache, 客户端的缓存,数据库的缓存redis
4.负载均衡,多个服务器处理请求:round robin,least connection
5.内容分发服务,CDS

核心原则4:数据安全

1.用户权限,内部的数据安全
2.系统数据防止被外部窃取

0

评论 (3)

取消
  1. 头像
    发的撒
    Windows 10 · Google Chrome

    发的说法

    回复
  2. 头像
    知名5948
    Windows 10 · Google Chrome

    表评论5948

    回复
  3. 头像
    知名7277
    Windows 10 · Google Chrome

    表评论7277

    回复