產品經理懂點技術之:什麼是前後端,他們怎麼分工的?

產品汪在驗自己產品時,經常遇上bug了,就去找測試小姐姐,測試小姐姐看了看,就說:“這個找後臺的XX吧”,“這個找前端的XX吧”,小汪就好奇了,那麼多程序猿哥哥,他們的職責是怎麼劃分的呢?


產品經理眼裏的“端”


在產品經理眼裏,一般按業務的使用者對產品領域進行劃分,例如淘寶的用戶端、商家端;再例如滴滴的乘客端、司機端、運營後臺,甚至會進一步細分,有網約車司機端、代價司機端等;當然,也可能按照業務模塊進行劃分,例如物流系統、支付系統、訂單系統等。


前後端:誰前?誰後?


在大部分公司裏,一個程序員的工作,可能會覆蓋很多個產品端。例如一位前端的同事,可能既要做用戶端的H5,也要做商家端的網頁,還要做平臺運營後臺的網頁。一個後端的同事,工作也可能覆蓋多個業務模塊。那他們的工作是怎麼劃分的呢?

簡單來說,對於程序猿哥哥來說,前端就是負責“用戶看得見”的內容,將UI稿轉換成網頁、APP、電腦軟件等,同時實現所有交互事件,例如用戶點擊、滑動、拖動等操作。

前端又會根據實現的形式進行細分,常見的有:

  • 移動端APP:根據手機系統的不同,又細分爲蘋果iOS APP、谷歌Android(安卓) APP,甚至一些非常小衆的手機系統APP,例如微軟的Windows Phone(簡稱WP)的APP。

不同手機系統上APP開發需要用的編程語言差異較大,開發環境也有所差異,所以一個APP前端程序員,一般只會開發一個端,例如只負責安卓端,或者只負責蘋果端。

另外在移動端,大家經常能聽到一個詞,叫做“原生”,所謂原生就是使用系統指定的編程語言開發的軟件,“非原生”,一般指套用一個網頁瀏覽器,然後再在瀏覽器內用網頁展示內容實現的軟件。

  • PC端軟件:例如我們常用的office系列軟件Word、Excel、PowerPoint;電腦版的QQ、微信、QQ音樂;上網頁用的Google Chrome瀏覽器、Firefox瀏覽器等,都是PC端的軟件。PC端也因系統的差異,前端也會進一步的細分。
  • 網頁web:網頁基於HTML(HyperText Markup Language,超文本標記性語言)實現,現在已經發展到了HTML5.0版本,也就是大家耳熟能詳的H5。web內容具有編程語言統一、與平臺無關的特點,我們可以通過各種電腦網頁瀏覽器、手機上的網頁瀏覽器(UC、百度瀏覽器等),甚至內嵌了網頁瀏覽器的微信、QQ、支付寶等等,實現網頁的訪問。得益於網頁內容編程語言統一的特點,網頁前端程序員一般能做非常多的事情,例如開發電腦端網頁、手機端網頁、微信公衆號H5等等。
  • 小程序:一種新生的事物,某些軟件當用戶規模足夠巨大時,就可以設定一套規範,然後讓前端程序員們直接爲這些軟件,而不是不同的系統,開發“程序中的程序”,這樣的好處就是,用戶不再需要手機上裝各種各樣的APP,一個軟件裏就能解決大部分事情。現在主流的小程序,例如微信小程序、百度小程序、支付寶小程序等,都是基於HTML衍生發展出來的,開發過程與編寫HTML網頁相似,所以一些公司並沒有專門的小程序前端,而是由網頁web程序猿哥哥“被迫營業”同時從事小程序的開發。

目前很多公司推出的小程序,雖然都是基於HTML衍生出來的,但是各自衍生(魔改)方法不一樣,所以具體編寫時也有所差異,目前市面上有一些小程序代碼轉換工具,例如寫好一個微信小程序,用工具一轉,就能生成一個百度小程序。

 

相對於“用戶看得見”的前端,那用戶“看不見”的部分,就是由後端負責了,後端程序猿哥哥要負責業務邏輯的實現、訂單、用戶資料等數據的增刪改查。

一款產品的後端,一般只會用一種編程語言編寫,一些功能特別豐富的產品可能會用一種編程語言作爲核心,另外用1-2種語言實現一些這類語言擅長的模塊,例如用Java做核心語言,但配套的數據平臺用Python寫之類的。由於在同一款產品中後端編程語言不像前端一樣根據系統/設備不同各種開花,所以後端程序猿哥哥就可以一個人負責多個業務模塊的後端編寫,甚至輪流負責不同模塊的編寫。

後端哥哥也是很辛苦的,因爲他們需要去實現各種業務邏輯,訂單流轉、登錄登出及權限管理、實現數據的存儲導出、進行不同系統間的對接等等。

 


根據問題特徵,回溯bug該找誰


介紹完了前端後端分工內容的區別,那麼想區分一個bug到底歸誰,那就容易些了。如果是頁面樣式上的錯位、缺了或多了啥字段或模塊,某些按鍵或交互點了沒反應,就優先找對應內容的前端。

相對比前端的bug,後端bug體現形式就比較豐富:

  • 業務邏輯錯誤:例如創建訂單計算金額錯誤、優惠券是否能用判斷條件錯誤、訂單審批流程錯誤等等
  • 點了之後報錯:一個按鈕不是點了沒反應,而是點了就彈出一大堆英文的錯誤信息,這種情況下一般可以先找後端看看問題

  • 404、500錯誤:這種有明顯數字代碼的錯誤,先找後端就沒錯了

 

這下子,小汪就明白了,原來前後端的程序猿哥哥們是這樣分工的,用戶可見的界面、進行的交互操作就是前端負責,業務的邏輯、流程、數據的處理就是後端的職責。

發佈了17 篇原創文章 · 獲贊 20 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章