福利溫馨提示
酷夏狂歡—紅包雨活動(dòng)即將開啟,請(qǐng)做好搶紅包準(zhǔn)備!前端和后端的區(qū)別:
(1)展示的方式不同
前端指的是用戶可見的界面,網(wǎng)站前端頁面也就是網(wǎng)頁的頁面開發(fā),比如網(wǎng)頁上的特效、布局、圖片、視頻,音頻等內(nèi)容。前端的工作內(nèi)容就是將美工設(shè)計(jì)的效果圖的設(shè)計(jì)成瀏覽器可以運(yùn)行的網(wǎng)頁,并配合后端做網(wǎng)頁的數(shù)據(jù)顯示和交互等可視方面的工作內(nèi)容。
后端是指用戶看不見的東西,通常是與前端工程師進(jìn)行數(shù)據(jù)交互及網(wǎng)站數(shù)據(jù)的保存和讀取,相對(duì)來說后端涉及到的邏輯代碼比前端要多的多,后端考慮的是底層業(yè)務(wù)邏輯的實(shí)現(xiàn),平臺(tái)的穩(wěn)定性與性能等。
(2)所用的技術(shù)不同
前端開發(fā)用到的技術(shù)包括但不限于html5、css3、javascript、jquery、Bootstrap、Node.js 、Webpack,AngularJs,ReactJs,VueJs等技術(shù)。
后端開發(fā) 以java為例主要用到的 是包括但不限于Struts spring springmvc Hibernate Http協(xié)議 Servlet Tomcat服務(wù)器等技術(shù)。
比如做一個(gè)登陸頁面,用戶在前端頁面上輸入了賬號(hào)密碼,然后用鼠標(biāo)點(diǎn)擊了登陸按鈕,這時(shí)候前端會(huì)將賬號(hào)密碼通過請(qǐng)求接口發(fā)送給后端做處理,后端收到數(shù)據(jù)會(huì)先檢查此賬號(hào)是否存在,如果不存在,則返回給前端一條類似于這樣的信息:“你輸入的賬號(hào)不存在,請(qǐng)重新輸入”,用戶再次重新輸入賬號(hào),此時(shí)后端查詢賬戶存在,密碼也正確,則后端返回登陸成功的信息給前端?,F(xiàn)代計(jì)算機(jī)領(lǐng)域的難題如大規(guī)模負(fù)載,海量數(shù)據(jù)處理,實(shí)時(shí)計(jì)算也是后端的,前端集中在表示層。
(3)工作職責(zé)不同
前端工程師主要的工作職責(zé)分為三大部分,分別是傳統(tǒng)的Web前端開發(fā),移動(dòng)端開發(fā)和大數(shù)據(jù)呈現(xiàn)端開發(fā)。Web前端開發(fā)主要針對(duì)的是PC端開發(fā)任務(wù);移動(dòng)端開發(fā)則包括Android開發(fā)、iOS開發(fā)和各種小程序開發(fā),在移動(dòng)互聯(lián)網(wǎng)迅速發(fā)展的帶動(dòng)下,移動(dòng)端的開發(fā)任務(wù)量是比較大的,隨著5G標(biāo)準(zhǔn)的落地,未來移動(dòng)端的開發(fā)任務(wù)將得到進(jìn)一步的拓展;大數(shù)據(jù)呈現(xiàn)則主要是基于已有的平臺(tái)完成最終分析結(jié)果的呈現(xiàn),呈現(xiàn)方式通常也有多種選擇,比如大屏展示等。
端工程師的主要職責(zé)也集中在三大部分,分別是平臺(tái)設(shè)計(jì)、接口設(shè)計(jì)和功能實(shí)現(xiàn)。平臺(tái)設(shè)計(jì)主要是搭建后端的支撐服務(wù)容器;接口設(shè)計(jì)主要針對(duì)于不同行業(yè)進(jìn)行相應(yīng)的功能接口設(shè)計(jì),通常一個(gè)平臺(tái)有多套接口,就像衛(wèi)星導(dǎo)航平臺(tái)設(shè)有民用和軍用兩套接口一樣;功能實(shí)現(xiàn)則是完成具體的業(yè)務(wù)邏輯實(shí)現(xiàn)。
(4)知識(shí)結(jié)構(gòu)不同
在知識(shí)結(jié)構(gòu)方面,前端開發(fā)涉及到的內(nèi)容包括Html、CSS、JavaScript、Android開發(fā)(采用Java或者kotlin)、iOS開發(fā)(采用OC或者Swift)、各種小程序開發(fā)技術(shù)(類Html),隨著前端開發(fā)任務(wù)的不斷拓展,前端開發(fā)后端化也是一個(gè)較為明顯的趨勢(shì),比如Nodejs的應(yīng)用。 后端開發(fā)通常需要根據(jù)業(yè)務(wù)場(chǎng)景進(jìn)行不同語言的選擇,另外后端開發(fā)的重點(diǎn)在于算法設(shè)計(jì)、數(shù)據(jù)結(jié)構(gòu)、性能優(yōu)化等方面,在具體的功能實(shí)現(xiàn)部分可以采用Java、Python或者PHP等編程語言來實(shí)現(xiàn)。對(duì)于不少中小企業(yè)來說,后端開發(fā)通常都會(huì)采用開源的開發(fā)平臺(tái),這樣就可以把精力集中在業(yè)務(wù)處理上,通常應(yīng)用級(jí)程序員就可以解決問題,相應(yīng)的開發(fā)成本也會(huì)有大幅度的下降。
(5)應(yīng)用范圍不同
從應(yīng)用范圍來看,前端開發(fā)不僅被常人所知、且應(yīng)用場(chǎng)景也要比后端廣泛的太多太多。
一、PC (PersonalComputer) 即個(gè)人電腦。目前電腦端仍是前端一個(gè)主要的領(lǐng)域,主要分為面向大眾的各類網(wǎng)站,如新聞媒體、社交、電商、論壇等和面向管理員的各種 CMS (內(nèi)容管理系統(tǒng))和其它的后臺(tái)管理系統(tǒng)。
二、Web App 是指使用 Web 開發(fā)技術(shù),實(shí)現(xiàn)的有較好用戶體驗(yàn)的 Web 應(yīng)用程序。它是運(yùn)行在手機(jī)和桌面端瀏覽中,隨著移動(dòng)端網(wǎng)絡(luò)速度的提升,Web App 為我們提供了很大的便利。此外近兩年 Google 提出了一種新的 Web App 形態(tài),即 PWA(漸進(jìn)增強(qiáng) Web APP) 。
三、WeChat (微信) 這個(gè)平臺(tái),擁有大量的用戶群體,因此它也是我們前端開發(fā)另一個(gè)重要的領(lǐng)域。微信的公眾號(hào)與訂閱號(hào)為市場(chǎng)營銷和自媒體從業(yè)者,打造了一個(gè)新的天地。
四、Hybrid App (混合應(yīng)用) 是指介于 Web App、原生 App (主要是 Android 或 iOS )之間的 App,它兼具原生 App 良好用戶交互體驗(yàn)的優(yōu)勢(shì)和 Web App 跨平臺(tái)開發(fā)的優(yōu)勢(shì)。
五、Game(游戲),HTML5 游戲從 2014 年 Egret 引擎開發(fā)的神經(jīng)貓引爆朋友圈之后,就開始一發(fā)不可收拾。不過現(xiàn)在游戲開發(fā)變得越來越復(fù)雜,需要制作各種炫麗炫麗的效果,還要制作各炫麗于 2D 或者 3D 的場(chǎng)景。
六、Desktop桌面應(yīng)用軟件,就是我們?nèi)粘I钪须娔X中安裝的各類軟件。早期要開發(fā)桌面應(yīng)用程序,就需要有專門的語言 UI (界面) 庫支持,如 C++ 中的 Qt 庫、MFC 庫,Java 的 Swing、Python 的 PyQT 等,否則語言是沒辦法進(jìn)行快速界面開發(fā)。
七、Server Node.js 一發(fā)布,立刻在前端工程師中引起了軒然大波,前端工程師們幾乎立刻對(duì)這一項(xiàng)技術(shù)表露出了相當(dāng)大的熱情和期待??吹?Node.js 這個(gè)名字,初學(xué)者可能會(huì)誤以為這是一個(gè) Java 應(yīng)用,事實(shí)上,Node.js 采用 C++ 語言編寫而成,是一個(gè) Java 的運(yùn)行環(huán)境。
雖然前端開發(fā)和后端開發(fā)的工作有巨大的區(qū)別,但是他們的工作都是相輔相成的,都是為了更好的用戶體驗(yàn)。
如還有其他困惑,可在線了解有關(guān)信息>>>了解前端后端開發(fā)>>>
上一篇: web前端開發(fā)主流框架
下一篇: 前端開發(fā)框架有哪些