程序員在周末學(xué)習(xí)的8個實用技術(shù)
無論你是剛開始接觸軟件項目開發(fā)的新手程序員,還是一個正在尋找拓展技能的經(jīng)驗級軟件工程師,都有許多學(xué)不完的新技術(shù)等待著你去拓展。當(dāng)然如果你可以在周末學(xué)習(xí)下面這些實用技術(shù),那就更棒了。學(xué)會一下8個技術(shù)或許會讓你以后有更多的周末休息時間。
熟練掌握版本控制
如果你從來沒有使用版本控制的經(jīng)歷,那么也許你現(xiàn)在會處于一種很艱難的境地:無法將代碼恢復(fù)到上一個版本,或許你只能將你的代碼以文件命名的方式進行備份,比如index_17.html,這是多么痛苦的一件事情。
版本控制意味著你可以將你的代碼恢復(fù)到任意的版本——甚至精確到小時或者分鐘。如果你使用過Google Drive,也許會對恢復(fù)到上一個版本的功能比較熟悉,對,這就是簡單的版本控制原理。
靈活運用文本編輯器
程序員每天都會將大量的時間花在各種文本編輯器上面,你應(yīng)該根據(jù)自身習(xí)慣和開發(fā)環(huán)境的需要,選擇一款可以提高工作效率的文本編輯器,并且不斷地深入學(xué)習(xí)它的使用方法。
如果你更喜歡在終端上工作,那么這里推薦使用VIM和Emacs;如果你喜歡使用本地文本編輯器,那么可以嘗試一下Sublime Text;如果你喜歡在Mac環(huán)境中工作,也可以試試TextMate。
僅僅在文本編輯器上工作是不夠的——你應(yīng)該嘗試安裝一些插件和擴展,讓自己的工作可以更加舒心。
強大的SQL
一個應(yīng)用軟件必須使用文件或者數(shù)據(jù)庫來存儲用戶的數(shù)據(jù),正因為數(shù)據(jù)庫查詢快速,并且提供更優(yōu)的查詢結(jié)果,我們的應(yīng)用便更親睞于數(shù)據(jù)庫。
SQL是一種數(shù)據(jù)庫查詢語言,但是僅僅是學(xué)習(xí)基礎(chǔ)的SQL對我們構(gòu)建大型復(fù)雜的應(yīng)用系統(tǒng)是遠(yuǎn)遠(yuǎn)不夠的,很多時候我們需要進行多表,甚至是多庫的聯(lián)合查詢。
所以,我建議程序員在周末的時候可以加強SQL方面的練習(xí)。
神秘的NoSQL
NoSQL或者也叫Not Only SQL,它有著和傳統(tǒng)的關(guān)系數(shù)據(jù)庫不同的數(shù)據(jù)存儲格式,NoSQL數(shù)據(jù)庫更加關(guān)注數(shù)據(jù)庫的可用性和水平擴展能力,它也有類似SQL的數(shù)據(jù)庫查詢語言。
NoSQL根據(jù)不同的數(shù)據(jù)組織結(jié)構(gòu)有幾種不同的類型,盡管像Quora這樣的大公司并不使用NoSQL,但是如果你有非常龐大的數(shù)據(jù)需要處理,那么NoSQL是一種非常棒的選擇。
愛上終端
對于一些特定的工作任務(wù)來說,使用終端會比使用可視化界面來的方便。舉個例子,你需要從成千上萬個字符串中查找并替換相應(yīng)的字符串——想象一下這需要在幾秒內(nèi)完成。
如果你在遠(yuǎn)程服務(wù)器上工作,那么你更加需要擅長使用終端。盡管你可以在遠(yuǎn)程服務(wù)器上使用可視化界面來進行操作,但是使用終端會更快一些。還有更重要的一點原因是——使用終端將更加節(jié)省帶寬,因為這樣僅僅需要傳輸一些文本信息而已。
對于終端初學(xué)者來說,周末有空了可以從簡單的文本拷貝開始學(xué)習(xí),過一段時間,你會發(fā)現(xiàn)自己會愛上終端了。
控制遠(yuǎn)程服務(wù)器
作為一名程序員,你肯定不會將代碼局限在本地的,如果開發(fā)了一款應(yīng)用,你肯定會將它展示給全世界的人看。這樣你就需要登錄遠(yuǎn)程服務(wù)器,并且設(shè)置相關(guān)信息,以便自己的應(yīng)用可以在服務(wù)器上正確運行。
學(xué)會單元測試
另外一個重要的技能就是單元測試,當(dāng)你在開發(fā)一個龐大的項目時,是不可能寫完所有的代碼后才去測試應(yīng)用的正確性的。我們***將代碼分割成幾個部分,然后對每一個部分進行單元測試。
具體的單元測試方法根據(jù)不同編程語言有所區(qū)別,但是核心理念是一致的——寫一部分代碼,測試一部分代碼。
學(xué)會使用Markdown
我將Markdown放到***是因為它對你寫代碼并沒有多大關(guān)系,但是這對那些習(xí)慣在網(wǎng)絡(luò)上發(fā)布信息的同學(xué)來說就非常重要。比如說編寫README文件,并將其添加到Github項目中。
Markdown是一個將文本轉(zhuǎn)換成HTML的工具,它有自己的語法和標(biāo)簽,這些語法標(biāo)簽經(jīng)過轉(zhuǎn)換后成為標(biāo)準(zhǔn)的HTML結(jié)構(gòu),這對有些Web開發(fā)者來說有一定的實用價值。
各位程序員,這個周末你準(zhǔn)備好了嗎?
譯文鏈接:http://www.codeceo.com/article/8-tech-programmer-learn-weekend.html
英文原文:8 Essential Skills Developers Can Learn in a Weekend
翻譯作者:小峰