日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

輕量級H5 app開發實踐之技術選型

 

上一篇主要是對新項目的一些介紹和對技術棧升級的思考,之前也提到,既然是新項目,從0開始,沒有歷史包袱,應該可以放手玩了。但考慮到如何能讓老項目受益,并且從技術架構的普適性去考慮,需要橫向擴展,讓更多項目受益,讓更多開發人員參與進來,接下來我會從以下幾個方面去選定。

構建環境

在現有項目中的構建打包流程是gulp和webpack結合使用的,gulp負責任務的優先級調度執行,webpack負責各模塊的依賴分析打包,在這個項目中我的計劃是放棄使用gulp,因為經過調研發現webpack4.x 完全能滿足這種輕量級項目的構建需求,并且可以做到簡單化,還具備穩定性,具體細節我會在下一章的環境搭建中講到。

所以,對于構建環境可以明確是基于webpack完成環境的配置搭建。

開發框架

該項目是基于前端后端分離的方案實現,前端包含:api服務和客戶端頁面兩部分,api服務是基于koa2的nodejs中間層服務,客戶端是基于vue的多頁面入口的設計。

koa2

koaJS是我近幾年一直使用的node開發框架,從1.x到目前最新的2.13.0(這個項目中的版本)都有在項目中使用的案例。它的特點是優雅、簡潔、表達力強、自由度高,再加上獨特的中間件流程控制,也是典型的洋蔥模型,可玩性很高,非常適合我們這種輕量化中間層服務。

說到node開發框架你也可能會想到 eggJs ,thinkJs,用他們豈不是更方便快捷?要知道上述兩個底層都是基于koa進行的再次封裝,我的建議是 如果你想深入的去學習node,想在開發中去深入了解它,尤其是想自己去開發一些中間件,那koa是不錯的選擇,當然,前提是你已經具備nodejs相關的知識。

再回到這個項目中,我對這個服務有兩個階段的預期,在第一個階段會將它職責定位在接管路由(router),為客戶端js提供api服務。第二階段,會考慮基于同構方案的首屏服務端(SSR)渲染。在完成第一階段時就已經具備上線條件,后續會結合產品需求和seo再去實施SSR。

vue

使用vue來完成H5前端頁面的構建是我一直認為最合適的,我個人覺得也沒有必要去跟react去做各種的對比,他們各自的優勢也非常明顯。這里要提到另外一個考量,選擇什么樣的開發框架是要結合你們團隊成員的整體技術水平,對框架的可接受程度,還要結合公司的業務和產品形態。

所以,我的選擇是vue,是2.xx的版本,最近剛發了3.0版本,不過還是需要等等再上。

組件庫

先解釋一下,這里的組件庫是指的項目中全局通用的如,toast,dialog,loading 等公共組件,我一直的想法是能有公司自己的公共組件庫,這個事也是一直推進中,困難重重,這會涉及到跟ui設計師的對接,設計規范的制定,整體風格的統一。到目前已經產出了一些組件,任務道遠啊。

結論

上述是我對于這個項目的技術棧的選型,總結下來是:

koaJs:負責中間服務層

vue:負責客戶端頁面構建

組件庫:自研 + 少量開源

webpack:代碼構建打包

已經完成了兩篇文章的總結,還沒看到代碼,哈哈,下一篇我會把重點部分的代碼實現拿出來跟大家分享,也歡迎一起交流,一起進步,感謝閱讀!

分享到:
標簽:選型 技術
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定