自学的缺点。
首先,我想说的是,我建议你自学编码,但是,有时这可能会适得其反,我认为这一点值得讨论。
开始
我从很小的时候就开始自学,如果我没记错的话,那是在 15 岁的时候(我现在 23 岁),这很困难、很乏味,但非常有趣和令人满意,这是在英国高中开设计算机科学课程之前,这意味着我从来没有真正向任何人寻求问题或最佳实践,而这正是一些问题的根源——我开始依赖谷歌。
我写的第一段代码不是“Hello World”,而是一个 Minecraft 的 mod(不过我现在还是觉得它很酷)。我记得看到 Markus Pearson 开发 Minecraft 的时候,觉得那是我见过最酷的东西,让数字和字母在电脑上互动,太神奇了!他是怎么做到的?(我当时还小……)
“让它运转起来”
刚开始的时候,我过于专注于“让一切运转起来”,而不是规划、设计、理解问题、(正确地)调试,以及确保代码干净。我和一些自学成才的朋友和同事聊过,他们也认同这一点,所以我怀疑他们的圈子比我的核心圈子和外部圈子还要大。我一头扎进了代码编写中(直到今天,我仍然会偶尔这样做)。这似乎是年轻或新开发人员会做的事情,他们为代码能运行而兴奋不已,忘记了其他一切。
“测试?”
测试...拜托,我知道你刚开始的时候从来没有写过任何测试,我肯定也没有...我低估了测试和测试代码功能的重要性,它有效...为什么要进行测试?如果您的代码不会改变,情况可能会如此,但如果会改变呢?假设您在一个大型组织工作,并且您的代码经历了许多变化,您需要确保它做了它应该做的事情。我在金融部门工作,我不能允许我编写的代码犯一个错误,因为那可能是灾难性的。不要误会我的意思,我并不完美,我不会每次都选择 TDD 方法(我应该......但我没有)。我认为总的来说我们低估了测试的重要性,这绝对是自学成才/新开发人员忽视或搁置的事情。
“老马学不会新把戏”
俗话说:“老马学不会新花样”。我同意这个说法。有些时候,我会先写代码,而不是先坐下来,先理解自己想要做什么,规划好代码,然后再开始写。这是我在一家大型组织工作时从资深开发人员那里学到的。我刚进公司的时候,我的一位好友兼同事就跟我说过:“编程的90%在于想写什么,10%在于真正地去写。 ”
当时我不太明白他的意思,因为当时我做的都是一些“简单”的东西,但是,天哪……一旦我们开始着手更大、更复杂的项目,我的经验不足就开始显露出来了。你可以证明我缺乏经验,但这些都是你应该在大学或一些非常优秀的编程课程中学习的东西。
这是一个漫长的夜晚,我只是想表达一些我的想法,还有一些观点我可能会在以后添加或写成这篇文章的第二部分,但是杜松子酒已经追上我了。
晚安,
罗斯。
文章来源:https://dev.to/goldennoodles/the-downside-to-being-self-taught-402h