一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

寫給即將入行的程序員的一封信

  首先,歡迎來到程序員的世界。在這個世界上,不是有很多人想創造軟件并解決問題。你是一名hacker,屬于那些愿意做一些有挑戰性的事情的人。

  當你不創造東西時,你只會根據自己的感覺而不是能力去看待問題。

  對于下面的文字你不必完全接受,所有這些來自一個其貌不揚的程序員。我喜歡把事情做到最好,而不是對原來的東西修修補補。

  僅僅是因為愛好開始做一些創新,這是一個很好的開始!如果你說我要先學習一下再開始做那么你永遠不會真正開始。每個人都需要從某個地方開始,所以現在打開你的編輯器開始寫代碼吧。

  下面是一些很重要的建議,雖然有人并不認同,但我保證你看完我的分析以后會站在我這一邊。一開始,先不要管算法和數據結構。大多數簡單的程序不需要用到算法和數據結構,所以當你真正需要時再去學習。編程一段時間以后,你就會知道在哪些地方用到他們。這時知道算法的名字并了解它們的功能,然后找一些相關的論文去理解算法并動手編程實踐。如果沒有現成的函數庫(其他程序員提供的可重用代碼),你用自己喜歡的編程語言來實現它。

  0. 選擇一門好的編程語言,一門你自認為可以用它快速地做出一些有用東西的語言。

  不要選擇C語言作為你第一門編程語言。也許選擇C語言會給你一種過時的滿足感。雖然它比早期的匯編語言提供了更好語法描述,但是今天C(或者C++)不是能夠快速編寫軟件的語言。毫不偏袒的說,我建議你學習一種動態語言。選擇一種你覺得語法(文檔)讓你使用起來更舒服的編程。為此,你可能需要花費一些時間來在幾種不同的語言之間進行比較。這么做目的不是為了讓你感覺更好或者讓編程更容易。更快地完成自己的作品并且能夠看到成果,才是激勵你編程的源動力。不要選擇一門需要某種重量級的IDE(IDE是一種能夠幫助你編寫并運行代碼的工具)才能輕松編程的語言。你所需要的僅僅是一個文本編輯器。(注:原文并沒有標號,是我們加上的,請大家別忘記了哦,我們是從零開始數數的。:) )

  1. 選擇一個好的編輯器。

  編輯器對程序員而言,就是像是弓對弓箭手一樣重要。這里有一些推薦的編輯器:

  • SublimeText 2 如果你剛開始編程,推薦使用SublimeText 2
  • Emacs 學習曲線陡峭,快捷鍵復雜。如果你想定制自己的使用習慣,需要學習Emacs Lisp.
  • Vim 不僅操作簡潔而且它默認包含在linux的發行版中,所以深受大家歡迎。我開始使用了2年Emacs。由于Emacs的快捷鍵操作過于復雜,我的雙手開始經常疼痛,這迫使我轉向了Vim陣營。了解Vim的快捷鍵是非常有必要的。當你在遠程的服務器上編輯代碼時,你唯一不需要安裝的編輯器就是Vim。

  注意!Emacs和Vim可能已經成為成為古董了。但是,它們都具備一些現代編輯器多不具備的功能。

  2. 選擇一個你可以從中學到東西的操作系統

  Windows不會教會你任何東西。使用Windows你唯一學會的就是打開一個exe(可執行)文件來安裝軟件和使用它。可能剛開始的時候你會覺得很酷,但是長遠來看,如果你立志成為一個web開發人員,可能還是要具備基本的linux知識,尤其是當你要發布程序的時候。Linux也允許你根據自己的要求來定制程序。Macs也很酷,但是我認為你現在經濟上還負擔不起。

  3. 不要通過復制粘貼來做備份

  一個新手程序員通常會把文件復制粘貼到一個臨時目錄下面來進行備份。這也許也是他們唯一知道的方法。不要那么做!你需要使用版本控制軟件。我強烈推薦使用Git,它是個目前很流行的版本控制工具,而且使用起來非常簡單。對一個Git新手,有一個良好的社區和很多參考資源來學習。(除了Git之外,還有mercurial, darcs, fossil等等。但是我還是建議從Git開始,我有很多的理由來支持Git,這里就不多費口舌了。)

  4. 知道去哪里尋求幫助

  參加一個和你相關的(你使用編程工具相關的)程序員社區。比如StackOverflow就是程序員的Facebook。那里沒有消息狀態和回復,取而代之的是問題和答案。除此之外還要學會使用IRC。IRC是一種老式的聊天室,現在還在被大多數開發人員用來分享技術信息和幫助解決問題。

  5. 培養你的禮儀

  知道什么時候問問題。你遇到的大多數問題都是別人碰到過并且在InterNET上能夠找到解答的。在IRC或者任何論壇里發問之前,先搜索一下google(或者blekko)來看看是不是有現成的答案。在IRC上問問題需要有耐心。永遠記住,人們只是處于好心來免費幫助你。有時你發問以后需要幾個小時才能有回復。所以,耐心等待。除此之外,記得問問題的時候要禮貌。世界很小,你怎么對待別人,別人就會怎么對待你。

  6. 結交朋友,技術書籍只能教你解決常見的問題(他們說:書是死的)

  當你在搗鼓一些程序或者從程序的作者那里學習,你能學到一些書本上沒有的東西。當你散步的時候,請和遇到的朋友打招呼。你肯定不是唯一的程序員。和其他的程序員一起交朋友一起工作。你會注意到,當一群技術愛好者在一起的時候,不論話題是從什么地方開始,最后總是以技術話題收尾。這是必然的現象。所以你可以盡情參與。在你的黃金年齡努力編程,我能告訴你的是,我在開始6年前尋找朋友并開始討論編程,從那時起才學到那些書本和文章不會我的東西。所以我總是說,我的編程經驗有6年,因為只有那個時候開始,我才開始與人交流并開始感覺真正地開始學習編程。

  7. 參加開源項目

  為開源項目編寫代碼能帶來回報。這不僅僅是幫助別人,你留下的代碼會被其他人使用或(可能)改進。當別人給你的代碼添加功能或者提出修改意見時,也是在提高你的編程水平。開源軟件項目不一定要是一個大工程,編寫一個下載youtube視頻的小程序也是很有用的。更重要的是,你會驚奇地發現你編寫的代碼會成為與他人有效溝通的橋梁。其實關于參與開源項目,伯樂在線編譯的不少有關程序員的文章都是如此建議。
  最后,若干年之后如果本文的內容曾經對你有一點點的幫助,作為回報請寫一封類似的信給希望開始編程并不知如何入手的朋友,有可能的話請糾正本文中過時的內容。

  智者說過,掌握某個東西需要10年或10000個小時,也就是漢語中的十年磨一劍,所以不用著急。

