编写高质量可维护的代码既是程序员的基本修养,也是能决定项目成败的关键因素,本文试图总结出问题项目普遍存在的共性问题,并给出相应的解决方案。 程序员的宿命? 程序员的职业生涯中难免遇到烂项目,有些项目是你加入时已经烂了,有些是自己从头开始亲手做成了烂项目,有些是从里到外的烂,有些是表面光鲜等你深入进去 ...
分类:
其他好文 时间:
2020-05-16 15:12:25
阅读次数:
75
模式设计的对象: 1、客户角色:发出一个具体的命令并确定其接受者。 2、命令角色:声明了一个给所有具体命令类实现的抽象接口 3、具体命令角色:定义了一个接受者和行为的弱耦合,负责调用接受者的相应方法。 4、请求者角色:负责调用命令对象执行命令。 5、接受者角色:负责具体行为的执行。 1 using ...
1 abstract class Person { 2 public abstract void eat(); 3 } 4 5 public class Demo { 6 public static void main(String[] args) { 7 Person p = new Person ...
分类:
编程语言 时间:
2020-05-16 12:28:31
阅读次数:
68
什么是组件 组件化就好像我们的电脑装机一样,一个电脑由显示器、主板、内存、显卡、硬盘,键盘,鼠标...。 组件化开发有如下的好处:降低整个系统的耦合度,在保持接口不变的情况下,我们可以替换不同的组件快速完成需求。例如输入框,可以替换为日历、时间、范围等组件作具体的实现。调试方便,由于整个系统是通过组 ...
分类:
其他好文 时间:
2020-05-15 23:01:07
阅读次数:
115
1.数据库架构演变 DAL是数据访问层的英文缩写,即为数据访问层(Data Access Layer)。其功能主要是负责数据库的访问。 在项目实际开发过程,有的直接采用JDBC技术进行数据库持久化操作,有的采用目前很好用的ORM框架来进行数据库持久化操作。 ORM耦合度较高 mysql 单表可支持5 ...
分类:
其他好文 时间:
2020-05-15 21:46:39
阅读次数:
80
Mybatis是一个持久层连接数据库的框架,之前使用jdbc时java代码和sql融合到一块,造成代码的冗余和耦合度比较高 Mybatis专门管理数据库的连接,自动整合数据,实现了sql和java分离 Mybatis使用方法,crud 多参数传递 对象和map传参 用#{属性名}获取#{键名} 多个 ...
分类:
其他好文 时间:
2020-05-15 20:22:32
阅读次数:
65
AG7111特征?单电源3.15V~5.5V支持交流耦合和直流耦合输入支持HDMI、DVI和显示端口输入兼容HDMI1.4b规范兼容DisplayPort版本为1.1双模标准最大吞吐量高达3.4Gbps/车道(总计10.2Gbps)最大像素时钟速率高达340MHz支持4K2K@30Hz分辨率支持深色技术嵌入RC以排除外部晶体嵌入5V至3.3V/1.2V调节器每一个高速度信号输入时集成50欧姆终端电
分类:
其他好文 时间:
2020-05-15 11:38:51
阅读次数:
170
ServiceMesh技术演进之路有一篇非常著名的文章叫《ServichMesh模式》它详细的介绍了它如何从最初的原始的状态一步一步的演进成现在的这种形态的,我们对网络控制相关的逻辑是没有一个清晰的概念,通常都是通过突发问题的解决,来引入相关的控制逻辑,来看下面这张图第一阶段:控制逻辑和业务逻辑耦合在这张图上服务A它的业务逻辑和下面的两个流控相关的逻辑是耦合在一起的,也就是熔断和服务发现,这种模式
分类:
其他好文 时间:
2020-05-15 09:32:46
阅读次数:
58
不断提高代码质量 从大的方面来讲,可以从这几个方面,不断提高自己的编程能力: 1、编码之前需要做一定的设计,主要考虑:耦合度,拓展性,复用度 2、熟悉类库,熟悉API,避免自己造轮子 3、阅读优秀源码并加以实践 4、参考一些已有的最佳实践,代码片段,但是避免复制粘贴 5、多考虑一些细节、边界、异常场 ...
分类:
编程语言 时间:
2020-05-14 19:13:07
阅读次数:
86
控制反转(Ioc) Ioc不是一种实实在在的技术,只是一种设计思想。 面向对象编程中,对象之间不可避免且必要地存在着耦合,但过度耦合会导致代码难以维护。 一般来说,当一个对象需要获取另一个对象,他就需要在自身的代码中显式地实例化一个该对象,比如 Object object = new Object( ...
分类:
其他好文 时间:
2020-05-14 17:43:07
阅读次数:
64