一直想做电商软件,但是实在不想学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

最新文章

  1. XMind怎么使用查找功能
  2. php 路径
  3. BZOJ 1026: [SCOI2009]windy数
  4. 在ROS中使用Python3
  5. 动态平衡二叉搜索树的简易实现,Treap 树
  6. asp.net 服务器Button控件使用(onclick和onclientclick使用)
  7. sina sae 部署 java ssh 项目
  8. HTTP POST GET 本质区别详解
  9. Android 工程目录结构简介
  10. 利用CryptoStream进行加密解密
  11. Java集合Map接口与Map.Entry学习
  12. 在redhat6.4下安装 Oracle® Database 11g Release 2
  13. SQL Server DAC 管理员专用连接
  14. JavaScript知识(二)
  15. 201521123095 《Java程序设计》第5周学习总结
  16. Linux System Programming --Chapter Six
  17. 带着新人看java虚拟机06(多线程篇)
  18. WebApi生成在线API文档--Swagger
  19. 工作我们是专业的之css规范
  20. 实验二:MAL——简单后门 by:赵文昊

热门文章

  1. Django——13 Auth系统 登陆注册实例 权限的实现
  2. 赛门铁克扩展验证EV SSL证书
  3. Object Detection: To Be Higher Accuracy and Faster
  4. readl()和writel()
  5. hdu_1019_Least Common Multiple_201310290920
  6. [bzoj1879][Sdoi2009]Bill的挑战_动态规划_状压dp
  7. Clojure:通过cursive连接远程REPL服务器
  8. linux UID,GID,EUID,EGID,SUID,SGID
  9. [Node.js] Setup Local Configuration with Node.js Applications
  10. UVA LIVE 7146 Defeat the Enemy