摘要:
HTTP调用:超时、重试、并发 需要考虑的三点: 首先,框架设置的默认超时是否合理; 其次,考虑到网络的不稳定,超时后的请求重试是一个不错的选择,但需要考虑服务端接口的幂等性设计是否允许我们重试; 最后,需要考虑框架是否会像浏览器那样限制并发连接数,以免在服务并发很大的情况下,HTTP 调用的并发数 阅读全文
摘要:
第一讲:使用并发工具库类,建议 容易犯的四类错: 只知道使用并发工具,但并不清楚当前线程的来龙去脉,解决多线程问题却不了解线程;--错误 误以为使用了并发工具就可以解决一切线程安全问题,期望通过把线程不安全的类替换为线程安全的类来一键解决问题。--错误 没有充分了解并发工具的特性,还是按照老方式使用 阅读全文
摘要:
1- 命名 坏味道: 命名过于宽泛,不能精确描述;一个好的名字应该描述意图,而非细节; 有技术术语命名: 违反英文语法规则的命名; 不准确的英语词汇; 英语单词拼写错误; 总结: 用业务语言写代码 2- 重复代码 3- 长函数 CheckStyle配置函数方法的长度是20行 <module name 阅读全文
摘要:
1- 安装colima 略 2- 启动colima colima start 3- 安装es docker run -d \ --name elasticsearch \ -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \ -e "discovery.type=single- 阅读全文
摘要:
安装参考教程: https://www.runoob.com/vue2/vue-install.html https://cn.vuejs.org/guide/introduction.html npm安装包下载太慢: http://nodejs.cn/download/ 修改npm下载镜像代理的命 阅读全文
摘要:
第11章 重构API11.1 将查询函数和修改函数分离(Separate Query from Modifier) 读写分离 11.2 函数参数化(Parameterize Function) 11.3 移除标记参数(Remove Flag Argument) 又名:以明确函数取代参数 11.4 保 阅读全文
摘要:
第10章 简化条件逻辑10.1 分解条件表达式(Decompose Conditional) 10.2 合并条件表达式(Consolidate Conditional Expression) 10.3 以卫语句取代嵌套条件表达式(Replace Nested Conditional with Gua 阅读全文
摘要:
第9章 重新组织数据 9.1 拆分变量(Split Variable) 动机:每个变量只承担一个责任。 9.2 字段改名(Rename Field) 9.3 以查询取代派生变量(Replace Derived Variable with Query) 查询方法代替临时变量 9.4 将引用对象改为值对 阅读全文
摘要:
第8章 搬移特性8.1 搬移函数(Move Function) 在对象之间搬移函数; 8.2 搬移字段(Move Field) 在对象之间搬移字段; 8.3 搬移语句到函数(Move Statements into Function) 动机:消除重复,如果我发现调用某个函数时,总有一些相同的代码也需 阅读全文
摘要:
第7章 封装7.1 封装记录(Encapsulate Record) 曾用名:以数据类取代记录; 做法:1- 对持有记录的变量使用封装变量,将其封装到一个函数中。 记得为这个函数取一个容易搜索的名字。 2- 创建一个类,将记录包装起来,并将记录变量的值替换为该类的一个实例。然 后在类上定义一个访问函 阅读全文