`
afinder
  • 浏览: 4954 次
  • 来自: 北京
社区版块
存档分类
最新评论

对于入门级别程序员如何避免bug

    博客分类:
  • bug
阅读更多
   好多刚刚工作一两年的朋友,最头疼的事情莫过于bug满天飞,测试小妹每天深情的呼唤你。
    其实,很多bug在写的时候,其实可以规避,于是我们谈谈几个常见的bug孵化器。

1.理所当然的认为前台传过来的值不会是错误的,后台没做进一步的检验。比如,我们写接口时,客户端,给我们传递的参数是数字。结果,由于客户端的数据初始化有问题,取数时,取了一个字母传递过来了,极其有可能导致我们服务器端出现类型转换异常的错误。

2.对异常处理不重视。很多时候,我们的程序运行时,突然就出现了500错误,我们打断点,发现是时间格式转换错误,然后只能对这个异常进行处理,或者加上检验。让错误可控,在极易发生错误的地方(笔者多次栽在了,用map去遍历list,却天真的以为list不可能为空上了),做点处理吧。

3.低级错误,错别字,大小写等。自测,自测,或者叫单元测试,重要的事情还是要说三遍的,不要寄希望于测试小妹给你掌控一切,否则,哈哈,你将拥有大把的时间去改bug。自己多点点,把低级错误搞定了,将节省大量时间。

4.框架自身的事务管理,搞清楚确实是件挺重要的事。有一件事情是最可怕的,就是一个按钮下要执行多个update语句,一旦其中一个update发生了错误,它自己回滚了,它之前的更新了,它之后的由于报错,不执行了,于是,数据库中就出现了大量的脏数据。

5.sql。这个真的没啥,写的时候,改的时候,报错的时候,先去pldql或者其他sql编辑器中执行一下,错误的位置和具体错误就都出来了。
分享到:
评论

相关推荐

    历年初级程序员试题及其答案

    初级程序员是IT行业中入门级别的职位,对于初学者或者即将参加程序员资格考试的人来说,熟悉历年初级程序员试题及其答案是至关重要的。这份压缩包文件包含了历年来的考试题目和对应的解答,可以帮助考生更好地理解和...

    TAO程序员指南

    此程序员指南为英文版,提供了TAO的简要介绍及其基本用法。 ### 二、TAO的主要功能与特性 #### 1. 使用ACE C++框架 TAO与ACE(Adaptive Communication Environment)框架紧密集成。ACE是一个高性能、可移植的...

    程序员能力矩阵——包括数据结构等

    这一级别的程序员通常已经完成了计算机科学的基础课程,但对于高级主题的理解尚浅。 - **n (Level 2):** 在计算机科学领域有一定的实践经验。这类程序员不仅掌握了基础理论,还能将其应用于解决实际问题,如编写高效...

    C++入门经典(第三版)

    最后,书中还可能涵盖异常处理和命名空间等特性,这些都为C++程序员提供了更高级别的控制和灵活性。异常处理允许程序在运行时捕获和处理错误,而命名空间则有助于解决大型项目中的命名冲突问题。 总的来说,《C++...

    轻松入门开发ARM 程序

    例如,正确的编译器优化级别可以显著提升代码性能,而链接器脚本则决定了程序在内存中的布局。 #### 第二步:编译与连接 一旦项目创建完成,接下来便是编译和连接阶段。编译器将源代码转换成机器可执行的指令,而...

    C++ 书籍推荐 从入门到精通所要看的书籍

    - 作为C++之父Bjarne Stroustrup亲自撰写的书籍,本书对于理解C++的设计理念和语言特性具有很高的参考价值。 - 内容深入浅出地介绍了C++的核心概念,如类、对象、模板等,并提供了许多实用的编程技巧。 - 适合...

    juc入门案例演示代码

    Java并发编程是Java程序员需要掌握的重要技能之一,Java并发库(Java Util Concurrency, JUC)为多线程编程提供了强大的支持。在这个"juc入门案例演示代码"中,我们将会探讨两个关键的JUC组件:`JUCLock`和`process_...

    iPhone开发

    教程还提供了一些关于如何学习的建议,比如在学习过程中不要害怕犯错误和遇到问题,因为即便是经验丰富的程序员也会遇到bug和错误。对于初学者来说,重要的是要保持学习的热情和持续的实践,这样可以逐渐提高解决...

    Valgrind_manual Valgrind手册文档

    Valgrind是一款在Linux环境下广泛使用的性能分析工具集,它主要用于调试和分析...通过使用Valgrind,开发者可以更有效地捕捉到程序中的内存问题,避免因内存管理不当导致的bug和性能问题,从而提高软件质量和开发效率。

    GDB调试手册(GNU C程序调试必备)

    《GDB调试手册》是GNU项目为C程序员提供的一个源代码级别的调试工具的全面指南,其第九版对应于gdb版本20031202。这份手册由Richard Stallman、Roland Pesch、Stan Shebs等多位作者共同编写,并通过bug-gdb@gnu.org...

    软件测试入门

    ### 软件测试入门知识点概述 #### 一、软件测试的基本概念 1. **软件测试定义**:软件测试是通过执行一个程序或应用程序来评估其功能、性能、可靠性、图形界面等,目的是识别该软件在开发过程中的任何偏离规格说明...

    vc98开发工具

    这个版本因其稳定性和对Windows API的深入支持,在程序员社区中广受欢迎,尤其是对于初学者而言,它是一个理想的入门平台。下面我们将详细探讨VC98的主要特点、功能以及如何使用它进行开发。 首先,VC98包含了...

    devc++ 正文版5.0

    对于初学者而言,DevC++是一个理想的入门工具,因为它提供了完整的开发环境,无需额外安装编译器或其他组件。同时,其简洁的界面和丰富的功能,使得学习和实践C语言变得更为便捷。"devc++ 正文版5.0"特别强调了中文...

    RxLib 2.75 Update 1.0.17 for D5-XE10.2 Tokyo.rar

    "Readme.txt" 文件通常包含了安装指南、更新内容、使用注意事项等关键信息,对于初次使用者来说,这是一个很好的入门指引。 "Demo" 文件夹包含了示例程序,这些演示程序展示了 RxLib 控件的各种功能和用法。通过...

    hello driver

    总的来说,“hello driver”和“hello world driver”代表了驱动程序开发的启蒙阶段,通过这个简单的例子,程序员可以逐渐深入到更复杂的硬件交互和系统级别的编程。随着技术的深入,开发者会接触到更高级的主题,如...

    C++\C笔试集锦 有难度

    这份资料旨在帮助有一定基础的程序员提升自己的技能,而不是入门级别的基础知识教程。因此,对于初学者来说,它可能过于复杂,不建议直接使用。 C++和C语言是计算机科学中的基石,它们在系统编程、游戏开发、高性能...

    Borland Turbo C++ 3.0 (3.5)_C++_

    Borland Turbo C++ 3.0是一款历史悠久的C++集成开发环境,它在1990年代初至中期是许多程序员入门C++编程的首选工具。这款软件以其高效、轻便和对DOS操作系统的良好支持而闻名,是那个时代个人计算机编程的重要组成...

    初学编程A.Beginners.Introduction.to.Computer.Programmin

    《初学编程》一书包含了多个实践项目,涵盖了从简单到复杂的不同难度级别,旨在让读者亲自动手,将所学知识应用到实际编程中,从而加深理解和记忆。 6. **C++标准库**:本书还介绍了C++标准库,这是一个强大的工具...

    VC++6.0小番茄

    它在20世纪90年代末至21世纪初广泛使用,是许多程序员入门C++编程的首选工具。VC++6.0集成了编译器、调试器、资源编辑器等组件,提供了一个全面的环境来编写、编译、调试Windows应用程序。 **C++编程基础** C++是...

Global site tag (gtag.js) - Google Analytics