`

能使用简单类型达到目的的地方绝不使用复杂类型

    博客分类:
  • Java
 
阅读更多
以下都是偶们经理说滴~
Long是java实现的复杂类型,long是java虚拟机提供的原始类型。 任何Long类型的比较和运算实际上都要经过拆箱转换成原始类型方能进行,而long类型的运算是直接经过寄存器,运算速度是Long的十几倍甚至是几十倍(参看我写的一个简单的对比测试:com.everbridge.platform.dashboard.test.FunnyTest)。
    所以,很多java专家的意见都是,能使用简单类型达到目的的地方绝不使用复杂类型。其实,这也是我们编程需要遵行的原则,尽量用简单,可复用的方法解决问题,避免过度设计
    遗憾的是,咱们现在的代码里面无论是前端还是后端都有很多绕弯的实现和逻辑。咱们开发已经进入bug fix的阶段,这是一个很好的改进代码,提高质量的机会,请大家在fix bug的时候,尝试以下几个步骤:

    碰到一个bug,不要急于修改,先整体思考一下之前的实现逻辑,是否可以截弯取直,化繁为简(比如,在咱们的service中,有许多的service接口实际上只是wrap了另外一个service的实现,没用任何必要,service的接口本来就是在controller层聚合使用的,wrap到一个service里面除了增加复杂性,貌似没有其它的任何好处)
    看看别人的代码里面有没有类似的场景,别人是如何处理的
    在想想bug里面提到的代码没有覆盖到的情况是否还有其它的可能性
    尽可能在修改bug时补一些之前没有的单元测试,保证对你的service接口进行单元测试
    清理你代码里面的垃圾,包括:无用变量声明,未用到却注入的依赖,不再使用的private方法等
    使用统一的模板格式化代码(参看:https://github.com/Everbridge/omnidocs/tree/master/platform-doc/codetemplate),干净清爽的代码会给你带来好的心情
    对于之前不好的实现,不一致的接口或者有歧义的接口予以重构并通过单元测试来保证修改的正确性


    我们的目的不是单纯的修改bug,而是扎实的提高代码质量,提高产品的稳定性,可用性和性能,最终给用户带来良好的体验。
分享到:
评论

相关推荐

    新建文本文档 (2).txt

    新建文本文档 (2).txt

    Another-Redis-Desktop-Manager.1.5.2.exe

    Another-Redis-Desktop-Manager.1.5.2.exe

    (23149420)STM32F407驱动LCD12864代码 LCD12864带中文字库

    这个程序是用于stm32F407 驱动 12864 LCD使用的,lcd是带有中文字库版本的lcd。 关于这份代码 请参考我的csdn博客 https://jeason.blog.csdn.net/article/details/99691445 有问题您可以在博客下留言,我会尽快回复您的。内容来源于网络分享,如有侵权请联系我删除。另外如果没有积分的同学需要下载,请私信我。

    白色大气风格的电影下载网站模板下载.zip

    白色大气风格的电影下载网站模板下载.zip

    VB+ACCESS超市管理系统设计(源代码+系统)(20245h).7z

    1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于计算机科学与技术等相关专业,更为适合;

    VB+ACCESS学生公寓管理系统(源代码+系统)(2024vq).7z

    1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于计算机科学与技术等相关专业,更为适合;

    AI8051U第五节 - GPIO中断源代码

    AI8051U第五节 - GPIO中断源代码

    码上抓小说:Python爬虫搞定顶点小说全攻略

    内容概要: 想要轻松获取顶点小说网站上的最新章节吗?本资源将手把手教你如何用Python编写爬虫,从顶点小说网站抓取你喜爱的小说数据。我们将一起学习如何搭建爬虫环境、发送网络请求、解析网页内容、提取有用信息,并将这些数据保存下来。无论是为了个人娱乐还是数据分析,这个教程都能帮到你。 适用人群: 编程新手:想要通过动手实践来学习Python的小伙伴们。 技术爱好者:对网络爬虫和数据抓取感兴趣的技术发烧友。 书迷朋友们:想要一键获取小说最新章节的阅读爱好者。 学习者和研究者:需要大量文本数据进行分析或学术研究的朋友们。 使用场景及目标: 个人娱乐:在休闲时间,通过编写爬虫来获取自己喜欢的小说,享受编程带来的乐趣。 数据收集:为数据分析、内容创作或学术研究自动收集顶点小说网站上的文本数据。 技术提升:通过实际项目提升自己的Python编程技能,特别是在网络爬虫领域。 教育学习:作为教学材料,帮助学生理解网络爬虫的工作原理和应用场景。 其他说明: 本教程适合所有对Python爬虫感兴趣的朋友,即使你是编程小白也不用担心,我们会从零开始,一步步带你入门。

    白色扁平风格的原创素材类企业网站源码下载.zip

    白色扁平风格的原创素材类企业网站源码下载.zip

    白色扁平化风格的滑雪运动体育项目模板.zip

    白色扁平化风格的滑雪运动体育项目模板.zip

    白色创意风格的房地产建筑整站网站源码下载.zip

    白色创意风格的房地产建筑整站网站源码下载.zip

    白色大气风格响应式个人主页博客网站模板.zip

    白色大气风格响应式个人主页博客网站模板.zip

    多元统计分析重点.docx

    多元统计分析重点.docx

    白色大气风格的汽车4s店模板下载.zip

    白色大气风格的汽车4s店模板下载.zip

    白色扁平化的牛排汉堡西餐厅企业网站模板.zip

    白色扁平化的牛排汉堡西餐厅企业网站模板.zip

    圣诞树html展示代码资料.zip

    圣诞树html圣诞树html展示代码资料.zip

    sealos离线安装k8s集群镜像-part1

    sealos离线安装k8s集群镜像-part1 包含镜像列表如下: sealos离线安装包:sealos_5.0.0_linux_arm64.tar.gz 网络通信组建件cni: cni-plugins-linux-arm64-v0.8.7.tgz 监控数据的聚合器组件: metrics-server.tar IP地址管理和网络隔离组件: flannel.tar CNI 通信组件:cilium.tar k8s打包部署组件:helm.tar

    (33587448)Java版 愤怒的小鸟开源游戏

    内容来源于网络分享,如有侵权请联系我删除。另外如果没有积分的同学需要下载,请私信我。

    白色简洁风格的博客论坛后台系统源码下载.zip

    白色简洁风格的博客论坛后台系统源码下载.zip

    HTML与CSS实现简单圣诞树网页

    内容概要:本文介绍了使用 HTML 和 CSS 创建一个简单的圣诞树网页的方法。文章提供了一段示例代码,利用定位、边框技巧构建了树的基本结构,并通过背景色、边框色等设置了节日气氛。通过嵌套元素和定位来布置装饰物,如星星和红色小球。 适用人群:适用于对 HTML 与 CSS 基础有所了解的初学者。 使用场景及目标:旨在为网站设计师或前端开发人员提供节日氛围的设计灵感,帮助其学会使用 HTML 和 CSS 进行基础图形和布局设计。 其他说明:示例代码可以作为起点,在实际应用中可以通过增加 CSS 动画、交互功能等方式来丰富和完善设计。此外,也鼓励开发者尝试不同的样式和技术,比如 Flexbox 或 Grid 布局,提高页面的适应性和美观度。

Global site tag (gtag.js) - Google Analytics