0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

什么是前端開發(fā)?前端后端誰為先?

中科院長春光機所 ? 來源:中科院長春光機所 ? 2020-01-30 11:47 ? 次閱讀

作為一名開發(fā)者,你可能會想:2019 年最好的軟件開發(fā)技術和編程語言會是什么?它們又是如何被應用在軟件開發(fā)當中的?如果你在思考這個問題,那就來對地方了。這篇文章將對前端和后端開發(fā)技術做一個對比,先從基本的開始,然后逐步比較它們的不同點,比如對開發(fā)技能的要求、發(fā)展?jié)摿Α⒙殬I(yè)生涯的發(fā)展和薪水,等等。

1什么是前端開發(fā)?

前端開發(fā)主要涉及網(wǎng)站和 App,用戶能夠從 App 屏幕或瀏覽器上看到東西。簡單地說,能夠從 App 屏幕和瀏覽器上看到的東西都屬于前端。

網(wǎng)站和移動 App 的前端

我們就以你現(xiàn)在正在瀏覽的網(wǎng)頁為例。網(wǎng)頁上的內(nèi)容、圖片、段落之間的空隙、左上角的圖標、右下角的通知按鈕,所有這些東西都屬于前端。

移動 App 的前端和網(wǎng)站是一樣的。例如,你所看到的內(nèi)容、按鈕、圖片,它們都屬于前端。另外,因為移動設備的屏幕是可以觸摸的,所以應用程序對各種觸控手勢(比如放大 / 縮小、雙擊、滑動等)做出的響應也屬于前端,它們是前端的活動部分。

這些東西是由前端開發(fā)者開發(fā)出來的,他們使用了 Ionic、Swift、Kotlin、Bootstrap、Angular、Vue、jQuery、React.js 等開發(fā)技術。后面我們會更多地介紹這些開發(fā)技術。

物聯(lián)網(wǎng)的前端

任何可以連接到互聯(lián)網(wǎng)的設備都是物聯(lián)網(wǎng)設備。你可能會好奇物聯(lián)網(wǎng)設備的前端會是什么樣的。任何一種智能設備,比如智能冰箱、遠程 POS 機、智能手表、智能錢包,它們都需要提供某種界面,這樣用戶才能操作這些設備。所以,這種界面就是一種交互媒介,組成這種界面的元素就是物聯(lián)網(wǎng)的前端。

但嚴格來說,物聯(lián)網(wǎng)設備并沒有真正的前端。不過它們都裝有固件,與移動 App 的前端類似。這些固件可以用各種編程語言來開發(fā),比如 C 語言、C++、Lua、PythonJavaScript。

2什么是后端開發(fā)?

后端開發(fā)即“服務器端”開發(fā),主要涉及軟件系統(tǒng)”后端“的東西。比如,用于托管網(wǎng)站和 App 數(shù)據(jù)的服務器、放置在后端服務器與瀏覽器及 App 之間的中間件,它們都屬于后端。簡單地說,那些你在屏幕上看不到但又被用來為前端提供支持的東西就是后端。

網(wǎng)站和移動 App 的后端

網(wǎng)站的后端涉及搭建服務器、保存和獲取數(shù)據(jù),以及用于連接前端的接口。如果說前端開發(fā)者關心的是網(wǎng)站外觀,那么后端開發(fā)者關心的是如何通過代碼、API 和數(shù)據(jù)庫集成來提升網(wǎng)站的速度、性能和響應性。

與前端類似,移動 App 的后端與網(wǎng)站后端是一樣的。為移動 App 搭建后端有這些選擇:云平臺(AWS、Firebase)、自己的服務器或 MBaaS(移動后端即服務,Mobile Backend as a Service)。

后端開發(fā)使用 Ruby、Apache、Nginx、PHP、MySQL、MongoDB 等技術。后面我們會更多地介紹這些開發(fā)技術。

物聯(lián)網(wǎng)的后端

云平臺是物聯(lián)網(wǎng)后端的一個重要組件。有證據(jù)表明,大部分物聯(lián)網(wǎng)設備極度依賴云服務器,它們通過服務器上傳、處理和下載數(shù)據(jù)。

高端物聯(lián)網(wǎng)解決方案的后端甚至涉及人工智能機器學習。

物聯(lián)網(wǎng)項目的后端平臺包括 Amazon IoT、Google Cloud、MQTT Broker、IFTTT,等等。

3那么前端和后端的區(qū)別有哪些?

前端和后端的技術棧比較

4前端和后端開發(fā)者,哪個更好?

做前端開發(fā)還是后端開發(fā),除了技術方面的東西,還要看什么對你來說更為重要。