it知識庫寫給即將入行的程序員的一封信,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 精品一区二区三区四区五区六区 | 国产成人精品亚洲2020 | 国产精品自在线观看剧情 | 日本欧美一区二区 | 精品色综合| 91嫩草国产线免费观看 | 欧美另类videosbest喷潮 | 黄色美女免费看 | 91视频精品| 思思久久这里只精品99re66 | 精品国产一区二区三区麻豆小说 | 91李宗精品72集在线观看 | 韩国免费特一级毛片 | 精品国产91乱码一区二区三区 | 成人亚洲视频 | 久久中文字幕综合不卡一二区 | 久久手机免费视频 | 高清在线观看免费 | 日本精品久久久久久久久免费 | 丁香六月婷婷激情 | 福利片 在线 | 久久国产精品偷 | 黄色网址免费在线 | 91青青国产在线观看免费 | 亚洲综合伊人色一区 | 图片区小说欧洲区 | 午夜大片网 | 久久久久久久国产a∨ | 一区二区三区免费视频播放器 | 午夜爽爽性刺激一区二区视频 | 国产高清精品久久久久久久 | 亚洲午夜国产精品无卡 | 欧美日在线观看 | 久久爆操 | 国产百合一区二区三区 | 国产精品二区高清在线 | 91精品福利在线 | 亚洲一区中文 | 黄网免费在线观看 | 伊人网综合在线视频 | 亚洲欧美视频一区二区三区 |