花式填坑13期 | 如何高效開發企業級電商的前端?
電商前端專案作為網際網路行業中的典型代表,應用最廣、發展最顯成熟,但在實際開發中也會遭遇各種問題。比如,更適合電商企業的前端開發方式有哪些、如何保證高效的前端開發等等。
慕課網開展的花式填坑活動,每期1個主題,1位大牛嘉賓。使用者可圍繞當期話題進行提問,嘉賓將在規定時間內針對問題進行詳細解答。並且,小夥伴們也可以發表自己的見解與嘉賓展開討論。
以下內容精選在花式填坑第13期。
Q:企業級的電商平臺都包含什麼內容?
Rosen_Gao:在前後端分離的情況下,後端同學的任務是把資料和檔案做持久化儲存,並提供運算元據資料的介面。前端同學負責請求資料,然後對資料做處理和適配,最後再把資料呈現出來。其實就是以介面為界限,後端負責介面的製作,前端負責介面的呼叫。
在實際開發中,一般是前後端同學拿到需求後,一起來確定各個功能點需要的介面,然後再逐個細化出各個介面的輸入輸出欄位,最後由後端同學生成一個介面文件。
Q:電商前端和普通前端分別避開的坑有哪些?
Rosen_Gao :1.網際網路裡面最大的一個部分就是電商,可以說這是網際網路裡最大的一塊。
2.行業的選擇對研發來說很重要,選一個前景好的行業能保證你的公司不會短時間倒下,有更多時間去做積累和創新;還有一方面是興趣的問題,建議不要把自己限定到純研發的角色裡,最好多參與業務上的事。
3.電商是一個很複雜的系統,市面上大部分的業務都可以理解成電商的一個子集,這裡遊戲可能會例外。所以電商的前端搞定了,其他業務也不會有太大問題。
Q:請問開發一個電商平臺裡,怎麼進行技術選型?
Rosen_Gao :技術選型結合業務的,比如電商的使用者端比較介意相容和SEO的問題,更多的會用原生js;管理系統比較熬注重開發效率,更多用的是一些單頁框架。但技術選型是一個比較大的話題, 大到架構、框架的設計,小到工具的選擇,可以針對更具體的項進行提問,在實戰課裡也系統的講了電商系統的技術選型。
Q:模組化為什麼可以提高開發效率?
Rosen_Gao :
1.對程式碼進行封裝隔離,提高程式碼的複用性,就能減少程式碼量
2.透過逐級對業務的拆解,達到簡化業務的作用,降低系統複雜度
3.更好的程式碼組織方式,能支援團隊並行開發,提高團隊的效率
4.封閉作用域,減少變數衝突帶來的不太容易發現的問題
5.耦合小,利於後期擴充套件和修改,降低系統的後期維護成本
Q:一般前端是如何與後端互動的呢?
Rosen_Gao :絕大部分都是透過json格式的資料介面來做資料互動的
Q:電商前端一般會用模板引擎嗎?
Rosen_Gao:會用的, 電商前端一般很少透過框架來進行開發,所以會透過模板引擎來減少dom的操作,解決無框架開發下的痛點。
Q:老師,您在整個前端開發過程中,遇到有哪些相容性問題嗎?
Rosen_Gao:H5的一些標籤解析不了,比如section
各種樣式不相容,包括選擇器和屬性的不相容
使用了不存在的js方法
使用了一些保留關鍵字,在ie8以前任何地方都不能用保留字
Q:前後端如何配合
Rosen_Gao:在前後端分離的情況下,後端同學的任務是把資料和檔案做持久化儲存,並提供運算元據資料的介面。前端同學負責請求資料,然後對資料做處理和適配,最後再把資料呈現出來。其實就是以介面為界限,後端負責介面的製作,前端負責介面的呼叫。
在實際開發中,一般是前後端同學拿到需求後,一起來確定各個功能點需要的介面,然後再逐個細化出各個介面的輸入輸出欄位,最後由後端同學生成一個介面文件。
Q:電商後臺用php寫可以嘛,還有商品列表的排序功能可否在前端實現
Rosen_Gao:只要介面格式一樣就行。
商品列表的排序因為有分頁,不適合在前端做。如果是前端分頁的話,就要一次性取出所有商品。
Q:webpack-dev-server的自動重新整理是怎麼實現的?
Rosen_Gao:webpack-dev-server實際上使用的是一個nodejs做的服務,並且webpack-dev-server還會在我們的頁面裡注入一個client,這個client和nodejs的服務透過socket的方式做了個連線,就可以實現瀏覽器和nodejs服務進行通訊了。webpack-dev-server這個服務同時還會監聽本地檔案的改動,當我們修改檔案時nodejs就會得到通知,然後拿到最新的檔案內容編譯成新的模組結構,編譯完成後再通知client做重新整理頁面的操作來請求最新的資源,這樣就實現了修改檔案後的自動重新整理。
講師介紹,
Rosen_Gao:曾任職360雲事業部高階前端開發工程師,某C輪創業公司前端架構及前端負責人、初中級工程師導師、招聘面試官。
熱愛前端技術的研究與分享,多年一線架構設計和開發經驗,對jQuery、Angular、React等各種前端框架有豐富的專案實戰經驗,擅長SEO和資料分析等,是一個十足的技術咖。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/3209/viewspace-2807962/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 小程式花式填坑
- 【花式填坑第4期】 如何成為一個合格的Java架構師Java架構
- 如何快速開發Java RCP企業級應用?Java
- 企業級開發框架----------Django框架Django
- 電商企業如何選擇erp系統開發?erp系統開發
- Flutter Plugin外掛開發填坑指南FlutterPlugin
- 騰訊地圖開發填坑總結地圖
- 企業級 Web 開發的挑戰Web
- Linux企業級開發技術(1)——epoll企業級開發之簡介Linux
- Linux企業級開發技術(2)——epoll企業級開發之epoll介面Linux
- Linux企業級開發技術(3)——epoll企業級開發之epoll模型Linux模型
- Linux企業級開發技術(4)——epoll企業級開發之epoll例程Linux
- Taro開發小程式填坑筆記(一)筆記
- 支付開發填坑記之支付寶
- 關於PHP在企業級開發領域的訪談——企業級開發,PHP準備好了嗎?PHP
- 企業軟體領域前端開發的困境前端
- 基於jQuery的前端開發框架,在企業級開發領域裡已經涼了嗎?jQuery前端框架
- Linux企業級開發技術(6)——libevent企業級開發之記憶體管理Linux記憶體
- 面向企業級前端應用的開發框架 UI5 的發展簡史介紹前端框架UI
- 填坑Ⅱ
- Vagrant homestead (laravel)開發環境搭建(填坑)Laravel開發環境
- vue無縫滾動的外掛開發填坑分享Vue
- BizWorks助力企業應用的高效開發與複用
- 分享 | Laravel重構企業級電商專案Laravel
- 企業如何高效管理團隊???
- 公司ES升級帶來的坑怎麼填?
- Linux企業級開發技術(7)——libevent企業級開發之鎖和執行緒Linux執行緒
- 文件管理系統如何幫助企業高效發展
- Laravel-Modules 模組化開發實踐與填坑Laravel
- 低程式碼應用開發平臺,讓企業開發更高效
- Mac升級10.11 EI Captain 填坑MacAPTAI
- 如何避免前人挖坑,後人填坑
- streamparse 填坑
- BeX5企業快速開發平臺-前端快速開發框架前端框架
- Python 如何開發高效漂亮的輕量級 Web 應用?PythonWeb
- 企業網盤如何高效的解決企業檔案管理問題
- “高質高效嵌入式軟體開發”的企業內訓開始
- 小程式踩坑填坑