如果美學和產(chǎn)品感覺方面的東西對你來說更重要,那么你可能會傾向于選擇前端技術。如果你關注的是提高網(wǎng)站、應用程序或軟件的效率和響應性,那么你的目標可能會是后端開發(fā)。

前端設計師所做的很大一部分工作是讓用戶在移動或 PC 屏幕上看到的東西看起來很棒,而且很容易使用。相反,后端開發(fā)人員只關心如何編寫干凈的代碼。

如果你要基于上面所說的內(nèi)容在前端和后端之間判定其中一個比另一個好,那么這本身就是一個錯誤的假設。實際上,它們都是不可替代的,在構建網(wǎng)站或應用程序時,它們是同等重要的。

有些人具備視覺方面的天賦,而其他人擅長通過邏輯和技術來解決問題。蘋果之所以成為今天的樣子,要歸功于 Steve Jobs(前端的夢想家) 和 Steve Wozniak(后端天才)。

5前端和后端開發(fā)者

現(xiàn)在, 你已經(jīng)對前端和后端開發(fā)有了很好的了解,接下來是時候更多地了前端和后端開發(fā)者了。下面簡要介紹了前端和后端開發(fā)者的職位、技能和職責。

通過這些要點,你可以全面了解后端和前端開發(fā)者的技能。

前端和后端開發(fā)者的職位頭銜

開發(fā)者有很多工作機會,根據(jù)具體的專業(yè)知識、經(jīng)驗和興趣,你可以申請以下這些后端或前端開發(fā)職位。

前端:

前端開發(fā)工程師;

前端 Web 設計師;

Android 開發(fā)工程師;

iOS 開發(fā)工程師;

前端 DevOps 工程師;

前端 JavaScript 開發(fā)工程師;

前端 UI 工程師;

HTML/CSS 開發(fā)工程師;

前端測試工程師;

前端 SEO 專家。

后端:

后端開發(fā)工程師;

初級后端開發(fā)工程師;

Web 開發(fā)工程師;

DevOps 工程師;

軟件工程師;

WordPress 開發(fā)工程師;

云計算工程師;

REST 專家;

服務器 / 系統(tǒng)管理員;

數(shù)據(jù)庫架構師;

Java 開發(fā)工程師;

Python 開發(fā)工程師;

PHP 開發(fā)工程師。

前端和后端開發(fā)者的技能要求

不同職位和級別所要求的技能是不一樣的,但不管怎樣,要成為前端或者后端開發(fā)者絕對需要掌握一定的技能。

前端和后端開發(fā)者的角色和職責

前端和后端開發(fā)者的角色和職責是什么?在申請工作或招聘前端或后端開發(fā)者之前,請確保了解以下這些內(nèi)容。

前端和后端開發(fā)者的薪水比較

前端開發(fā)者:

以上數(shù)據(jù)來自 PayScale

