一直想做電商軟體,但是實在不想學PHP了,所以前後關註了這兩個開源電商系統。一個是國人出品的,一個據說是俄羅斯人寫得(不知道對不對)。目前兩個開源軟體都在學習瞭解中,以下的博文可能會涉及到這兩套系統,我希望能對比進行學習,能互相借鑒和補充。 brnshop :http://www.cnblogs.c ...
一直想做電商軟體,但是實在不想學PHP了,所以前後關註了這兩個開源電商系統。一個是國人出品的,一個據說是俄羅斯人寫得(不知道對不對)。目前兩個開源軟體都在學習瞭解中,以下的博文可能會涉及到這兩套系統,我希望能對比進行學習,能互相借鑒和補充。
brnshop :http://www.cnblogs.com/wheretime/p/3793979.html (入門篇:BrnShop開源網上商城第一講:架構設計)
nopCommerce:http://www.cnblogs.com/babietongtianta/p/4659381.html (NopCommerce源碼架構詳解--初識高性能的開源商城系統cms)
通過閱讀源碼和學習以上兩篇文章,我們對比發現有幾個異同點。
(一)相同點:
A.兩套源碼的代碼結構的劃分挺接近,都有Library Presentation Plugins ,Library下也都有Core Data Service。難道兩家商量好的,還是誰學誰?
B.表現層都遵循典型的mvc的結構,每個插件也都是一個小的mvc結構
C.架構上針對擴展性都還設計得比較合理
(二)不同點:
A.brnshop代碼結構劃分還有個策略分類,是具體介面的實現,它把它單獨拎出來。
B.nopCommerce老外更重視單元測試,還附有Tests單元測試的配套項目,一個複雜的電商網站,每每有改動,遍歷測試似乎也是保證質量的重要手段,只是國內做項目一般都覺得還寫測試用例和單元測試時浪費時間。
C.nopCommerce資料庫訪問用的是EF,這對於用不慣EF的小伙伴是個坎。我用過EF一些,感覺還是不太好用,可能是習慣和水平的原因。 brnshop沒有採用EF,採用dotnet的標準資料庫訪問對象再加一些輔助類(做一些對象轉換等等)。這裡是否可以使用輕量的dapper框架,也 許後面可以做些探索。
D.還有一個是國際化的問題,nopCommerce在這方面很出色,支持界面的多語言切換。brnshop這方面捨棄了沒有考慮,現在做軟體如果從市場出發,一開始是否瞄向國際市場,也是個戰略和戰術上的雙重抉擇。
E.另外隱約感覺到,nopCommerce的插件似乎更成熟和豐富
今天這第一篇分析先到這裡吧,後面的時間接著讀。 願意交流和交朋友的,可以加我的QQ:9200118