第2章 高级程序员应具备的基本素质和能力
作为一名高级程序员或软件工程师,不但要参与很多大项目的编写,而且还要具备高级程序员的基本素质和能力。
对于高级程序员,不但要有良好的编程风格,还要具备良好的沟通能力,对数据库进行分析与设计的能力,而且还要善于分析和总结,并能对整个项目编写软件需求规格说明书,通过对本章的学习,希望能够帮助高级程序员养成这些基本素质和能力。
细节1 易于理解——具有良好的编程风格
作为一名高级程序员,所编写的程序应该具有良好的风格,也就是说程序应该规范、易于理解、具有较好的可读性,并且所编写的程序还要模块化,程序代码中还需要添加注释,并具备完善的异常处理机制以及说明文档等。因此写程序并不是简单地写代码,也不是为实现程序的功能而写代码,如果简单地为实现程序的功能而写代码,这样的程序就不能说是一个好的程序,真正优秀的程序,应做到具有良好的风格,让别人容易理解和接受。
说明
这里一再强调程序的风格,并不是说程序的功能不重要,这里只是说明了作为一款优秀的软件,它的风格更重要而已,当然,话又说回来了,编程风格再好,如果所编写的程序并不能满足用户的需求,也就是说程序所实现的功能并不符合用户的要求,那这个程序一样是个失败的程序,编程风格和程序的功能二者是缺一不可的,只是相比之下,编程风格更重要而已,程序并不是编写完就结束了,因为后期还需要维护,这就要求所编写的程序具有良好的风格,使别人能够理解和接受,并具有较好的可读性。
程序开发完成以后,还需要进行维护,因此,所编写的程序应具有较好的可读性,方便对代码的理解和维护,所以要形成良好的编程风格,主要应注意和考虑以下几点。
1.要有较好的可读性
(1)使用有意义的标识符:标识符的命名应具有一定的意义,最好用英文单词,这样可以增强程序的可读性,方便代码的维护。
(2)要为程序添加注释:正确的注释能够帮助读者理解程序,尽量为每条语句、每个方法和类等都添加注释,说明语句、方法和类等的作用,这样有利于对代码的理解和维护。
(3)代码结构要清晰:为使代码的结构清晰,可以在程序中利用空行、空格、制表符等使程序结构层次分明,也就是说要对程序代码分段和添加缩进。
2.语句的结构应简单易懂
语句的结构应该简单直接,不应该为提高效率而把语句复杂化。因此需要注意如下几点:
(1)在一行只写一条语句,这样的程序结构清晰、易于理解。
(2)除非对效率有特殊要求,否则程序编写应优先考虑的是清晰性,即增强可读性。可以通过添加缩进、分段和注释等,以使代码可以被别人理解。
(3)避免不必要的转移,大量的代码转移,会增加程序的复杂性,不利于对代码的理解。因此,如果代码不是很多而且不是很复杂的情况下,应尽量做到一个功能只在一个方法中实现。
(4)避免采用复杂的条件语句和否定条件的条件语句,否则会降低程序的可读性,不利于对代码的理解和维护。
(5)程序要模块化,在编写程序时尽量做到模块功能单一化,也就是一个模块只实现一个功能,并利用信息隐蔽技术,确保每一个模块的独立性。
说明
在整个软件生命周期中,花费最多的是软件维护阶段,因此,对于一个优秀的程序,要求代码具有较好的可维护性和扩展性,这就要求程序代码和结构应简单、清晰、易于理解,这样可以方便程序的维护和扩展,从而降低维护费用、减少维护时间。
3.输入和输出应方便用户操作
输入和输出信息是用户直接接触的,可以说系统能否被用户接受,很大程度上取决于输入和输出信息的风格。因此在进行程序开发时,输入和输出应尽可能方便用户的使用,所以在设计程序时应考虑如下原则:
(1)对所有的输入数据都要检验数据的合法性,并对不合法的输入给出提示,并说明为什么不合法,应该输入什么样的数据才是合法的,等等。
(2)输入格式要简单,这样可以使输入的步骤和操作尽可能简单,从而可以大大方便用户的使用。
(3)通过使用默认值,可以方便用户输入数据,提高用户的工作效率,因此对于可以设置默认值的字段,应尽量设置默认值。
(4)在进行数据的批量操作时,要保障数据的完整性和一致性,例如对数据库进行批量操作时,可以使用事务来保证数据的批量操作,要么都成功,要么都不成功。
(5)在以交互方式输入数据时,应使用标签等说明符明确提示用户应输入的信息,并在删除、修改和保存数据时,使用对话框在屏幕上给出提示信息和确认信息,以使用户能够了解所进行的操作是否成功。