產品經理懂點技術:什么是前后端,兩者如何分工?

來源:互聯網 閱讀:- 發布:2020-03-23 08:20:19

不懂技術的產品經理可能在遇上bug時都不知道去找誰,本文說明產品前后端如何劃分,相關問題屬于哪個“端”,適合初級產品人閱讀。

產品汪在驗自己產品時,經常遇上bug了,就去找測試小姐姐,測試小姐姐看了看,就說:“這個找后臺的某某吧”,“這個找前端的某某吧”。

小汪就好奇了,那么多程序猿哥哥,他們的職責是怎么劃分的呢?

產品經理眼里的“端”

在產品經理眼里,一般按業務的使用者對產品領域進行劃分,例如淘寶的用戶端、商家端,再例如滴滴的乘客端、司機端、運營后臺;甚至會進一步細分,有網約車司機端、代價司機端等。

當然,也可能按照業務模塊進行劃分,例如物流系統、支付系統、訂單系統等。

前后端:誰前?誰后?

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

那他們的工作是怎么劃分的呢?

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

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

1)移動端APP

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

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

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

2)PC端軟件

例如我們常用的office系列軟件Word、Excel、PowerPoint;電腦版的QQ、微信、QQ音樂;上網頁用的Google Chrome瀏覽器、Firefox瀏覽器等,都是PC端的軟件。PC端也因系統的差異,前端也會進一步的細分。

3)網頁web

網頁基于HTML(HyperText Markup Language,超文本標記性語言)實現,現在已經發展到了HTML5.0版本,也就是大家耳熟能詳的H5。Web內容具有編程語言統一、與平臺無關的特點,我們可以通過各種電腦網頁瀏覽器、手機上的網頁瀏覽器(UC、百度瀏覽器等),甚至內嵌了網頁瀏覽器的微信、QQ、支付寶等等,實現網頁的訪問。

得益于網頁內容編程語言統一的特點,網頁前端程序員一般能做非常多的事情,例如開發電腦端網頁、手機端網頁、微信公眾號H5等等。

4)小程序

一種新生的事物,某些軟件當用戶規模足夠巨大時,就可以設定一套規范,然后讓前端程序員們直接為這些軟件,而不是不同的系統,開發“程序中的程序”。

這樣的好處就是,用戶不再需要手機上裝各種各樣的APP,一個軟件里就能解決大部分事情。

現在主流的小程序,例如微信小程序、百度小程序、支付寶小程序等,都是基于HTML衍生發展出來的。開發過程與編寫HTML網頁相似,所以一些公司并沒有專門的小程序前端,而是由網頁web程序猿哥哥“被迫營業”同時從事小程序的開發。

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

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

一款產品的后端,一般只會用一種編程語言編寫。一些功能特別豐富的產品可能會用一種編程語言作為核心,另外用1-2種語言實現一些這類語言擅長的模塊,例如用Java做核心語言,但配套的數據平臺用Python寫之類的。

由于在同一款產品中,后端編程語言不像前端一樣根據系統/設備不同各種開花。所以,后端程序猿哥哥就可以一個人負責多個業務模塊的后端編寫,甚至輪流負責不同模塊的編寫。

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

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

介紹完了前端后端分工內容的區別,那么想區分一個bug到底歸誰,那就容易些了。

如果是頁面樣式上的錯位、缺了或多了啥字段或模塊,某些按鍵或交互點了沒反應,就優先找對應內容的前端。

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

1)業務邏輯錯誤

例如創建訂單計算金額錯誤、優惠券是否能用判斷條件錯誤、訂單審批流程錯誤等等。

2)點了之后報錯

一個按鈕不是點了沒反應,而是點了就彈出一大堆英文的錯誤信息,這種情況下一般可以先找后端看看問題。

3)404、500錯誤

這種有明顯數字代碼的錯誤,先找后端就沒錯了。

這下子,小汪就明白了,原來前后端的程序猿哥哥們是這樣分工的。

用戶可見的界面、進行的交互操作就是前端負責,業務的邏輯、流程、數據的處理就是后端的職責。

本文由 @iCheer 原創發布于人人都是產品經理,未經作者許可,禁止轉載。

題圖來自Unsplash,基于CC0協議。

推薦閱讀:百度收錄域名價格


1选五中奖规则