"提高程序员面试代码质量"
程序员在职业生涯中难免要接受编程面试。有些程序员由于平时没有养成良好的编程习惯,在面试时写出的代码质量不高,最终遗憾地与心仪的公司和职位失之交臂。因此,如何在面试时能写出高质量的代码,是很多程序员关心的问题。
代码的规范性
代码的规范性是面试官评价应聘者的重要标准之一。应聘者首先要把代码写得规范,才可以避免很多低级错误。如果代码写得不够规范,会影响面试官阅读代码的兴致,至少印象分会打折扣。
写作规范的代码书写清晰。绝大部分面试都要求应聘者在白纸或者白板上书写。由于现代人已经习惯了敲键盘打字,手写变得越发不习惯,因此写出来的字潦草难辨。虽然应聘者没有必要为了面试特意去练字,但在面试过程中减慢写字速度、尽量把每个字母写清楚还是很有必要的。
布局清晰也是代码规范性的重要方面。平时程序员在集成开发环境如 Visual Studio 里面写代码,依靠专业工具调整代码的布局,加入合理的缩进并让括号对齐成对呈现。离开这些工具,应聘者就要格外注意布局问题。如果布局不够清晰,缩进也不能体现体现代码的逻辑,这样的代码将会让人头晕脑胀。
命名合理也是代码规范性的一个重要方面。很多初学编程的人在写代码时总是习惯用最简单的名字来命名,变量名是 i、j、k,函数名是 f、g、h。由于这样的名字不能告诉读者对应的变量或者函数的意义,代码一长就会变得非常晦涩难懂。强烈建议应聘者在写代码时,用完整的英文单词组合命名变量和函数,比如函数需要传入一个二叉树的根结点作为参数,则可以把该参数命名为 BinaryTreeNode* pRoot。
代码的完整性
代码的完整性在面试的过程中,面试官会非常关注应聘者考虑问题是否周全。面试官通过检查代码是否完整来考查应聘者的思维是否全面。
通常面试官会检查应聘者的代码是否完成了基本功能、输入边界值是否能得到正确的输出、是否对各种不合规范的非法输入做出了合理的错误处理。
设计全面的单元测试用例是确保代码完整性的一个重要方法。应聘者在写代码之前,首先要把可能的输入都想清楚,从而避免在程序中出现各种各样的质量漏洞。然后,应聘者可以从功能测试、边界测试和负面测试三方面设计测试用例,以确保代码的完整性。
功能测试是测试代码的基本功能是否正确。边界测试是测试代码在边界值下的行为是否正确。负面测试是测试代码在非法输入下的行为是否正确。
代码的健壮性
代码的健壮性是面试官评价应聘者的另一个重要标准之一。代码的健壮性体现在代码的逻辑性、容错性和扩展性三个方面。
代码的逻辑性体现在代码的思路是否清晰,代码的结构是否合理。容错性体现在代码是否能够正确地处理各种异常和错误。扩展性体现在代码是否能够轻松地扩展和修改。
代码的规范性、完整性和健壮性是面试官评价应聘者的三个重要标准。如果应聘者能够在这三个方面都做到优秀,那么他就能写出高质量的代码,从而提高面试的通过率。