当前位置: 首页 > 科技观察

程序员应该避免的10个坏习惯,看完后受益终生

时间:2023-03-20 23:10:22 科技观察

1.休息不够我敢肯定你们中的很多人或者几乎所有人都对这个坏习惯感到非常内疚。我也是,仍然对没有休息或没有得到足够的休息感到内疚。曾经有一次,我早上六点钟睡觉,中午一点左右醒来吃午饭,一直工作到早上六七点。这太普遍了,几乎每天都有。在工作紧急的情况下,我做了很多可笑的事情。我想我们每个人在面对DDL的时候都遇到过这种情况,我说的不是这个,而是你的日常习惯。我建议你每天尽可能多休息。我不能代表那个具体的计划,因为每个人都不一样,但从一般意义上说,你应该每小时起床伸展一下,四处走动,喝杯咖啡,吃点东西。很多时候,脑子卡住了,那就需要休息一下,让大脑休息一下,解决问题会更容易。所以找一个适合你的休息时间。即使您认为自己不需要休息,也可以尝试一下,您会发现自己的工作效率更高。2.拒绝求助这种情况无论是在学习还是工作场景中都很常见。我们中的许多人不寻求帮助。原因有很多,但我认为最主要的原因无外乎是自尊和害怕被认为我无能为力。我们中的许多人都患有冒名顶替综合症,感觉自己不能胜任这份工作。在我的公司、与客户合作时,甚至在课堂和辅导中,我都有这种感觉。我们认为寻求帮助会强化这种感觉。但实际上,它会浪费大量时间并阻碍你的成长。其他真正的开发人员是视频或书籍类资源,甚至比这些更好。他们可以直接回答您的问题并帮助您真正理解它。只有混蛋会因为你提出问题而批评你,我会尽量避开那些人。如果你想自己找出答案,不想寻求帮助,没关系,给自己一个时间限制。永远不要浪费时间试图找出你的上级何时就在你身边,他可能知道或至少可以提供帮助。3.停止学习不管你是不是从业20多年的资深开发者,你都应该永远把自己当成学生。这比大多数职业要求更高,因为这个行业总是在变化。没有一个开发人员对所有事情都了如指掌,前一分钟他们还在做,下一分钟就会发生变化,他们必须学习更多。如果你沾沾自喜,停止阅读和学习,你注定会落后。即使你有一份不需要学习任何新东西的工作,一旦你失去那份工作(这并非不可能),你也会远远落在后面。所以即使有这样的工作,我也建议大家边工作边学习。无论喜欢哪种语言、框架、库,都要及时更新知识。如果你的职位所需要的只是旧知识,这也是可以理解的,因为许多领导倾向于认为,如果公司没有破产,那么就没有必要修复它。所以你仍然会发现团队使用过时的、不受支持的技术只是因为它仍然有效。如果您在工作中学到了这方面的新知识,那么您可以向团队展示更快、更高效、更简单的新技术是可能的。您也许能够说服他们更新他们的技术并改进公司。4.混淆代码这篇文章更多的是一种技术习惯,但也可以有很多意思。您应该以直观、高效和安全的方式编写代码。这在自学的时候简直太难了,因为在相关课程中,你学到的不是某些代码的写法,而是导师认为这样写是最容易理解一些核心概念的方法。因此,您必须做一些额外的研究才能弄清楚如何清理您的代码。我绝对建议您使用“DRY原则,不要重复自己”。如果您遇到一个公共代码块,请创建某种“类”或“函数”来合并该功能,而不是仅仅复制它。这样可以让代码更加简洁,节省大量的代码行,也方便其他人使用。您还应该注意性能,例如压缩图像、缩小JavaScript和CSS。您可以使用任务运行器(例如gulp)或其他工具来自动完成缩小。对于小任务,您甚至可以使用minifier.org手动完成。另外,不要进行不必要的API接口调用,让你的全栈应用以尽可能少的请求完成你需要的所有功能。和测试......我在这方面犯了很多错误并且没有做足够的测试。据我所知,单元测试有助于构建更健壮的应用程序,避免潜在的问题,并节省时间和金钱。但我就是讨厌它,这可能是我最糟糕的习惯之一,也是我需要解决的一个大问题,才能成为更好的开发人员。有时我们可以节省时间并减少测试,但实际上,这样做会降低应用程序的性能、效率和可读性,并且在未来可能会导致比一开始就正确地做更大的问题。麻烦。所以请记住这一点。5.工作与生活的失衡工作与生活的平衡非常重要,尤其是当我们开始组建家庭时。任何类型的程序员都出于多种原因在工作上花费大量时间:事物总是在变化;有时我们不得不工作到很晚,早点开始,周末还要工作。这会让你远离生活中的一切,比如你爱的人,你的个人爱好。您可能喜欢锻炼、远足或外出就餐,但如果您不断加班,您将无法做让您开心的事情。我在这个领域有很多经验。我和我的妻子有两个孩子,其中一个患有自闭症,但我并没有像我想的那样花太多时间陪伴他们。我面临着双重困境,因为我同时处理编码和内容创建者的问题,不断提出新想法,高质量地记录它们等等。如果你是自由职业者,为自己工作,你所有的生计都取决于获得完成工作,只有完成所有工作才能获得报酬。如果你得到报酬,你必须忍受不断的担忧:你是否能跟上进度,你是否能完成任务。压力可能真的很大,我们不得不从生活中挤出其他东西。不是说在企业工作的人就不会经历,而是什么都得考虑的时候,压力就完全不一样了。所以我非常同情那些拥有自己的企业的人。但即便如此,你也不能让它控制你的生活,你必须为你的家人和朋友腾出时间,或者更直白地说,为你自己腾出时间。生活比写几行代码要丰富得多。做你喜欢做的事,为你的生活带来平衡。6.糟糕的办公室政治这是为在公司工作的人准备的。你与其他人一起工作,但这反过来又会造成冲突、分歧、争论等等。很多开发者非常狂妄自大,总认为自己是对的,即使知道自己犯了错误,也有一些人永远不会承认。我并不是说这是大多数开发人员,但我认为我们至少会遇到其中的一个。我听到很多人说他们的团队很棒,他们相处得很好,这很棒,但并不是所有的团队都是这样。很多时候你会在想法和解决方案上发生冲突,尽量表现得圆滑和尊重对方,但同时不要太容易被说服,尤其是当你对自己的建议非常有信心时。不要大喊大叫,不要咒骂,不要做这些事,没有用。如果他们开始这样对待你,你就会离开并成为一个更坚强的人。如果你不幸遇到了一个不听道理的彻头彻尾的混蛋,除了尽量避开他,你别无他法。在某些情况下,您可能必须与您的领导交谈,但我建议您先与该人交谈。7.你不能从错误中吸取教训作为开发人员,你会犯很多错误,这是不可避免的,没什么大不了的。但是,如果你不断犯同样的错误并且不能从中吸取教训,那么一定有问题。当你犯错时,我建议你遵循一个过程:找出错误的根本原因;找到一个可以防止错误再次发生的过程;看看如果早点发现错误是否可以避免。当你犯了大错的时候,请仔细想想这三件事,你很可能不会再犯这个错误,或者至少下次你会尽快找到错误,避免情况进一步恶化。同时,不要因为犯错而对自己太苛刻,每个人都会犯错。8.过早放弃挫折感是编程的重要组成部分。我制作了一些关于挫折和应对挫折的视频。我也见过很多人因为沮丧而过早地退出某些项目和编程。有些项目真的很辛苦,好像你修复了一个bug,又会导致另一个bug,bug无穷无尽地重复。你可能会开始觉得你无法处理它,你可以做其他事情,你在浪费时间、浪费生命、浪费金钱……你开始有很多消极的想法。如果你过快地放弃一个项目,或过快地辞掉你的工作,你打算投入那个项目或工作的一切都会化为乌有。我并不是说你不能放弃任何项目,只是我见过太多次人们在成功前夕就放弃了。所以在你放弃之前,确保你已经尝试了所有你能做的事情:上下搜索,寻求帮助,尝试了一切,改变了技巧,休息了很长时间让你的思绪恢复正常,暂时搁置而如果可能的话......你在放弃之前尽你所能,如果它仍然失败,那么也许是时候放弃它并继续前进了。成功可能就在眼前,如果你现在放弃,那将是一种耻辱。9.无所不知我之前提到过,我认为一些开发人员如此傲慢的原因是他们认为他们无所不知。他们从不听取别人的意见,他们为什么要这样做?他们知道所有的答案。被这样的人包围很糟糕,这对你不利,因为你也认为你无所不知,你没有动力去学习和提高自己。我敢打赌,有一天你会因为没有听取任何人的意见或不做自己的研究而犯下一个错误。这些人中的大多数都是StackOverflow的狂热分子,他们取笑新的开发人员问题,嘲笑其他人的答案,并一有机会就点击“投反对票”。我恨死这些人了。我想他们中的很多人在学校一直被欺负,他们用自己的知识欺负其他可能有问题或一无所获的开发人员,似乎他们忘记了被欺负的感觉而只想报复。我的理论可能有问题,这只是家庭意见。不管他们这样做的原因是什么,我认为如果他们心胸开阔,对不同的想法持开放态度,并且尊重他人,他们会比那些总是想“正确”的人快乐得多。他们可能是团队中最聪明的人,也可能是最差的人,因为没有人愿意与他们共事,也无法很好地沟通。沟通和团结是团队成功所必需的,而万事通可能会破坏这些。所以,如果那是你,试着少些自负、开放、尊重,你会走得更远。10.不接受建设性的批评。最后一项与上一项有些关联,不能接受建设性的批评。一个无所不知的魔鬼和一个真正想帮助你的人之间还是有很大的区别的。有时很难看出差异,因为您可能感觉不太好,感觉自己受到了攻击,因为其他人指出了您的错误或不完美之处。但在很多情况下并非如此,这只是有人试图教你更好的方法,或者分享他们的意见。作为内容制作人,我花了很长时间才学会区分麻烦制造者和好心人。一开始,我很警惕任何人谈论我是如何做某事的。但我意识到他们中的许多人只是想提供合理的帮助。如果他们不是无礼,或者只是对无关紧要的事情挑剔,那么我需要将其视为对我和我的知识有益的事情。建设性批评是一种学习资源,因为建设性批评是非常具体的,是你存在的问题,是别人给你的具体解决方案,这是无价的。事实上,代码审查简直太棒了,你可以获得其他人的建议来改进你的代码甚至你自己。所以不要把这种事情当成是人身攻击,除非你真的被攻击了,或者是故意的戏弄和不尊重。倾听别人的批评或改进建议总是很难,但最终,它会让你成为更好的开发者。无论您是开发新手还是经验丰富的老手,我希望这些技巧对您有所帮助。想要Java编程资料和视频可以私信--Java,