前端與後端的差異


Posted by YongChenSu on 2020-12-06

前端

前端開發者的目標,是根據網頁設計師的設計圖,建立流暢、友善的使用者介面,讓使用者可以順利地與產品互動,找到並使用網站上的各種功能。同時,不斷優化產品的效能(例如:網頁載入時間)也是前端開發者重要的工作。

在網站的功能中,若有涉及資料庫,前端工程師就必須要和後端工程師合作。以臉書為例,前端工程師建立了個人資料頁面,讓用戶可以輸入姓名生日等個資並放上大頭貼,但需要串接到後端工程師建立的資料庫,讓用戶輸入的資料能夠被妥善儲存,此個人資料頁面才是一個完整的功能。

前端所需基本技能

  • HTML
  • CSS
  • Javascript

前端所需進階技能

  • CSS Framework (Bootstrap)
  • JavaScript framework (如Angularjs、Reactjs)
  • CSS processor(sass,less,stylus)
  • RWD Design
  • Grunt、Gulp(自動化工具)

後端

雖然有前端工程師打造網站的「門面」,但若要將網站上的各種功能付諸實現,例如儲存使用者帳戶資訊、購物紀錄、推薦商品、驗證帳號密碼、計算用戶點讚的內容,則需要後端工程師。

後端工程師的目標,就是處理資料,讓伺服器在茫茫資料海中,最快速地做出適合的運算,提供使用者想要的資料。為了達到這個目標,後端工程師必須要建立並優化伺服器的性能、程式碼邏輯、以及資料庫結構。

除了資料庫、伺服器,演算法也是後端工程師常要負責的項目。演算法與商業邏輯息息相關,例如當臉書決定要減少塗鴉牆上的商業廣告、或是電商希望增加某樣商品出現在推薦系統的頻率,後端工程師就需要調整演算法,讓網站上的應用程式能夠實現業主期望的商業邏輯。

後端所需基本技能

  • 主要開發語言(PHP、Ruby、C#)
  • 資料庫語法(MySQL、SQL Server)
  • 伺服器設定(apache、nginx)
  • 基本的資安防範(xss、sql injection)

後端所需進階技能

  • Framework(框架)
  • PHP:Laravel、Codeigniter、yii …
  • Ruby:Lotus …
  • C#.NET:MVC5 …
  • 串第三方API(金流、簡訊寄送服務 ..)
  • API設計(以目前形態來說,多數公司會讓後端工程師從資料庫取出資料撰寫成json格式提供給前台去呈現資料)
  • Cloud(雲端操作) (Google Cloud、Microsoft Azure、Amazon Web Services (AWS))

參考資源


#程式導師實驗計畫第四期 #前端







Related Posts

Vue props 隨筆

Vue props 隨筆

[Day02]: Docker 環境配置

[Day02]: Docker 環境配置

[Py 百日馬 Day 0] 來場 Python 百日馬吧!

[Py 百日馬 Day 0] 來場 Python 百日馬吧!


Comments