工作术: 软件开发工程师的7个不良习惯
问题背景
开始学习编程或进行编程语言切换时时,难免会出现如下的状况:
- 打开教程给你链接,但进度却迟迟没有更新
- 只看视频,却没有写下第一行代码
- 开始启动项目,但是却迟迟没有完成
……
那就需要开始改变!!!
解决方案
避开如下缺点,那我们在开发路上,一定会更有帮助!!
无脑的复制粘贴
程序员经常做的事 ==> 全选,复制,粘贴(ACV)。这看起来是在学习或工作中最快的方式。因为没有人会傻乎乎的去写那么多的代码。但是真的有理解其中的逻辑吗?如今AI可以生成绝大多数的代码,但也难免会出现生成的代码出现无法运行的状况。那就会变成无休止的调试,因为并没有理解其中的逻辑。
应对方式
- AI生成代码或找打项目中现成的代码,请先花时间去理解其中的逻辑,再ACV
相信我,大脑会感谢你进行额外的锻炼。
电子产品的干扰
不知道大家会不会有如下的状况, 信心满满的坐在电脑面前准备开始学习,然后打开收集开始刷短视频或B站或是打开聊天软件开始聊天!!! 然后不知不觉,你的IDE 已经打开不知道多久时间,却没有写下一行代码,然后就是到点开始关电脑, 上床休息了!!
应对方式
请将手机放到你手无法轻易拿到的地方,然后再打开你的电脑,进行软件开发相关的学习。这样你会更专注!
无规划的编码
动手写代码之前,请先规划,不要上来就写。前后端均如此,请对你的功能或画面进行拆解,约定好前后端的沟通的Interface!! 不要开发完成后,前后端再商量!!这样会让对接的时间进行增加,且需要对已经写好的代码再进行调整。
应对方式
将功能进行拆分, 使用诸如思维导图或流程图的方式,对功能进行拆解,这样就不会出现毫无计划的状况。及时再编码当中会迷路,但你至少会知道你将去向哪里!
不写注释
我想针对这一点,不少人会提出:“好代码不需要添加注释”来进行反驳!
但是请当心,你要考虑到的是,你的代码是不是好代码, 另一个是随着时间的推移,你还能在没有注释的情况下,快速理解到代码的功能逻辑吗?其实注释,只是一种手段,他不是目的。注释的目的就是为了方便代码的阅读。所以请在代码中留下适当的注释!
应对方式
- 适当的添加注释
添加注释就是给未来阅读代码的人,留下一个指引,方便快速理解
项目开始却从未结束
我个人在网络上找到过不少教程,也付费学习不少。但有不少的项目,都是只开头但没有结尾。只看了开头的一两节,或是大半但都不是最后一节!!
应对方案
强迫自己去完成自己已经开始做的事情, 即使学习的兴奋感已经消失。完成一件事情,也许并不会完美,但是完整的教程,不同的业务场景,不同的设计方式。都会让你学到一些新东西。同时也会得到满足感!
无基础练习
所谓基础不牢,地动山摇。我的技术栈历程: Python => Node => C# => Java, Vue => React => Angular。我不少次因为项目时间的压力,我都是强行绕过基础,直接上手。因为我认为我已经有这个基础了,编程其实都一样。
这种说法,不完全错,因为基础语句就那么多,只是写法不同。但,正式因为每个语言设计思想的不同,才划分成不同的流派。每一个语言都有自己独特的写法,包括数据处理, 例如python的pandas,C#的LinQ 都是不错的工具和语法。
在面对实际的业务场景, 我就意识到自己的基础已经摇摇欲坠。 很多技术性的名词,影响中也有点模糊。
应对方案
定期重温基础知识——编码原则,算法与数据结构,基础的一些特性、设计模式,软件开发方法。所谓:“温故知新”
Give me six hours to chop down a tree, and I will spend the first four sharpening the axe. — Abraham Lincoln.
给我六个小时砍树,我会用前四个小时磨斧头。- 亚伯拉罕-林肯