本文是我的對於現有項目的一些思考,僅作參考。前端
因爲本人是作前端項目開發出生,而且長期作後臺業務系統開發,全部的思考也基於此展開。vue
從以往的工做經驗來看業務系統能夠概括爲單/多業務系統和聚合業務系統。node
聚合型適用於業務複雜,多條業務線同時獨立開發,不少電商網站後臺都採用這種方式。vue-cli
這裏列舉了後臺管理系統通用的模塊及其細分類npm
用戶登陸方式有不少種,像企業內部的Sass系統基本上都是員工在入職時分配好帳號,初次登陸後直接跳轉到更改密碼的頁面。一些電商網站後臺只要在外
登陸後內部系統一般就不須要再次登陸了。通常的網站後臺則須要用戶註冊帳戶後再登陸。小程序
登陸或者註冊時的驗證方式有不少種,大體概括以下:後端
受權分爲第三方受權,一般是微信、QQ、微博、知乎等常見應用直接共享信息登陸系統後再完善一些用戶信息。對於Sass系統來說一般是直接分配帳號,用戶直接登陸,從同一個入口進入的各業務子系統共享登陸狀態。數組
角色一般來講就是管理員和用戶的區分,根據業務場景、地域跨度、公司人事體系的不一樣又能夠細分出不少角色。不一樣的角色所能看到的,操做的功能是有所區別的。通常來講權限主要是從路由、功能點來控制的。安全
爲了保證系統的安全性,須要必定的機制來保證系統不被惡意、非法登陸修改信息。常見的手段爲驗證用戶的郵箱、手機號、身份證驗證、生物特徵(面部)驗證、常在登陸地驗證及各類形式的驗證碼驗證。前端框架
會員管理對於電商系統來講是很重要的一個功能點。不少電商項目都是圍繞微信生態圏,所以會員也帖上了不少微信相關的標籤。下面是一個常見會員信息的簡單概括:
評論模塊常見於CMS系統、商品評論。對於評論而主要的操做就是發表評論、回覆評論、刪除評論、評論點贊、評論審覈、喜歡評論、收藏評論等。
有了會員固然少不了各類營銷手段來留住會員,得到手續收益和吸引更多會員。常見的線上營銷方式以下:
這裏把短信、通知、公告信息所有歸在一塊兒。
分銷主要是電商的微商中,按照國家規定最多3級分銷。
支付系統主要是管理支付帳單、支付流水記錄、帳單的投訴等。
商品下單管理。
主要是在客戶端進行打點統計各pv, uv信息,以可視化圖表展現用戶增加、用戶訪問量等。
各類商品圖片、字體圖標管理。
客服系統,商戶與用戶聊天。
使用拖拽方式動態構建頁面,適用於H5頁面,微信公衆號、小程序。
特定行業、特殊需求功能模塊。
統一架構,前端採用 「腳手架 + 業務組件庫 + 可視化配置」,中間考慮到各上業務系統的靈活對接能夠採用nodejs做爲中間層做調度,後端服務能夠靈活選擇。
前端基於Vue框架體系,採用 "Vue + Vuex + Typescript + GraphQL + Yarn + Lerna",腳手架使用 npm + vue-cli 來生成帶有基礎功能的基礎項目,業務組件庫在必定的規範和契約下單獨成庫進行開發,作到插件的形式載入和卸載。因爲項目爲Web端,不是桌面應用,所以可視化配置生成項目代碼的可行性不切實際,只能生成配置數組,經過前端已有的功能組件來解析數組生成頁面。
中間nodejs層主要負責認證、接口的轉發與合併、資源的調度、後臺系統的對接、日誌的統計等。
基於這個方案能夠將一些適用於多個項目的低層功能融入腳手架中,開發新的業務系統時能夠直接開發特定的功能,一些通用的模塊直接引入。
業務組件庫能夠直接放在主項目倉庫做爲一個package,也能夠在公司內部自建npm倉庫管理後臺託管項目代碼。
難點: