`
he_wen
  • 浏览: 239387 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

代码质量保证

    博客分类:
  • Java
 
阅读更多

本文分为四节如:如何提高代码的可读性、一般异常的处理机制、JVM内存管理机制、并发控制

 

一、如何提高代码的可读性

最佳实践:

  • 看thinging in java和effective in java 感觉这两本书非常经典,尤其是第一本书需要反复的看几遍才能够理解里面的真谛,而第二本书主要是一些编程实践,可以在工作当中一天学习一两个法则,这个也非常关键
  • 内功练习好了,可以pratice,这个在工作中等项目快结束了,同事之间进行code review我感觉是对自己代码的提升非常大,因为几个人的思维视野可以指导你的坏代码。一定要互相code review哦。。。
  • 有时候代码的提升需要阅读别人的代码,不知道大家有没有发现对于优雅代码的理论知识已经足够了,但是自己写代码的时候为了赶工期或者是遇见复杂的业务,自己没有设计好,这样致使自己的代码很多if else,方法非常庞大或者是自己在开发当中碰到比较纠结的地方不知道如何处理。呵呵呵 自己是有这样的体会,如果有这样的情况,有这样的纠结,可以参见自己项目组中大牛的代码,看看人家对于复杂业务是如何设计代码的。比如说:自己遇见一个非常复杂的业务,该如何处理,可以考虑利用业务的规则引擎,将共有的抽象出来,利用模版模式和工厂模式解决这样复杂的业务场景。
  • 有一个特别重要的提升代码的能力,那就是jdk源代码;千万不要忘记这里的源代码,大家可以看看java.util.*,java.lang.*,java.io.*等等,即可以学习数据结构(java集合类),强烈推荐里面的底层是怎么实现。
  • 呵呵 说道这里可以推荐一个经典的开源框架spring,学习IOC和AOP的思想,还有里面经典的设计模式等等

                   还有其他的方法大家可以探讨哦。。。

 

二、一般异常的处理机制

 



 上面基本异常继承体系,下面对于异常应该尽量避免的几点:

 

  • 丢弃异常或者不处理又抛出异常
  • 异常处理忘记回收资源,比如:数据库链接、socket、IO等等
  • 不指定具体异常,即把所有的异常当作Exception做处理
  • 过于庞大的Try,这样会影响堆栈空间占用
  • 不处理自己能处理的异常,也就是在自己的业务层应该能处理的异常但是还是抛出给其他方法处理

下面是提倡异常处理的三个方法:

 

  • 提供完整的异常信息
  • 异常日志帮助分析问题但是利用开源包的时候一定要注意logger.isDebug方法使用能够提高性能
  • 不往外抛出异常

三、内存管理

 

下面是java堆的内层结构:

 



 下面对于堆的内层模型需要掌握到什么程度呢?

  1. 需要知道堆中内存各个区域,以及参数调整
  2. 几种GC算法,每种GC算法使用的场景是最好的
  3. 自己写程序,让每个区域都OutOfMemoryError,如你会写让你的Perm直接OutOfMemory吗?以及其他空间OutOFMemoryError吗?
  4. 你会写让你的java对象永远存放在你的so或者s1区域吗?
  5. 自动调节停留s0或s1区域的次数
  6. 如何让你的java对象发生小GC的时候,就复制到Old区域吗?等等里面的水很深的哦

 

  • 大小: 59.9 KB
  • 大小: 29.9 KB
0
2
分享到:
评论
3 楼 he_wen 2011-12-03  
大家对于代码的美观和性能同时看中,有什么好的意见可以提
2 楼 xcc8828 2011-12-03  
亲爱滴,我来视察了
1 楼 he_wen 2011-10-29  
怎么恢复的问题看不到啊

相关推荐

    MATLAB代码质量保证与测试方法.docx

    本文主要探讨了如何在 MATLAB 中实施代码质量保证和测试方法,以提高代码的正确性、可读性和维护性。 首先,规范性编码是保证代码质量的基础。这包括使用有意义的变量和函数名,增加注释以解释代码的功能和目的,...

    汽车之家-张俊-构建闭环的静态代码质量保证体系.pdf

    汽车之家-张俊-构建闭环的静态代码质量保证体系

    FPGA图像去雾算法 基于FPGA的图像去雾算法,提供完整的仿真测试和matlab生成显示图片的代码,代码质量保证

    FPGA图像去雾算法 基于FPGA的图像去雾算法,提供完整的仿真测试和matlab生成显示图片的代码,代码质量保证

    编程规范与范例(PDF)

    代码质量保证优先原则(1)正确性,指程序要实现设计要求的功能。(2)稳定性、安全性,指程序稳定、可靠、安全。(3)可测试性,指程序要具有良好的可测试性。(4)规范/可读性,指程序书写风格、命名规则等要符合...

    提高代码质量(Java篇).pptx

    提高代码质量(Java篇) 本资源摘要信息关注提高代码质量,主要涵盖编码规范、静态代码分析、单元测试、代码评审和重构、持续集成等方面。 一、编码规范 编码规范是提高代码质量的基础。编码规范主要包含以下几个...

    软件质量保证与测试.pdf

    结合上述知识点,我们可以看到,在软件开发过程中,项目管理工具、敏捷开发模式、单元测试、测试用例设计、代码质量保证以及文档撰写是保证软件质量的关键要素。通过这些技术和管理活动的综合运用,可以提高软件开发...

    追求代码质量:不要被覆盖报告所迷惑

    这篇文章旨在揭示代码质量保证中的误解,提供关于如何有效地使用这些工具的见解。 测试覆盖度量工具,如Cobertura、Emma和Clover,常用于跟踪单元测试对代码的执行情况,提供行覆盖和分支覆盖等指标。行覆盖计算被...

    代码质量管理资料 包

    它包括走查(代码浏览)和审查(正式的文档化过程),是保证代码质量的重要手段。 2. **单元测试**:单元测试是对软件中的最小可测试单元进行检查,例如函数、方法或类。通过编写自动化测试用例,确保每个单元的...

    软件开发与代码质量-ppt

    通过"软件开发与代码质量.pdf"这份资料,读者将能够深入理解软件开发中的各个关键环节,掌握如何在实际操作中提升项目效率,保证代码质量,并推动团队的持续成长。同时,对知识管理的重视也将帮助组织建立起强大的...

    java代码质量控制

    Java代码质量控制是软件开发过程中不可或缺的一环,它关乎到代码的可读性、可维护性、性能以及潜在的bug预防。本篇将详细介绍几种常用的代码质量控制工具,包括它们的功能、用途以及如何使用。 首先,我们需要理解...

    grunt-optimized-build-example:了解如何更快地执行Grunt任务,以及如何使用优化的资产和代码质量保证工具来完善成熟的前端构建过程

    Grunt优化的构建示例自动加载Grunt任务并行执行Grunt任务优化和缩小资产代码质量保证在本示例中,我将分享我的经验,如何通过自动加载Grunt任务来加快构建过程并尽可能并行化。 我向您展示了如何使用优化的资产来...

    套路拆解:大厂是如何保证代码质量的!

    套路拆解_大厂是如何保证代码质量的!

    软件开发过程与质量保证软件实现.pptx

    在软件开发过程中,质量...总之,软件实现阶段不仅涉及代码编写,还包括代码质量保证、团队协作和测试等多个方面。遵循良好的编程规范,选择适当的编程语言,以及持续的测试和改进,都是确保软件质量和效率的重要环节。

    提高程序员面试代码质量

    "提高程序员面试代码质量" 程序员在职业生涯中难免要接受编程面试。有些程序员由于平时没有养成良好的编程习惯,在面试时写出的代码质量不高,最终遗憾地与心仪的公司和职位失之交臂。因此,如何在面试时能写出高...

    敏捷高质量编程

    8. 敏捷开发中Java代码质量保证的五个步骤: - 统一编码规范、代码样式,确保项目的编码风格一致性。 - 利用静态代码分析工具提前发现并解决潜在代码问题。 - 实施单元测试,确保代码改动后功能正确无误。 - ...

    java静态代码分析插件checkstyle的应用

    此外,Checkstyle还可以与其他静态代码分析工具(如PMD、FindBugs)结合使用,提供更全面的代码质量保证。 在大型项目中,Checkstyle的应用可以显著提高代码质量和团队协作效率。它不仅减少了代码审查的工作量,...

    一堂如何提高代码质量的培训课(2)

    首先,源码管理是保证代码质量的基础。源码控制工具如Git是现代开发中的必备利器,它允许团队成员协同工作,追踪代码变更,以及回溯到历史版本。良好的源码组织结构和命名规范也是关键,如采用模块化或面向对象的...

Global site tag (gtag.js) - Google Analytics