说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

程序员不应该再犯的五大编程错误

HTML文档下载 WORD文档下载 PDF文档下载
本文总结了程序员经常犯的五大错误,尤其是初学者。在编程的道路上,犯错也是学习道路上不可或缺的一部分,但一旦意识到某种错误的发生,就应该想办法避免,这样,代码就会越来越好,自己也会得到成长。

当你成为程序员后,你很容犯下文所提到的这些错误。

话说失败是成功之母,在编程的道路上,犯错也是学习道路上不可或缺的一部分。尤其是初学者,他们犯的错误可能会比其他人更多,那么该如何才能避免这些错误的发生呢?

要有避免错误发生的意识,一旦意识到某种错误的发生,在下次编码时,就应该想办法避免,这样,代码就会越来越好,自己也会得到成长。

其实,大多数不良编程习惯的发生都源于我们的无知,没有其他原因了,下面让我们一起来看看哪些错误是编程人员经常犯的,不知道你有没有犯过这些错误,有则改之。

1.在没有理解的情况下就粘贴代码

有时,你会发现,你正在寻找某个功能的代码恰巧存在于他人的代码里,于是,你开始拷贝整段代码,而不是去理解每一行代码。

有时,你所拷贝的代码可能非常多,以至于你没有时间去完全理解它。如果你经常以这种方式拷贝代码,那么你的应用程序可能会存在很大的潜在风险,比较脆弱而易出现bug。

这样做的优点就是你可以很快完成工作,但由于你没有编写这段代码,所以,万一在后期,这段代码出现问题,你可能很难去维护。

所以,无论你所拷贝的代码是多还少,你都应该非常小心,确保自己已经完全理解了这些代码。如果你之前已经使用过这段代码,并且可以100%的运行起来,没有其他问题,那么你就可以放心地使用,否则,你一定要谨慎。

2.每次都从头开始

这是初学者经常犯的错误,你可能会认为很好,每一次都重头开始创建应用程序。但殊不知,这是巨大的资源浪费——时间、精力和心思——这些完全可以更好地用在其它地方。

如果你需要的东西已经有了,那就直接利用它,无需对同一个概念一遍一遍地重建。

如果有现成的API、框架或游戏引擎可以轻松完成你的任务,那么你就应用使用它。你的目标并不是展示你的能力有多强,而是确保应用工作起来有多完美,并且利用较少的资源实现它。

这样,你就可以事半功倍地完成任务。话说时间就是金钱,花更少的时间完成更多的事情,何乐而不为呢。

3.遇到问题就Google

许多次,习惯性的,一遇到新问题就通过Google来查找解决方案,要想成为一名好程序员,这并不是个好法子。如果你每次都是通过外部力量获取解决方案,而不是自己思考,那么,你的思维将永远得不到挑战,不是有句俗话吗:脑子不用会生锈的。

当你的思维停止挑战,编程技能也会下降,尤其是对于程序员来说。解决问题的能力与编程技能的提升是有很大关系的。当然,通过搜索来查找解决方案并不是什么坏事,但前提是,先动脑。或许,你只需花费很少的时间,就可能把问题很好地解决、或许你的解决方案比他人的更加精确。

不尝试,你永远都不知道。

4.忽视警告

当出现警告时,你应该意识到会有潜在的问题产生。

警告是一种迹象,表明你所做的功能并不能时时刻刻很好地工作。有时,这些警告并不严重,并且可以安全的忽视。但当问题真正来临的时候,在应用程序显示成百上千个警告,并且不能完全正确地工作。

这样,要想发现这些错误的原因,就变成非常困难。你不得不花更多的时间来分析每个警告,并且查找问题的根源所在。相反,最佳的解决方案是当警告初次出现时,你就开始查找原因并解决。

通常,你只需使用正确的变量或方法即可解决大多数警告,无需花费太多的时间。要尽早处理这些警告。

记住,对待警告如同错误一样。

5.快速修复而不是永久性地修复

有时,我们只是快速地修复下问题,而不是永久性地解决。但如果一不小心,问题还会以各种各样地方式出现。

同样,修复问题时不应该破坏原有的系统,修复一个bug应该是提高整个系统的运行效率,而不是使它变慢或变笨。

来自:5 Programming Mistakes You Should Stop Making

