新入行程序員應知的十個秘密
初出茅廬的你帶著仍殘留墨香的畢業(yè)證書踏上工作崗位,馬上就被書上沒寫的規(guī)則和各種繁雜的日常事務(wù)來了個下馬威。這樣的故事實在是司空見慣,編程工作也不例外。
沒有幾個學生能 100% 為自己的第一份真正的工作做好準備。如果你不想成為其中之一,請學學以下這 10 項無需手把手指導就能學會的基本技能: 1、版本控制系統(tǒng)(VCS) VCS 也許是計算機課程最大的疏漏。這些課程光記得教如何寫代碼,但卻往往忘記教學生如何去管理代碼。每一個程序員都應該懂得利用 Git 或 Subversion 有效地創(chuàng)建 repository(倉庫),編輯與提交代碼,進行分支與合并,了解項目工作流。 2、學會寫作 身為程序員要寫的不只有代碼。你還要寫項目的發(fā)布說明,給版本控制寫提交消息,在系統(tǒng)里面寫漏洞報告。這些和許多地方都需要清晰有效的文字交流—但這個技能計算機科學卻很少強調(diào)。 3、正則表達式 正則表達式本身就是一門語言,每一個現(xiàn)代程序員都要擅長。每一門現(xiàn)代語言都支持正則表達式或者有相關(guān)標準庫。如果代碼需要校驗某字符串是否含有 5 個字符、1 個破折號和 1 個數(shù)字,你應該馬上就能寫出 /^ [ A-Z ] {5}-d$/。 4、庫的使用 現(xiàn)在已經(jīng)是 2014 年,所以沒人需要用正則表達式從 URL 析取主機名了。因為每一門現(xiàn)代編程語言都有執(zhí)行常用功能的標準庫。 程序員需要明白,那些經(jīng)過開發(fā)、測試和調(diào)試的代碼通常要比自己重新寫的代碼更好。更重要的是,無需編寫的代碼實現(xiàn)起來要快得多。 5、SQL 很多人的 SQL 都是在工作中學會的。數(shù)據(jù)庫怎么會是選修課呢?有不用數(shù)據(jù)庫的嗎? 把數(shù)據(jù)存進平面文件的時代已經(jīng)結(jié)束了。一切東西都要進出數(shù)據(jù)庫,而 SQL 則是存取數(shù)據(jù)的語言。這是一門說明性語言,不是程序語言,所以用它來解決問題時需要新的思考方式。每一個程序員都應該了解數(shù)據(jù)庫標準化基礎(chǔ),能夠執(zhí)行 SELECT(及 INNER、OUTER JOIN)、INSERT、UPDATE 和 DELETE。 6、會用 IDE、編輯器及 CLI 工具 只懂用鋸子的木匠永遠也無法出師,所以計算機專業(yè)畢業(yè)的人只懂 Notepad 或 pico 令人驚詫。編程工具幫助操縱代碼及其他數(shù)據(jù),令程序員生活變得容易。所以每一個程序員都應該知道命令行、shell 腳本、find、grep 及 sed 的使用。 7、調(diào)試 每一個程序員都應該知道利用交互式調(diào)試器或在代碼中點綴一些輸出語句來調(diào)試程序。通過逐步求精來跟蹤問題的能力實在是太重要了。 8、防錯性編程 錯誤總是難免的,哪怕是明星程序員也不例外。失控是世界的常態(tài),出錯毫不奇怪。防錯性編程正是理解了這個事實。如果東西不會不出錯,我們就不會檢查文件打開成功與否,不會檢查客戶 ID 是否合法數(shù)字,不用測試代碼是否允許正確。 程序員需要知道,編譯器告警是有用的工具,可讓我們生活得更舒適,而不是要避而遠之的麻煩事。每一個程序員都應該知道為什么每一個 PHP 程序都要這樣開頭: set_error_reporting ( E_ALL ) 每一個 Perl 程序都要寫上這些語句: use strict; use warnings; 9、團隊協(xié)作 很少編程工作會讓你自己一個人完成,如果你經(jīng)常這么做,智力會受損,表現(xiàn)會變?nèi)酢D愕拇a必須與別人的交互或者混合。再有才的程序員,如果無法與別人協(xié)作,都會給項目造成負面影響,并迅速成為組織的負擔。 10、利用現(xiàn)有代碼 在學校的時候,每一次作業(yè)都是一個新項目。但現(xiàn)實世界不是這樣的。對于剛工作的人來說,所接到的第一項任務(wù)往往是修改代碼漏洞。然后,再在現(xiàn)有代碼庫的基礎(chǔ)上為現(xiàn)有系統(tǒng)增加一個小功能。設(shè)計新代碼那是幾個月后的事情,如果幸運的話。 該文章在 2014/6/9 13:17:50 編輯過 |
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |