Web探索之旅 | 第四部分 :Web程序員

>作者 謝恩銘,公衆號「程序員聯盟」(微信號:coderhub)。 轉載請註明出處。 原文:https://www.jianshu.com/p/a3d47eebd3b5


>《Web探索之旅》全系列

內容簡介


  1. 前言
  2. 什麼是 Web 程序員?
  3. 如何成爲 Web 程序員?
  4. 成爲優秀 Web 程序員的祕訣
  5. 總結

1. 前言


大家好,經過上一課 Web探索之旅 | 第三部分第三課:協議,我們結束了第三部分。終於來到了【Web探索之旅】的最後一部分。

我們的第二和第三部分都略有難度,不過第四部分和第一部分一樣,會比較輕鬆愉快。

這一課我們來聊一聊 Web 程序員,Web 的文化,如何成爲一名優秀的 Web 程序員。

或許看完這部分,你會躍躍欲試,想要成爲一名 Web 程序員也不一定。畢竟現在 Web 程序員還是比較喫香的。

2. 什麼是 Web 程序員?


很多公司都有 Web 程序員,負責不同的部分,每個公司的 Web 程序員所做的工作可能大相徑庭。要給出一個統一定義比較難。

不過,一般來說,我們可以將 Web 程序員(這些 Web 程序員都有一個共同的目的:維持公司的網站運行良好)分爲幾大類:

FrontEnd


Frontend 表示“前端”。一般我們所說的 Web Frontend 就是指“Web 前端程序員”。主要負責網站的外觀,也就是“顏值”擔當。一般精通 HTML,CSS 和 JavaScript 等客戶端語言。

BackEnd


BackEnd 表示“後端”。一般我們所說的 Web Backend 就是指“Web 後端程序員”。與 Web 前端程序員配合,主要負責網站服務器端的編寫和維護,也就是“功能”擔當。一般精通 PHP,Java,Python,Ruby,C#,或 Go 等服務器端語言。

QA Manager


QA 是 Quality Assurance(質量保證。Quality 表示“質量”,Assurance 表示“保證”)的縮寫。manager 表示“主管”。所以 QA Manager 就是我們平時所說的“質量主管”,他可以充當客戶的角色,來使用網站。負責網站的正確運行,對網站的質量進行監控,如果有什麼問題或有什麼需要的新功能,會通知 Frontend,Backend 或 System Administrator 來處理。可以想象是一個醫生,確診網站的“疾病”,對網站的健康負責。

System Administrator


System 表示“系統”,Administrator 表示“管理員”。所以 System Administrator(簡稱 SA)就是我們平時所說的“系統管理員”。他就好像一個很厲害的老工程師傅,可以想象提着一個工具箱,到機房裏去修修弄弄(當然其實並不見得是這樣)。他保證 Web 的服務器可以正常運作,負責一些硬件的維修和管理,使網絡暢通無阻,而且一般的 SA 都熟悉 Linux 技術,至少會用 Linux 命令行吧。

Full Stack


Full 表示“全部,完全的”,Stack 表示“棧”。所以 Full Stack 就是我們平時所說的“全棧程序員”或“全棧工程師”。他就好像一個“全能騎士”或者身懷絕技的“日本武士”,可以做以上四個職位的所有任務。當然,要成爲全棧工程師是很辛苦的,因爲什麼都要會。少年,珍愛生命,還是“悠着點”吧~

Web 程序員的特質


每個 Web 程序員的性格,習慣和愛好都各不相同。不過我們可以試着概括一些 Web 程序員的共同特質,或者說那些驅使他們選擇去這個公司而不是那個公司的因素。

  1. 喜歡解決複雜又新穎的問題:喜歡解難題並不稀奇,很多人都喜歡挑戰自我,但是 Web 程序員還喜歡解決新穎的問題。如果一個難題很老套又很陳舊,那他們可能提不起太大興趣。他們希望構建和維護的網站是新潮的,與衆不同。不喜歡用別人用爛了的模版、樣式。

  2. 不喜歡被約束,喜歡合理利用時間,不喜歡沒效率的工作方式。如果看過《社交網絡》這部電影,那你會注意到 Facebook 公司內部的工作環境是非常舒適,輕鬆,和諧美好的。諸多 Web 程序員喫住在一起,就像一個大家庭。而大家也許也知道 Google(谷歌)的工作環境也是很不錯的,不是那種高壓緊張的工作氛圍,而是給你自己最有效安排工作的機會。

3. 如何成爲 Web 程序員?


要成爲 Web 程序員其實不難,這一節想要告訴大家的是:你也可以成爲一個非常厲害的 Web 程序員。

聽到這話,也許你會說“哪裏哪裏,我肯定不行的。這麼多編程語言,這麼多協議等,好複雜的。好的 Web 程序員不是我想做,想做就能做...”

但其實真的沒有那麼複雜。

