12 岁开始学编程,17 岁总结了 7 个重要教训!
原文:https://www.freecodecamp.org/news/7-important-lessons-about-programming-that-ive-learned-at-17-516ae619686/
作者:Alec Jones,譯:彎月,責(zé)編:屠敏
譯文:CSDN(ID:CSDNnews)
以下為譯文:
大家好,我名叫Alec,今年17歲,我從12歲起就開始學(xué)習(xí) Web 編程開發(fā)了。我遠(yuǎn)非優(yōu)秀的開發(fā)人員,但我學(xué)到了一些普通開發(fā)人員應(yīng)該知曉的經(jīng)驗(yàn)教訓(xùn)。
以下是我學(xué)到的一些經(jīng)驗(yàn)教訓(xùn),我認(rèn)為每個(gè)開發(fā)人員,特別是新手,都應(yīng)該了解這些經(jīng)驗(yàn)教訓(xùn)。
1、沒有人無(wú)所不知
沒有開發(fā)人員知道一切,所以你也不需要知道一切。
作為一名開發(fā)人員,你需要用心學(xué)習(xí)知識(shí),例如在PHP 5.6版本中操作數(shù)組的方法,除此之外還有很多重要的技能需要掌握。是否知道這些小知識(shí)點(diǎn)無(wú)關(guān)緊要,即便忘了也可以上網(wǎng)搜索。
作為開發(fā)人員,很多技能遠(yuǎn)勝于學(xué)習(xí)這些微不足道的知識(shí),例如:
提高解決問(wèn)題的能力
提高團(tuán)隊(duì)合作和溝通技巧
增加對(duì)編程概念和語(yǔ)言的了解
創(chuàng)建優(yōu)秀的項(xiàng)目來(lái)展示你的工作
專注于編寫整潔高效的代碼
成為開發(fā)人員的一個(gè)好處是你不需要知道一切。你只需要知道解決問(wèn)題的方法。
2、Bug有助于學(xué)習(xí)
相信你們都聽過(guò)《五只小猴子》的童謠,下面是bug版的童謠:
99個(gè)Bug在代碼里鬧,
99個(gè)Bug在代碼里鬧,
打個(gè)補(bǔ)丁,把1個(gè)改掉。
127個(gè)bug在代碼里鬧……
如果你在編程的過(guò)程中沒有遇到任何Bug,那么就意味著你什么都沒學(xué)到。
沒有遇到Bug并不意味著你是一位偉大的開發(fā)人員,你太聰明了,壓根不會(huì)犯錯(cuò)。這只能說(shuō)明類似的東西你開發(fā)過(guò)很多次,你已經(jīng)知道如何避免這些Bug。
遇到Bug說(shuō)明你成長(zhǎng)了。開發(fā)中存在無(wú)窮無(wú)盡的Bug,因此你必須學(xué)會(huì)處理這些Bug,越快越好。
3、沒有必要接受正規(guī)的教育
17歲的我非常糾結(jié)這個(gè)問(wèn)題。我應(yīng)該上大學(xué)攻讀計(jì)算機(jī)科學(xué)學(xué)位嗎?
這對(duì)我來(lái)說(shuō)是一個(gè)棘手的問(wèn)題。但是,大多數(shù)讀這篇文章的人可能不是17歲,可能你們大多數(shù)人已經(jīng)工作了。
如果你大學(xué)畢業(yè),那么絕對(duì)沒必要再回去攻讀計(jì)算機(jī)科學(xué)學(xué)位。你也不需要參加編程培訓(xùn)班。
GitHub中一些有趣的項(xiàng)目可以為你代言。如果你能夠證明自己擁有編程的能力,那么你的背景并不重要。
這只是一個(gè)如何通過(guò)最佳方式學(xué)習(xí)的問(wèn)題。
我沒得選,只能在周末學(xué)習(xí)編程,因?yàn)槲也荒茉诟咧衅陂g請(qǐng)6個(gè)星期的假去參加培訓(xùn)班。
如果你想回到大學(xué)攻讀計(jì)算機(jī)科學(xué)學(xué)位,或參加為期8周的培訓(xùn)班,那盡管去吧。但這沒有必要。
4、上網(wǎng)搜索也是一門技術(shù)
如果你想成為一名出色的開發(fā)人員,那么就需要加強(qiáng)上網(wǎng)搜索的能力。能夠找到你所需要的解決方案和代碼至關(guān)重要。
你需要頻繁地上網(wǎng)搜索,尤其是在學(xué)習(xí)一種全新的技術(shù)的時(shí)候。
有時(shí),你需要將一些不明的東西添加到代碼中。有時(shí),你需要找到一個(gè)不太理解的問(wèn)題的解決方案。但好消息是,網(wǎng)上都有答案。
5、勤思考
在編寫代碼的時(shí)候,你需要思考:“如何才能用最好的方式編寫這段代碼?”
這方面我做的并不好,所以經(jīng)常寫出水平很次的解決方案。通常,一旦腦海中涌現(xiàn)某個(gè)解決方案,我就會(huì)立即動(dòng)手寫出來(lái)。大多數(shù)時(shí)候,問(wèn)題的第一個(gè)解決方案并不是最好的。
寫代碼無(wú)需花費(fèi)太多時(shí)間。任何人都可以快速地編寫代碼,但結(jié)果往往很草率。你需要花時(shí)間想出一個(gè)優(yōu)秀、穩(wěn)定的解決方案。
測(cè)試驅(qū)動(dòng)可能很無(wú)聊,但是它能夠極大地推動(dòng)你勤思考,因?yàn)槟惚仨毧紤]清楚期望的功能以及實(shí)現(xiàn)方式。如果你提前做計(jì)劃,就無(wú)法動(dòng)手寫代碼了。
當(dāng)然,凡事都有例外。我并不是說(shuō)你應(yīng)該安靜地坐下來(lái)仔細(xì)考慮每一行代碼。
然而,勤思考能夠?yàn)槟闶s重構(gòu)和改bug的時(shí)間。
6、當(dāng)心網(wǎng)上的教程
剛開始學(xué)習(xí)編程時(shí),可以從網(wǎng)上找一些教程,但我認(rèn)為你應(yīng)該利用的資源遠(yuǎn)不止這些教程。
當(dāng)你按照教程學(xué)習(xí)編程時(shí),實(shí)際上可能什么都學(xué)不到。雖然你可能學(xué)到了一些知識(shí),但你并沒有真正明白自己編寫的代碼以及這樣做的原因。
此外,這些教程還可能會(huì)漏掉一些重要的代碼。初學(xué)者更喜歡直接從教程中復(fù)制和粘貼代碼,而不會(huì)認(rèn)真思考問(wèn)題。
一種更好的學(xué)習(xí)編程的方式是構(gòu)建自己的項(xiàng)目。找到一小段代碼,然后自己編寫代碼、解決bug、閱讀文章和帖子。
最有效的學(xué)習(xí)方法是東拼西湊出一個(gè)能夠運(yùn)行的程序。
7、制表符比空格好
讀這篇文章的時(shí)候,你肯定在想:“很明顯,這個(gè)小孩肯定喜歡使用空格。”非也,每個(gè)人都應(yīng)該在編程的時(shí)候,使用制表符。
我明白,每臺(tái)計(jì)算機(jī)上的制表符可能不盡相同。但是,你只需要輕輕敲下制表符就好,而無(wú)需哐當(dāng)哐當(dāng)?shù)厍么蚩崭矜I。努力成為喜歡制表符的人吧!
感謝你閱讀本文中介紹的簡(jiǎn)單而重要的經(jīng)驗(yàn)教訓(xùn)。如果你有不同的看法,請(qǐng)?jiān)谙路搅粞浴?/p>
總結(jié)
以上是生活随笔為你收集整理的12 岁开始学编程,17 岁总结了 7 个重要教训!的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 好文推荐 | MySQL binlog应
- 下一篇: 如何正确访问Redis中的海量数据?服务