随笔分类 - 重构
摘要:前言 接口性能优化对于从事后端开发的同学来说,肯定再熟悉不过了,因为它是一个跟开发语言无关的公共问题。 该问题说简单也简单,说复杂也复杂。 有时候,只需加个索引就能解决问题。 有时候,需要做代码重构。 有时候,需要增加缓存。 有时候,需要引入一些中间件,比如mq。 有时候,需要需要分库分表。 有时候
阅读全文
摘要:0.前言 本篇文章是<<代码整洁之道>>的学习总结, 通过这篇文章你将了解到整洁的代码对项目、公司和你的重要性,以及如何书写整洁的代码. 通过命名、类、函数、测试这四个章节,使我们的代码变得整洁. 1.为什么要保持代码整洁? 不整洁的代码随着时间的增加而增加时,生产力会随之降低. 导致的结果就是:
阅读全文
摘要:点击关注公众号:互联网架构师,后台回复 2T获取2TB学习资源! 上一篇:Alibaba开源内网高并发编程手册.pdf 一、背景 针对老项目,去年做了许多降本增效的事情,其中发现最多的就是接口耗时过长的问题,就集中搞了一次接口性能优化。本文将给小伙伴们分享一下接口优化的通用方案。 二、接口优化方案总
阅读全文
摘要:前言 本篇分析的技巧点其实是比较常见的,但是最近的几次的代码评审还是发现有不少兄弟没注意到。 所以还是想拿出来说下。 正文 是个什么场景呢? 就是 for循环 里面还有 for循环, 然后做一些数据匹配、处理 这种场景。 我们结合实例代码来看看。 场景示例: 比如我们现在拿到两个list 数据 ,
阅读全文
摘要:每次聊到代码优化,都会有很多人说理论、架构、核心思路,其实我觉得代码优化这事说简单了很简单,说复杂了吧它也有一定的难度,但是我觉得有一个良好的编码习惯很重要,下面分享一下14个springboot项目中优化代码的小技巧,让代码优化更容易,就像完成一件小事。 1. 定义配置文件信息 有时候我们为了统一
阅读全文
摘要:前言 之前分享一篇代码优化的文章:条件语句的多层嵌套问题优化,助你写出不让同事吐槽的代码! 今天再次分享一些我日常工作中常用的代码优化技巧,希望对大家有帮助! 文章首发在公众号(月伴飞鱼),之后同步到个人网站:xiaoflyfish.cn/ 觉得有收获,希望帮忙点赞,转发下哈,谢谢,谢谢 正文 类成
阅读全文
摘要:前言 最近在做代码重构,发现了很多代码的烂味道。其他的不多说,今天主要说说那些又臭又长的if...else要如何重构。 在介绍更更优雅的编程之前,让我们一起回顾一下,不好的if...else代码 最近无意间获得一份BAT大厂大佬写的刷题笔记,一下子打通了我的任督二脉,越来越觉得算法没有想象中那么难了
阅读全文
摘要:开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第4天,点击查看活动详情 🔽 前言 最近在网上冲浪时看到了这样一段代码: function getUserDescribe(name) { if (name "小刘") { console.log("刘哥哥"); } else i
阅读全文
摘要:前言 大家好,我是捡田螺的小男孩。 之前工作中,遇到一个504超时问题。原因是因为接口耗时过长,超过nginx配置的10秒。然后 真枪实弹搞了一次接口性能优化,最后接口从11.3s降为170ms。本文将跟小伙伴们分享接口优化的一些通用方案。 公众号:捡田螺的小男孩 github地址,感谢每颗star
阅读全文
摘要:今天来说说程序员小猿和产品就关于需求发生的故事。前不久,小猿收到了产品的需求。 产品经理:小猿,为了迎合大众屌丝用户的口味,我们要放一张图,要露点的。 小猿:......露点?你大爷的,让身为正义与纯洁化身的我做这种需求,还露点。 产品经理:误会误会,是放一张暴露一点点的,尺寸不大。 小猿:尼玛~能
阅读全文
摘要:责任链模式,简而言之,就是将多个操作组装成一条链路进行处理。请求在链路上传递,链路上的每一个节点就是一个处理器,每个处理器都可以对请求进行处理,或者传递给链路上的下一个处理器处理。 文章首发公众号:码猿技术专栏;作者:不才陈某 应用场景 责任链模式的应用场景,在实际工作中,通常有如下两种应用场景。
阅读全文
摘要:一、介绍一说起策略设计模式,相比大家都不陌生,在实际的业务开发中,合理的使用设计模式来编程,可以让代码阅读起来层次感更强,同时扩展性也会得到提升!最近看同事的代码时候,学到了一个小技巧,在某些场景下合理的使用策略模式还是非常有用的,在此分享一下给大家。二、代码实践在介绍 SpringBoot 中如何
阅读全文
摘要:技巧一:提取方法,拆分逻辑 技巧二:分支逻辑提前return 技巧三:枚举 技巧四:函数式接口 技巧五:设计模式 其他技巧 写在最后 在实际的业务开发当中,经常会遇到复杂的业务逻辑,可能部分同学实现出来的代码并没有什么问题,但是代码的可读性很差。 本篇文章主要总结一下自己在实际开发中如何避免大面积的
阅读全文
摘要:业务同学抱怨业务开发没有技术含量,用不到设计模式、Java 高级特性、OOP,平时写代码都在堆 CRUD,个人成长无从谈起。 其实,我认为不是这样的。设计模式、OOP 是前辈们在大型项目中积累下来的经验,通过这些方法论来改善大型项目的可维护性。反射、注解、泛型等高级特性在框架中大量使用的原因是,框架
阅读全文
摘要:程序员路人 专注Java相关技术:SSM、Spring全家桶、微服务、MySQL、MyCat、集群、分布式、中间件、Linux、网络、多线程,偶尔讲点运维Jenkins、Nexus、Docker、ELK,偶尔分享些技术干货,致力于Java全栈开发! 1篇原创内容 --> 公众号 强烈推荐阅读:到底如
阅读全文
摘要:1 复杂、繁杂、庞杂 在开发工作中我们经常会听到:这个业务很复杂,这个系统很复杂,这个逻辑很复杂,只要是处理遇到困难的场景,似乎都可以使用复杂这个词进行描述。 但是我认为困难之所以困难,原因还是有所不同的,不能用复杂这个词笼而统之,有加以区分的必要。大体上我认为可以分为复杂、繁杂、庞杂三个类型。 复
阅读全文