放弃对语法的执念吧!高级开发人员不是这么炼成的……
全文共1442字,預(yù)計學(xué)習(xí)時長5分鐘
?
圖源:unsplash
?
導(dǎo)航都用過吧?想去最近的超市,不認(rèn)識路不要慌,谷歌地圖幫你忙,去幾次之后你就不再需要地圖了。
?
搬新家后附近的體育館、飯店皆是如此,你不會永遠需要導(dǎo)航幫忙。
?
你記住了它們的位置,但并不是刻意去記住每條道路、每條可能的路線,多去幾次,這是自然而然的事。而且有時,某個地方你可能只想去一次。
?
在編程中亦是如此。
?
軟件開發(fā)新手可能會感覺很糟糕,因為他們沒能記住足夠多的語法,仍然需要查閱資料。在他們看來,這說明自己不是一個合格的開發(fā)人員。
?
開始編程之旅后最兩個常見問題是什么?
?
· 該如何學(xué)習(xí)所有語法?
· 要花多長時間掌握并應(yīng)用這些語法(前提是不查閱資料)?
?
很多人記住一些常用的語法之后,可能就覺得自己是個編程好手了。他們認(rèn)為真正重要的是能記住多少語言或者多少種編程語言和框架。
?
圖源:unsplash
?
為了能客觀地看待這個問題,現(xiàn)在來比較一下不同編程語言中用來查找字符串長度的語法:
?
· seq.length,JavaScript列表,Java數(shù)組。
· seq.size(),Java序列,jQuery表達式(不建議使用)。
· len(seq),Python。
· length seq,Haskell。
· (count seq),Clojure。
· seq.count(),Django查詢集。
· SeqType'Length,Ada數(shù)組。
· strlen(seq),C語言,空終止。
· sizeof(seq)/sizeof(seq[0]),C語言,靜態(tài)分配。
?
可以看到,每種語言或技術(shù)都有它自己的查找字符串語法,想要記住12種語言中的同類語法是很難的。使用多種編程語言的開發(fā)人員很難記住他們用過的所有語法,他們甚至可能懶得去學(xué)這些語法。
?
語法重要到必須記住的地步了嗎?來看看高級開發(fā)人員是怎么說的:
?
?
?
?
?
?
?
?
歐麥爾·曼蘇說:“我編寫了255行代碼,包括一個工作服務(wù)器和一個客戶端。我用谷歌查詢了23次,主要登陸了StackOverflow、Netty 4網(wǎng)站、Github和JavaDocs。計算一下,平均每寫10行代碼就要查詢1次!我不知道會是這樣。”
?
?
他們的坦白應(yīng)該讓各位鼓起勇氣,不必為記不住語法的所有細(xì)微之處而感到丟臉。這可能是很多初級開發(fā)人員關(guān)心的問題。實際上,各位無需記住所有內(nèi)容。
?
甚至技術(shù)招聘人員都不關(guān)心這個問題。以下是谷歌的一位工程總監(jiān)對此作出的回應(yīng):
?
?
《黑客資訊》的另一則評論談到:我不僅經(jīng)常使用谷歌,我還用它來搜索自己以前寫的東西。在谷歌上面輸入某個編程問題,答案就在我以前寫過的某個StackOverflow頁面上,這種情況不知道出現(xiàn)過多少次了。
?
如果某個答案太過久遠,我完全不記得有過這回事,我甚至?xí)?#xff1a;“哇,這個天才可真像我!”或者“這個白癡根本就不知道自己在說些什么!”
?
一位高級開發(fā)人員也在臉書小組上講了自己的故事,招聘人員問他是否對某項技術(shù)沒有經(jīng)驗,他回答:“那不過是另一種工具而已。”
?
或許他以前沒有機會使用某項技術(shù),但自己有信心可以學(xué)會。可能花不了幾個月就能熟練使用。可能只需要花幾個小時閱讀文件,然后在工作過程中根據(jù)需要盡可能多的學(xué)習(xí),而無需記住所有內(nèi)容。
?
“優(yōu)秀的工程師知道如何善用查詢。但面試官卻希望他們個個都是活字典。”
?
如今,新的語言和框架已經(jīng)出現(xiàn),現(xiàn)有的那些也經(jīng)歷了很大的變化,記住語法困難重重,而且也沒那么重要了。
?
圖源:unsplash
?
你要做的是提升自己真正的能力。剩下的事情就很簡單了:現(xiàn)在是綠燈,便順利通過;遇到紅燈,便要停下,等到綠燈亮起再繼續(xù)前進。
?
我們一起分享AI學(xué)習(xí)與發(fā)展的干貨
歡迎關(guān)注全平臺AI垂類自媒體 “讀芯術(shù)”
(添加小編微信:dxsxbb,加入讀者圈,一起討論最新鮮的人工智能科技哦~)
總結(jié)
以上是生活随笔為你收集整理的放弃对语法的执念吧!高级开发人员不是这么炼成的……的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 图片像素点获取
- 下一篇: 发票查验平台验证码识别