小小商城的一次前端架構演變

来源:http://www.cnblogs.com/hundansrs/archive/2016/02/19/5201150.html
-Advertisement-
Play Games

博主第一次開發商城類的項目,目前商城已上線,這裡就不打廣告了。商城的架構主要為yii2+backbone,還有一些其他blablablabla......的插件。 商城有PC端和微信端,先上線的PC端後上線微信端。 第一版的開發模式是,前端同學設計好界面原型,切好圖,做完靜態頁面交給後端人員。後端人


  博主第一次開發商城類的項目,目前商城已上線,這裡就不打廣告了。商城的架構主要為yii2+backbone,還有一些其他blablablabla......的插件。

商城有PC端和微信端,先上線的PC端後上線微信端。

  第一版的開發模式是,前端同學設計好界面原型,切好圖,做完靜態頁面交給後端人員。後端人員使用基於MVC模式的yii2框架,將靜態頁面寫成動態的

.php頁面。很好,這樣的開發方式前端同學甚是輕鬆,只要做好靜態頁面就完事,其他全交給後端人員。如果做好的頁面,一旦需要修改點小樣式,前端同學

就直接在原來的靜態頁面做修改,然後再提交給後端人員,後端人員就比較修改的地方去修改動態的.php頁面,頁面嵌套著一堆堆php代碼。

  立馬發現這種方式不妥,所以開始升級。第二版的開發模式是,後端人員不套頁面,直接交給前端同學來實現動態的效果。前端同學設計好界面原型,切

好圖,做完靜態頁面。同時後端人員設計開發完介面,給前端同學調用。前端同學一堆堆的ajax調用方式,一個個在success方法里for迴圈渲染標簽。是的,

這樣整個項目下來,幾十個頁面每個頁面都是通過ajax來動態請求數據。用ajax渲染界面的寫法尤其難看,小範圍的加入了模板。不過這樣的開發模式夠用了。

  第三版來了,高大上的開發模式是,使用前端框架了,比如backbone,前端的MVC模式框架。前端同學設計好界面原型,切好圖,做完靜態頁面,使用

backbone自帶的template一個個套成模板,配好router,採用單頁面模式。前端同學的壓力越來越大,逼著一個個要修煉升級了。

  整個項目開發過來,每次的前端升級,都把工作一步步轉到前端了。第一個版本是一開始大多數會用的做法,前端任務“輕”,技術難度“低”,大部分任務都

在後端,後端人員表示鴨梨山大。第二個版本也是大多數會用的做法,這樣前端同學在設計頁面的時候,就不會漫天遐想了,會從實際實現的效果和難度來考慮

問題。因為最終設計出來的效果,是要他們自己來實現的。第三個版本就是瞎折騰,不斷給前端人員升級,逼迫他們學習MVC模式,使用各種框架插件,不在

只是簡簡單單做個靜態頁面,寫個ajax而已。

  有的人會問,為什麼博主不直接用第三種方式來開發?博主帶的電商技術團隊,人力資源有限,服務端人員占多數,前端人員大多都是設計人員和頁面開發

人員,真正前端大神類的木有。所以為了一邊能使商城成功上線一邊又能鍛煉到團隊的前端能力。所以博主就先從簡單的大多數人都能接受的方式和流程和開發,

這樣通過三個版本的演變,博主的電商技術團隊的前端能力已經可以獨當一面了。如果直接給他們說第三版的開發模式有多麼多麼好,有什麼什麼優勢,有什麼

什麼好處的時候,對初次接觸的他們來說會一頭霧水,最終開發出來的東西不敢直視,甚至連商城都沒辦法上線。採用演變的開發模式,一是技能保證商城能夠

成功上線,二是一個很好案例使他們自己發現現在這個版本開發模式上有什麼不足和缺陷,口頭上說再多也沒用,不如親自動手實踐實踐。自己領會到知識總比

別人告訴你來的理解深。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 使用 HttpRequest 對象 HttpRequest 對象描述的是一個正在被處理的 HTTP 請求。下表列舉了 HttpRequest 中的屬性,它們提供了當前請求的相關信息(HttpRequest 類定義了一些方法和屬性,我們會逐步講解當中的一些屬性)。 表 1 – HttpRequest
  • https://msdn.microsoft.com/zh-cn/library/system.text.regularexpressions.regex(v=vs.110).aspx /// <summary> /// /// </summary> /// <param name="sender"
  • 引言--面向介面所處的設計模式中的位置。 其實,我認為Java/C#比C++高級的其中一個原因是,它對面向介面編程的支持。不要誤解,並不是說C++不支持面向介面編程,而是說C++的語法中沒有這種天然的機制。 面向對象之於面向過程,面向介面之於面向實現。但基本上,面向介面和麵向實現都基於面向對象的模式
  • Atitit.pdf 預覽 轉換html attilax總結 1. Swf flash還是html1 2. pdf2htmlEX1 3. iText 5.5.0 發佈,Java 的 PDF 操作類庫1 4. PdfBox1 5. other2 5.1. ICEpdf2 5.2. xpdf用過2 5.
  • 定義 適配器模式(Adapter):將一個類的介面轉換成客戶希望的另外一個介面 那通俗點來說,啥是適配器呢,大家都知道港版的iphone的充電器,是不能直接在內地使用的,需要一個轉換器才能使用,那麼這個 轉換器就是所謂的適配器 . 那麼適配器能夠給我們帶來什麼好處呢? 使用港版iPhone的同學都知
  • 裝飾模式(Decorator) 裝飾模式又名包裝(Wrapper)模式。 裝飾模式以對客戶端透明的方式擴展對象的功能,是繼承關係的一個替代方案。 裝飾模式通過創建一個包裝對象,也就是裝飾,來包裹真實的對象。 裝飾模式以對客戶端透明的方式動態地給一個對象附加上更多的責任。換言之,客戶端並不會覺得對象在
  • 1、簡介 Laravel Excel 在 Laravel 5 中集成 PHPOffice 套件中的 PHPExcel ,從而方便我們以優雅的、富有表現力的代碼實現Excel/CSV文件的導入和 導出 。 該項目的GitHub地址是: https://github.com/Maatwebsite/La
  • 什麼是設計模式 現在聊起來java設計,那就必然要聊聊設計模式,幾年前我剛入行的時候,總是聽人說起設計模式,在當時的我看來,那是多麼高大上的東西啊,以至於有種遙不可及的感覺,如今自己做java也好幾個年頭了,今天來談談如今我眼中的設計模式 說白了,設計模式就是前輩高人總結出來的一套編寫好代碼的方法,
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...