你可以按照以下順序:

  1. 學完這個 Web 課程(幸好我們已經完成了)。

  2. 學習 HTML5 和 CSS3 :這兩門客戶端的語言可以讓你自己寫一個網站,從零開始。

  3. 學習一門服務器編程語言:Java,PHP,Python,Ruby,Go,等。隨你自己的意思選擇其中一個來入門,選擇你最喜歡的,用起來最順手的,社區支持更好的。這些服務器端的語言可以幫我們產生 HTML 的網頁。所以這也是先學習 HTML 的原因。

  4. 學習 JavaScript:雖然一般來說 JS 是客戶端的語言,但是藉助 Node.js 也可以實現服務器端編程的。而且 JS 可以使我們的網頁變得動態起來,具有交互性。

  5. 學習 Linux 命令行:可以瞭解 SA(System Administrator,系統管理員)是如何使服務器正常工作的,如何與服務器交互。因爲大多數服務器都使用 Linux 或者 Unix 系統。

還有幾點,是在編程語言之外的,也很重要:

  1. 緊跟技術潮流:每天去 CSDN 等全國數一數二的大型編程社區,看看首頁的新興 Web 技術專題。如果不使用最新最好的技術,而死守一些老掉牙的技術,任你編程水平再高,也是沒用的。

  2. 練習:經常編程。

  3. 熱愛 Web 編程:如果你嘗試了 Web 編程之後,發現自己不適合這門職業,或者這不是你興趣所在,那麼可以換個職業。不過,也有很多人是慢慢喜歡上 Web 編程的。所以不妨試試。

4. 成爲優秀 Web 程序員的祕訣


要成爲優秀的 Web 程序員沒有那麼容易,需要歲月的沉澱。但是也沒有那麼難,因爲隨着時間的推移,你自然就越來越厲害了。

但是心態一定要擺對,不必一上來就學習所有知識點,所有編程語言。一步一個腳印,把自己位置放對了。要成爲優秀 Web 程序員,我覺得可以照以下幾點來實行:

  1. 認識到你可以在任何年紀(只要不是老的不能打字)開始做 Web 編程,也不需要太在意你以前學過什麼:有的人認爲只有智商很高才能做程序員,錯了,很多程序員智商並不高(比如我,哈哈哈)。有的人認爲一定要很年輕就開始學習編程,才能成爲優秀的程序員。錯了,現在網上那麼多好的教材,只要你願意,有什麼學不會呀。

  2. 認識到你最大的敵人是自己:我們常常抱怨說自己不可能做到這樣那樣,但其實是我們不夠努力。Web 開發有那麼難嗎?我覺得真的不難,至少比嵌入式或人工智能簡單。

  3. 用新技術,新理念裝備自己:編程技術日新月異,Web 技術的演進更是快得超乎想象。保持一個不斷學習,不斷充電的好習慣,你會比別人走得更遠。可能別人用老技術花很多時間做出來一個很慢的東西,你用最新技術分分鐘搞定,而且運行還比他的快,人艱不拆啊。

  4. 學習英語:我一直覺得要成爲程序員,英語不是必須的。但要成爲優秀的程序員,英語真的大有裨益。看看網上優秀的論壇,教程,技術社區都是英語的,而且很多技術的文檔和 API 沒有中文版,即使有中文版,翻譯的水準也是層次不齊,萬一翻得不準確呢,那不是毀一生麼。英語並沒有那麼難,比編程入門簡單多了吧,就是反覆,堅持。先把語法鞏固了(好比英語這座大廈的鋼筋混凝土底座),再豐富單詞,增加閱讀量,聽力練習,分分鐘(每天花少許時間)搞定英語。

  5. 使用一些好的工具:例如調試的好工具 Firebug(Firefox 瀏覽器的一個插件),Chrome 瀏覽器自帶的開發者工具(更多工具 -> 開發者工具)。會讓你事半功倍。

  6. 學會搜索:檢索資料是一種能力,需要慢慢培養。其實 90% 的 Web 錯誤或難題,都可以通過百度或 Google(當然了,Google 比百度好很多)找到解決方法。因爲通常我們的網頁是會顯示詳細的錯誤信息的(對了,這些錯誤信息很多都是英語的形式,所以學好英語很關鍵,可以看我的這篇文章:對於程序員, 爲什麼英語比數學更重要? 如何學習 ),你只要把錯誤信息那句話輸入到搜索欄,搜索一下,網上一般會有很多人已經遇到過這個問題了,分分鐘解決。我一直覺得,搜索引擎是很好的老師,可以幫我解決大部分問題,根本不需要去 QQ 羣,微信羣,論壇,社區花時間問別人(這樣效率不高),搜索引擎就是自己的老師。

5. 總結


  • Web 編程有很多種語言,但是我們不需要全部學習。只要學習其中的幾樣就夠了。

  • Web 程序員可以是各個年齡段,只要你不是年幼得讀不懂文字或者年老得文字讀不懂你,就可以來學 Web 編程。

  • 我們大可以嘗試着來學習 Web 開發技術,一開始不需要太深入,如果你覺得這不是你想要的,大可以改行。“沒什麼大不了。你想改,就改吧,沒有人會知道...”

  • 實踐很重要,把自己投入到 Web 開發中去,每天學習,每天進步一點點。

>這個系列課程終於完結了! 大家辛苦了,一起加油吧! 其他系列教程和更多有趣的文章,請關注我的公衆號查看~


>我是 謝恩銘,公衆號「程序員聯盟」(微信號:coderhub)運營者,慕課網精英講師 Oscar 老師,終生學習者。 熱愛生活,喜歡游泳,略懂烹飪。 人生格言:「向着標杆直跑」

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章