(https://www.payscale.com/research/US/Job=Front_End_Engineer/Salary)

以上數(shù)據(jù)來自 Glassdoor

(https://www.glassdoor.co.in/Salaries/us-front-end-developer-salary-SRCH_IL.0,2_IN1_KO3,22.htm)

后端開發(fā)者:

以上數(shù)據(jù)來自 PayScale

(https://www.payscale.com/research/US/Job=Back_End_Developer%2F_Engineer/Salary)

以上數(shù)據(jù)來自 Glassdoor

(https://www.glassdoor.co.in/Salaries/us-backend-developer-salary-SRCH_IL.0,2_IN1_KO3,20.htm)

6什么是全棧開發(fā)?

有些人可以同時從事前端和后端開發(fā),他們被稱為全棧開發(fā)者。

成為全棧開發(fā)者或者招聘全棧開發(fā)者既有優(yōu)點也有缺點。雖然開發(fā)者數(shù)量可以減少到原來的一半,但他們的水平也相應降低了。專門從事前端或后端開發(fā)的開發(fā)者對單個領域的了解總是多于同時了解這兩個領域的開發(fā)者。

與全棧類似的技術開發(fā)棧還有很多,比如 MEAN 棧、LAMP 棧、.NET 棧、Python-Django 棧、ROR 棧,等等。開發(fā)者可以自由選擇成為這些技術棧的專家。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 編程語言
    +關注

    關注

    10

    文章

    1929

    瀏覽量

    34539
  • 前端開發(fā)

    關注

    0

    文章

    23

    瀏覽量

    4423

原文標題:代碼編程一條街,前端后端誰為先?

文章出處:【微信號:cas-ciomp,微信公眾號:中科院長春光機所】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    簡述大前端技術棧的渲染原理

    作者:京東物流 盧旭 大前端包括哪些技術棧 大前端指的是涵蓋所有與前端開發(fā)相關的技術和平臺,應用于各類設備和操作系統(tǒng)上。大前端不僅包括Web
    的頭像 發(fā)表于 11-07 10:11 ?91次閱讀

    前端總線頻率的類型是什么?

    前端總線(Front Side Bus,F(xiàn)SB)是計算機中處理器與主板上其他組件(如內(nèi)存、北橋芯片等)之間傳輸數(shù)據(jù)的通道。前端總線頻率是衡量這個通道傳輸數(shù)據(jù)速度的一個重要指標。前端總線頻率越高
    的頭像 發(fā)表于 10-10 18:17 ?220次閱讀

    PGA309前端失調(diào)電壓,對輸入信號有影響嗎?

    前端失調(diào)電壓,對輸入信號有影響嗎?壓力芯體最小分辨率為10uv, 309 儀表放大前端PGA 失調(diào)電壓遠大于輸入信號,309后端前端失調(diào)電壓帶來的誤差能消除嗎?
    發(fā)表于 09-13 06:07

    前端”工匠系列(一):合格的工匠,究竟該搞什么

    。 “前端職能是什么” 說起"前端",維基百科對這個技術角色的定位是“前端(英語:front-end)和后端(英語:back-end)是描述進程開始和結束的通用詞匯。
    的頭像 發(fā)表于 08-26 15:55 ?128次閱讀

    萬用表模擬前端后端的區(qū)別

    萬用表模擬前端后端的區(qū)別主要體現(xiàn)在它們在信號處理過程中的作用和功能上。簡單來說,模擬前端主要負責信號的采集、調(diào)理和初步轉換,而后端則側重于對前端
    的頭像 發(fā)表于 03-16 15:37 ?2030次閱讀

    什么是模擬前端和模擬后端 模擬前端與模擬后端的區(qū)別

    模擬前端和模擬后端是電子系統(tǒng)設計中的兩個關鍵部分,它們在信號處理過程中扮演著不同的角色,各自具有獨特的功能和重要性。
    的頭像 發(fā)表于 03-16 15:21 ?2217次閱讀

    模擬前端和數(shù)字后端哪個好 模擬前端和數(shù)字后端的區(qū)別

    模擬前端和數(shù)字后端都是電子系統(tǒng)設計中的重要環(huán)節(jié),它們各自扮演著不可或缺的角色,難以簡單地進行優(yōu)劣比較。
    的頭像 發(fā)表于 03-16 15:09 ?904次閱讀

    什么是模擬前端芯片技術 數(shù)字前端和模擬前端的區(qū)別

    什么是模擬前端芯片技術 模擬前端芯片技術是一種涉及電子元件的技術,其核心在于模擬前端芯片(AFE芯片)的設計和應用。模擬前端芯片位于信號處理鏈的最
    的頭像 發(fā)表于 03-15 17:58 ?1409次閱讀

    模擬前端后端的區(qū)別

    模擬前端和模擬后端在電子系統(tǒng)設計中各自扮演著重要的角色,它們之間有著明顯的區(qū)別。
    的頭像 發(fā)表于 03-15 15:59 ?904次閱讀

    模擬后端是什么意思

    模擬后端,在軟件開發(fā)和測試領域,通常是指使用工具或技術來模擬實際后端服務的行為。這樣做的主要目的是在項目開發(fā)過程中,當后端服務還未就緒或暫時
    的頭像 發(fā)表于 03-15 15:58 ?609次閱讀

    java后端能轉鴻蒙app開發(fā)

    java后端轉鴻蒙app開發(fā)好。 還是前端
    發(fā)表于 01-29 18:15

    web前端開發(fā)前端開發(fā)的區(qū)別

    Web前端開發(fā)前端開發(fā)是兩個相似但略有不同的概念。本文將詳細討論這兩者之間的區(qū)別。 定義和范圍: Web前端
    的頭像 發(fā)表于 01-18 09:54 ?3186次閱讀

    芯片設計分為哪些步驟?為什么要分前端后端前端后端是什么意思

    芯片設計分為哪些步驟?為什么要分為前端后端前端后端分別是什么意思? 芯片設計分為前端后端兩個
    的頭像 發(fā)表于 12-07 14:31 ?3507次閱讀

    php是前端還是后端

    PHP(Hypertext Preprocessor)是一種流行的服務器端編程語言,用于開發(fā)動態(tài)網(wǎng)站和Web應用程序。盡管在某些情況下也可以在前端使用,但PHP主要被廣泛應用于后端開發(fā)
    的頭像 發(fā)表于 12-04 15:46 ?2178次閱讀

    javaweb是前端還是后端

    JavaWeb既可以是前端,也可以是后端。 JavaWeb前端主要是指使用Java語言開發(fā)的用于構建Web前端應用程序的技術框架和工具。它主
    的頭像 發(fā)表于 11-16 10:51 ?2859次閱讀