java培训入门教程-10个容易犯的编程错误

java培训入门教程-10个容易犯的编程错误

ID:8959220

大小:439.78 KB

页数:7页

时间:2018-04-13

java培训入门教程-10个容易犯的编程错误_第1页
java培训入门教程-10个容易犯的编程错误_第2页
java培训入门教程-10个容易犯的编程错误_第3页
java培训入门教程-10个容易犯的编程错误_第4页
java培训入门教程-10个容易犯的编程错误_第5页
资源描述:

《java培训入门教程-10个容易犯的编程错误》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、http://www.moliying.com为什么程序出故障?虽然自世界上第一位女程序员艾达·洛夫莱斯(AdaLovelace)在上世纪第一次看到通用计算的潜力以来我们已取得了很大进展,但是我们编写的软件还是错误百出。这些年来,尽管我们开发出许多高级方法来确保代码的成功,但是程序还是不断的出故障。原因何在?虽然这个问题的答案多种多样,但我们还是决定提供一个务实的答案。程序员难免犯错。他们有时马虎了事。他们并不总是使用最佳工具或最佳实践。我在加州大学伯克利分校教面向对象编程这门课,我在学校教优秀编程实践所花的时间与帮助学生理解代码本身所花的时间相比只多不少。我在课堂上看到许多常犯的错误,本

2、文就介绍其中几个常见错误。我还联系上了西北理工大学工程学院的詹姆斯·A·康纳(JamesA.Connor)教授,请他介绍其学生常犯的一些错误。我先来说几个。第一个错误:糟糕的注释方法。注释是程序里面计算机并不执行的那部分文本。它们被程序员写成附注的形式,用来解释代码里面发生的情况。我的好多学生避免给代码添加注释,也想不明白为何要占用实际编码的时间去编写一些注释。我最实用的例子来自我自己的生活。早在世纪之交前,我编写了版本1.0的ZENPRESS,这是最古老的内容管理系统之一。我预计它会带来好几年的文章。14年过后,它仍在管理许多文章,准备好了75000篇文章和26亿页的内容。最后,它运行所

3、依赖的那个平台过时了。我不得不回过头去研究代码。2009年,我把代码从原始平台移植到现代平台。我最近不得不再次改动,因为PHP一个关键的语言特性在版本升级后完全消失了。磨砺营IT教育版权所有http://www.moliying.com19年过后,我根本记不起所有这些代码是怎么运行的,但是由于我对代码作了详细的注释,所以可以说有了一份路线图。我可以查看代码,查看嵌入在代码里面的注释,然后进行修改。你在团队工作时,或者你的软件不归你监管时,注释也很重要。你的职业生涯可能发生变化,别人可能需要过来了解你的代码。注释将大有帮助。第二个错误:糟糕的变量命名。我会继续探讨这个主题:通过语言让代码一目

4、了然。我会用一个例子来表明这点。假设你驾驶一辆每加仑汽油跑20英里的汽车,开了100英里。请问你用掉了多少汽油?这是个简单的例子,但是适用于我们的用途。假设你遇到了a=b/c这一行。a指什么?b和c又指什么?它们与你的其余代码有何关系?在编写程序十分钟后,你会记得一干二净。更不用说别人过来修改代码或编写更新版了。现在看看这个表达式:加仑=英里/每加仑行驶英里数。每一个变量的具体用途就一目了然。一个代表加仑,一个代表英里,另一个代表每加仑行驶英里数。很清楚。想一想为变量赋予清楚的英语(或者其他任何母语)名称与注释之间的关系。假设你从别人那里接过了一段代码,看到a=b/c。这代码用来干嘛?你有

5、何头绪吗?务必以一种代表其功能的方式来命名变量。那样可以节省大量的时间,减少许多头痛的问题。第三个错误:没有实验笔记(labnotes)。我在1997年年中开始编写ZENPRESS,它在1998年1月份上线。遗憾的是,我当时匆忙完成了项目,没有花时间为这第一个版本编写实验笔记。此后我懊悔多次。从1999年6月份开始(当时我开始编写版本2),我就经常做实验笔记了。磨砺营IT教育版权所有http://www.moliying.com实验笔记是代码注释之外的记录。科学家一直在使用实验笔记,作为其研发过程的日志或对话内容。实验笔记用来证明科学发现归谁所有,因为研究过程常常记录在科学家用来记录进度的

6、每天日志中。实验笔记对程序员来说同样是一种有效的工具。我为ZENPRESS编写的上一份实验笔记是在今年3月份编写的,当时我不得不把ZATZ归档从一家主机托管提供商迁移到另一家。我还经常对自己的其他项目做实验笔记,由于能够回过头去查阅笔记,好多次帮了大忙。如果你还没有做实验笔记,现在就开始做。记下你做的任何变化,你的理由,你考虑后丢弃的代码,参考的实用资源,以及将来帮助你的任何其他内容。你还能帮助将来的同事或接手人――如果你需要证明归属权,实验笔记还能起到证明的作用。第四个错误:不用一种人类语言编写。我的学生要考试过关,不仅仅要编程,他们还要编写讨论区帖子,证明他们熟知某些编程概念。我们提出

7、这个要求出于两个原因。当然,首先是为了证明熟悉概念。但是更为重要的是需要所有专业人员都有编写能力。我在这方面遭到学生们的反对。每学期都有学生高喊:“我想成为程序员,而不是编写者。”但是编程、工程、IT和几乎所有专业工作都不可能在真空状态下存在。你需要通过编写来解释概念、推销想法、获得资金、要求澄清、准备提议,或者甚至为拿到更好的分数据理力争。开源项目的参与者在非常庞大的团队协同工作,他们保持同步的唯一手段就是编写清楚的、

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。