Duplicated Code(重复代码) 如果你在一个以上的地点看到相同的程序结构,那么可以肯定:设法将它们合而为一,程序会变得更好。 场景1:同一个类中,两个函数含有相同...
Duplicated Code(重复代码) 如果你在一个以上的地点看到相同的程序结构,那么可以肯定:设法将它们合而为一,程序会变得更好。 场景1:同一个类中,两个函数含有相同...
ThreadLocal是一个线程内部的数据存储类,通过它可以在同一个线程内共享数据。 ThreadLocal原理 代码分析 从demo说起 根据上面的demo代码,我们就从g...
缘起Sonar-lint 事情起因于公司要求对代码质量的提升,所以在代码提交到git仓库之前,首先要使用Sonar-lint来扫描一下代码,将比较严重的问题修改之后才能提交到...
设计原则 单一职责原则 一个类只负责一个功能领域中的相应职责,或者可以定义为:就一个类而言,应该只有一个引起它变化的原因。 单一职责原则是实现高内聚、低耦合的指导方针。 开闭...
常见的互联网分布式系统架构分几层,一般如下: 客户端层:比如用户浏览器,APP端 反向代理层:技术选型Nginx或者F5等 Web层:前后端分离场景下,Web端可以用Node...
数据可靠性 Producer往Broker发送消息 为了让用户设置数据可靠性,kafka在Producer里面体用了消息确认机制。也就是说我们可以通过配置来决定有几个副本收到...
基础概念 Topic 一个topic相当于一个数据库中的表,同一类数据“存储”在一个topic中。topic只是一个逻辑概念,具体数据存储在partition中。 Parti...
类加载机制虚拟机把class文件加载到内存,并对数据进行校验,转换解析和初始化,形成可以被虚拟机直接使用的java类型,即java.lang.Class 1. 装载(Load...
一个思考框架包括三个问题: Where are we?(我们现在在哪?) Where are we going?(我们要到哪儿去?) How can we get there...
10X程序员工作法 四个思考原则 为什么要做这个特性,它会个用户带来怎样的价值? 什么样的用户会用到这个特性,他们在什么场景下使用,他们又会怎样使用它? 达成这个目的是否有其...
https://mp.weixin.qq.com/s?__biz=Mzg2OTA0Njk0OA==&mid=2247484877&idx=1&sn=f54d41b68f0cd...
https://mp.weixin.qq.com/s?__biz=Mzg2OTA0Njk0OA==&mid=2247485068&idx=1&sn=c37267fe59978...
并发三问题 重排序 内存可见性 原子性 1. 重排序 观察代码可以发现,如果没有意外情况发生的话,在上下两个线程中,出现的结果应该下面三种情况 x= 0 ,y = 1; x...
事务隔离级别 隔离级别脏读不可重复读幻读READ-UNCOMMITTED是是是READ-COMMITTED否是是REPEATABLE-READ否否是SERIALIZABLE否...
单元测试--Java 使用mockito+powermock进行java单元测试 实例 如下一个正常业务代码,接下来就对HelloController.say方法进行单元测试...