Facebook 2013年的9个开源项目 开源力量公开课2013年度庆典:我们的开源项目 看雪学院“走进企业看安全”活动走进安全管家 视频+PPT:苹果iOS7 Tech Talks大会演讲内容 iPhone 6和Galaxy S5暂不会采用弯曲屏技术 当程序不工作时,开发者常用的借口 携程技术副总裁叶亚明:三次重大技术改进的故事及背后原因 Google抛弃C语言,采用Go语言重写Go编译器 jQuery Mobile 1.4.0正式版发布,着重性能改进 IBM收购Aspera加速大数据传输 各式各样的极品程序员,你属于哪一种 Google员工离职前必做的14件事情 GitHub上最火的开源项目及编程语言是什么? 2014的12个大数据趋势:Hadoop继续升温,R将进入主流 研究称三星手机可能存在安全漏洞 初创IT公司里开发者最容易犯的九种错误 还有多少开发者在为IE6做兼容性测试? 解读华三“新IT易之道”理念下的云计算和数据中心 回顾苹果2013:硬件几乎无突破 热衷收购 敏捷开发流程管理须参考的3个要素 微软潘正磊谈DevOps、Visual Studio 2013新功能、.NET未来 Jail Breaking之后,iOS 7的指纹识别还hold住么? “勇者前线”开发商Gumi获1900万美元融资 工信部发首批10张虚拟运营商牌照 开发者有哪些新机会 【PPT集萃】十位一线专家分享Spark现状与未来 谁主沉浮,亚马逊和思科角力DaaS市场 忆往昔峥嵘岁月稠——看苹果第一代iPhone的“风骚”往事 开源工具链“大牛”的经验分享:HelloGCC 2013精彩演讲回顾 20个超实用的JavaScript技巧及最佳实践 【开源专访】Linux Deepin:做更好用的Linux桌面系统 访Andy Jassy:感受亚马逊AWS生态观,思考国内外云计算差异 交流交流多线程程序的开发经验好吗? 谁有关于ejb方面的书或者资料推荐??一定给分 Women over 50 谁编个例程给我,这50分就是谁的了。题目不难,相信高手5分钟就能做完。 jdk1.3+jswdk1.0.1 的JAVAbeans .class文件要放哪啊????? God painted it 提问:猪真的很幸福吗?要求 wywq(幸福如猪) 回答。 哪位高手做过可视电话的? VB能不能实现“一个结构体类型的数组当参数传递 Forgotten Birthd Husbands Overheard Fine 有个在多线程中使用ADO的问题。请高手们帮忙。 Suede jacket 可能是installshield的Bug! 我想去北京找个工作,请大家帮帮忙,提供点信息! 装了“猫”为何还有630错误(电话线也接了)? excel 問題 各位:数据窗口有一检索变量,现在想retrieve出所有的记录,检索变量应该怎样赋值?谢谢! linux和windows是不是只能分别装在两个分区中 关于图像处理:如何使图像锐化与柔化? 帮帮我啦! 我在使用jdbc读取数据的时候,碰到了内存溢出的问题,怎么回事呀 哪里有餐饮系统的介绍?90不够的话,先欠着,多谢了! 在两个ASP程序之间怎么传递参数? ccl2000(不帅不酷的Goblin):其实你真的很酷很帅的。 大侠帮帮我啦(关于SQL语句的问题) 关于Vxd的编译问题 用VC编的程序,一运行就说“执行非法操作”,问题出在哪里?? SQL Server有病 一个关于api的简单问题 《易佳自定义报表》用后很失望 请教各位高手一个有关报表控件的问题? 小妹向大家请教!可不可以直接在本页的代码中改变该页面浏览时的属性? 家菲猫:惊悉你昨晚惨遭不幸,被窃大量钱物,今日一天无法和你联系上,估计手机和通信录已全部丢失,如果今晚无法来我处,明早8点以前请务必携猫 MM 赶到上海南站!!! MDI文档模板和应用程序调用问题请教,大侠请进! 一个c++问题???? 请问各位高手,sqlserver2k加密的存储过程是否能解密,看到它的实际的语句?可否能跟踪加密的存储过程? 我下载了一个formula one ,发现她的界面跟excel差不多,在pb中怎么用? 高分求XML 高级编程(足本)[01.pdf到10.pdf]!!!! 招聘汇编程序员 ie 中true dbgrid 的问题 急招聘汇编程序员 关于WINDONWS文件夹 WIN2000有关用户管理的问题 谁可以告诉我怎么调用已有的EXE文件。 有谁知道广州或南海的高级程序员考试的辅导点 如何把系统时间作为一个文件的保存名? TURBO C语言对磁盘操作的问题 着急招聘汇编程序员 为什么大家得的都是0分? 溴水加入到直馏汽油这个会发生反应吗.发生反应是使溴水褪色么..还是说他们是萃取的关系... 常减压蒸馏产品质量调节 高二化学知识点总结 裂解和裂化哪个是深度裂化 加氢裂化工艺提供商 A、B、C、D、E均为可溶于水的固体,组成它们的离子有:阳离子:Na+、Mg2+、Al3+、Ba2+阴离子:OH-、Cl-、碳酸根离子、硫酸根离子、硫酸氢根离子分别取其水溶液进行试验,结果如下:①A溶液与B 环烷烃是不是饱和烃?如果是,为什么他有一个不饱和度? 加氢裂化过程主要发生哪几种化学反应? 热方程式的加减怎么个加减法?是否可以据一些例子? 链状烷烃叫烷烃?环状烷烃叫环烷烃? 松花蛋的制作过程中所发生的化学反应 已知在298K时下列反映的有关数据:C(s)+1/2O2(g)==CO(g),ΔH1=-110.5Kj/mol C(s)+O2(g)==CO2(g) ,ΔH2=-393.5KJ/mol 则C(s)+CO2(g)==2CO(g)的ΔH为( )A、283.5Kj/mol B、172.5Kj/mol C、-172,5Kj/mol D、-504Kj/mol(╯3╰) 既然饱和烃就是烷烃,而环烷烃不是烷烃,为什么环烷烃是饱和烃? 溶解过程有发生化学反应吗? 高二化学热反应反应物质的量基本计算已知C(s)+O2(g)=CO2(g); △H1 C(s)+1\2O2(g)=CO(g);△H2.求△H1与△H2的相对大小? 含有5个碳原子的烷烃,经催化裂化后生成的烷烃最多有几种 化学反应中,反应物的量和滴加顺序不同对生成物不同的化学反应有哪几种? 试验中不能测出由石墨和氧气反应生成甲烷的反应热ΔH4,但可测出CH4,C,H2 燃烧反应中的反应热ΔH1=-890.3,ΔH2=-393.5,ΔH3=-285.8 根据盖斯定理求ΔH4 环烷烃是饱和烃吗 有能量变化的过程一定发生化学反应吗 高二化学热反应方程式中焓变值变化的问题比如一个热反应方程式.每一项系数X2那么焓变值也有X2但是我们老师说某一年的高考题 有种情况是焓变值不变的,那是怎么一回事啊? 催化裂化反应为什么原料性质变重,反应温度上升 怎样区分别润滑油是不是用加氢裂化基础油调和? 如图,用系统命名法命名下列有机物 催化裂化分馏塔顶压控多少有什么决定 32#基础油中32#是什么意思 CH3 C2H5丨 丨CH3一CH2一CH2一CH2一CH2一CH2一CH2一CH2一CH2一CH2一CH2一CH3这个叫做 6-甲基-7-乙基-12烷 还是叫做 6-乙基-7-甲基-12烷 苯丙烯和水反应生成什么 水溶液中R值是什么意思? 市场上由1类基础油,2类基础油,3类基础油制的的润滑油价格分别是多少?要看具体什么产品?同种产品部同厂家出来的质量和价格都不一样,给个大概的价位给你参考一类:7000-8000二类:8000-10000 丙烯与水发生加成反应需要什么条件? Excel添加趋势线中的R平方值和截距分别是什么意思? 三类基础油与二类基础油的区分Ultra-S2(60N),Ultra-S3(70N),Ultra-S4(100N),Ultra-S6(150N),Ultra-S8(250N),以上这些有的公司把它们都划分到三类基础油当中,虽然Ultra-S2\S3的粘度指数上写的是二 丙烯与水反应 用R语言估计参数值 请帮忙解释下面这段R语言程序每句的含义,> N x1 x2 n pai for(i in 1:N){+ x1 氢气在加氢裂化过程中起什么作用? 丙烯和氧气反应方程式,它们会反应么、生成水和二氧化碳 已知定义在R上的奇函数f(x)满足f(x+2)=-f(x),求f(6)的值 制取粗硅的过程中氢气起什么作用 下列物质的制取中,不能直接用乙烯作原料的是?聚乙烯 聚氯乙烯 二氯乙烷 溴乙烯 f(x)是定义在R上的奇函数,对任意∈R,总有f(x+3/2)=-f(x),则(-3/2)的值为多少 浮法玻璃氢气起什么作用 制取下列物质时,不能用乙烯做原料的是 A.聚乙烯 B.聚氯乙烯 C.氯乙烷 D.1,2-二溴乙烷 对于碳二加氢脱炔过程,为什么把催化剂用于前加氢 氢气的作用 制取下列物质时,不能用乙烯作原料的是 A.CH3CH2CL B.聚氯乙烯 C.聚乙烯 D.CH2Br-CH2Br答案是选B 为什么? 对于碳二加氢脱过程,为什么把催化剂不能用于前加氢 反应了什么事件 请问由于工作需要经常接触液化气,重芳烃,汽油,轻芳烃等化工原料,对身体有什么伤害?请问由于工作需要经常接触液化气,C4,石脑油,重芳烃,汽油,富气,干气,轻芳烃等化工原料,对身 什么叫加氢裂化? 在重大政治事件中的表现和认识 怎么写···急 急··· 我骑摩托车 不加汽油 ,直接用轻芳烃代替 行么 “加氢裂化装置”如何翻译成英语 材料反映了什么事件从有最早的历史记录以来,没有一桩伟大的事业能像十八世纪后半期一个主要鞑靼民族跨越亚洲草原向东迁逃那样轰动于世,那样令人激动的了. 直流汽油中的芳香烃是什么样的?能使酸性高锰酸钾褪色吗,能使溴水褪色吗? 什么是催化裂化汽油求答案 关注时事对大学生成才有何意义200字左右 请教一个汽油芳香烃的问题我想问一下,比如93#汽油和0#柴油相比,哪个芳香烃含量更低些,大概能低多少呢? 常减压蒸馏汽油、柴油与焦化汽油与柴油的区别 《七律长征》中反映了什么事件?“三军”是指什么?在这一过程中召开过什么重要会议?有何意义?务必一一回答,最好简短一点,
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn