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

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

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

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

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

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

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

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

相关推荐

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

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

    Java程序员分级

    通过明确不同级别程序员的能力要求,可以帮助程序员了解自己的不足,激发他们的学习动力,并且让公司在招聘、评估和晋升员工时有据可依。这一体系对于提升整个开发团队的专业水平和项目执行效率都具有非常积极的作用...

    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++标准库,这是一个强大的工具...

Global site tag (gtag.js) - Google Analytics