一文帶你了解前端、後端、全棧的主要內容與工作職責

工程師的職責

-為網站上提供的產品和服務實現一流的Web界面,優化代碼並保持良好兼容性。

-Web前端表現層及與前後端交互的架構設計和開發。

-JavaScript程序模塊開發,通用類庫、框架編寫。

-利用各種Web技術模擬開發產品原型。

-配合後臺開發人員實現產品界面和功能。

-Web新技術調研和資訊整理。

-精通HTML/XHTML、CSS,熟悉頁面架構和佈局,對Web標準和標籤語義化有深入理解。

-精通Ajax、JavaScript(或者ActionScript)、DOM等前端技術,掌握面向對象編程思想。

-熟悉一種以上後臺開發語言(如PHP/Java或C/C++/.NET)以及一種數據庫(如MySQL/Oracle),有Linux系統操作。

web前端開發工程師需要長期的web開發經驗,例如:

-對Web技術創新及豐富互聯網應用開發(Rich Internet Applications)有濃厚興趣。

-對用戶體驗、交互操作流程、及用戶需求有深入理解。

二、後端方向

是什麼給網站前端提供支持?數據存放在哪裡?這就涉及後端內容了。網站後端包括服務器、應用還有數據庫。後端開發者構建並維護這些組件,為網站提供多方面支持。

技能與工具

為了讓服務器、應用、數據庫能夠彼此交互,後端工程師需要具有如下技能:

用於應用構建的服務器端語言: PHP, Ruby, Python, Java, .Net 等;

數據相關工具: MySQL, Oracle, SQL Server 等;

PHP框架: Zend, Symfony, CakePHP等;

版本控制工具:SVN, CVS , Git 等;

還要熟練使用 Linux 作為開發和部署環境。

工程師的職責

在Web開發世界中,大多數後端開發人員從事於構建他們正在工作的應用程序背後的實際邏輯。

通常,前端開發人員構建用戶界面,而後端開發人員編寫代碼,使其工作。

例如,前端開發人員在應用程序中創建一個界面,上面有一個按鈕,按下按鈕來獲取客戶的數據。

後端開發人員寫可使得按鈕工作的代碼,通過指出從數據庫中提取哪些數據並將其傳回到前端(並最終顯示在那裡)。

後端開發人員也可能會大量參與系統架構,決定如何組織系統的邏輯,以便能夠正常維護和運行。

他可能會參與構建框架或系統架構,以便於更容易編寫程序。後端開發人員比前端開發人員花費更多的時間在實現算法和解決問題上。

三、全棧

有時前後端之間並沒有明確的界限,“前端開發者通常需要額外學習後端技巧,反之亦然,尤其在特定市場條件下”,Matranga 說:“開發者需要跨領域知識,有時甚至需要成為全才。”

全棧工程師,最初是6年多以前由 Facebook 帶動的概念。全棧的核心,是指這批開發者能夠承擔包括前端、後端在內的所有功能開發任務,他們擁有一個技能全家桶。

“能夠同時承擔服務器端和客戶端工作會為你帶來更多機會,” Grovo 的全棧工程師 Federico Ulfo 說 “當然這也就意味著更多的挑戰。以廚藝作類比,掌握烹飪和烘焙都需要時間與經驗積累,同時掌握兩者要花費更多精力。照著菜譜做誰都可以,我此處所說的是做出真正美味東西的能力。”

技能與工具

-通過終端連接到非圖形化界面環境的遠程服務器

-基本的 shell 腳本編程

-管理服務器的用戶和用戶組

-管理服務器程序比如 Apache 和 Nginx,以便其服務於應用程序

-管理防火牆和權限

-安裝新軟件,更新軟件版本

工程師的職責

懂得如何通過 Docker 或虛擬機比如 Vagrant 來創建良好、健康、隔離的開發環境。

熟諳版本控制系統,才能夠可靠地生成可共享的、協作的代碼庫及其備份, 並且隨時間流逝跟蹤其變化。

除了實際管理的或虛擬化的服務器,開發者可能還需要知道雲 – 託管平臺,像 Heroku、Google Clould、Azure、AWS 等。

看了這些,是不是對於選擇職業有了更清晰的認識了呢?


分享到:


相關文章: