Symfony电子商务
使用Symfony Sylius开发了一个电子商城,现在做一些初步总结。
选择Symfony Sylius的理由
Symfony使用PHP5.3的最新特性,完全OOP的架构,高质量的代码,优秀的模板引擎(twig),Composer包管理,模块化的bundle结构等很多在别的框架里面很难看到的特性,在最初选择的时候就定在了symfony框架上。sylius.com
然后是筛选相关的电子商务插件,说实话真的不多,其中Syliu就是不多中的非常优秀的候选。
当然Sylius也存在一些问题:
- 本身处在开发过程中,很多功能需要自己完善,bug需要自己修复,比如支付功能,订单管理很多核心功能没有
- 遇到问题后只能查看英文文章,中文资料完全空白。还好自己曾经训练过英文材料搜索和阅读能力,这方面没有多大问题
- 社区发展还处在初期阶段,但是Symfony本身社区非常庞大,这是比较欣慰的事情。
开发中主要解决的问题
Sylius已经提供了作为电子商务网站的基本功能,开发过程中主要的时间是用在模板的开发上面,有前台模板,后台模板和用户中心三套模板。
另外是用户个人中心功能需要独立开发,比如个人订单历史,个人收藏夹,个人评论等基本功能。
添加了评论模板,心愿单模板,博客模块
开发了支付宝支付模块
完善了订单管理,订单跟踪功能
因为Symfony本身非常优秀的架构,所以在开发以上功能模块的时候如履平地,但是项目总体的进度也比最初预计的时间增加了很多(最初预计是一月内结束,结果用了两个月的时间完成开发)。
可以做的更好的地方
Sylius提供的BDD没有用到,自动化测试方面几乎没有做,当项目变得更加庞大的时候,测试会成为一个问题。
集成了很多第三方bundles,有些地方进行具体的个性化的时候相对难度会增大。
时间管理方面可以做的更好,让规划更加科学可行。
Symfony电子商务的更多相关文章
- .net 大型分布式电子商务架构说明
.net大型分布式电子商务架构说明 背景 构建具备高可用,高扩展性,高性能,能承载高并发,大流量的分布式电子商务平台,支持用户,订单,采购,物流,配送,财务等多个项目的协作,便于后续运营报表,分析,便 ...
- 【读书笔记《Bootstrap 实战》】5.电子商务网站
构建了公司网站之后,接下来就可以考虑设计一个在线商店了. 此次的设计以上一章的设计为基础, 只是添加了一个包含如下元素的新页面: □ 包含商品小图.标题和说明的产品网格: □ 位于左侧的变懒,用于按类 ...
- C#.NET 大型通用信息化系统集成快速开发平台 4.1 版本 - 区域管理功能增强(电子商务方向)
由于公司是面向全国服务的.全国各地都有分公司,需要管理到覆盖全国的各种业务,各种业务系统信息系统的数据都需要规范化. 公司开展网络订单功能,在全国范围内实现网络下单.提高工作效率,提高各公司之间的数据 ...
- [转载]五种常见的电子商务模式对比:B2B、B2C、C2B、C2C、O2O
转载自http://blog.sina.com.cn/s/blog_64e090b001016843.html 转载自http://blog.sina.com.cn/s/blog_64e090b001 ...
- B2C电子商务系统研发——商品SKU分析和设计(二)
转:http://www.cnblogs.com/winstonyan/archive/2012/01/07/2315886.html 上文谈到5种商品SKU设计模式,本文将做些细化说明. 笔者研究过 ...
- symfony安装笔记
下载http://symfony.com/download,这里版本是2.8 将D:\ApacheServer\php路径添加到环境变量path中,在cmd命令行中可以执行php命令 打开php.in ...
- Atitit 电子商务订单号码算法(java c# php js 微信
Atitit 电子商务订单号码算法(java c# php js 微信 1.1. Js版本的居然钱三爷里面没有..只好自己实现了. 1.2. 订单号标准化...长度16位 1.3. 订单号的结构 前 ...
- 电子商务中:B2C、B2B、C2B、C2C、O2O、P2P
c2c实际是电子商务的专业用语,是个人与个人之间的电子商务.比如一个消费者有一台电脑,通过网络进行交易,把它出售给另外一个消费者,此种交易类型就称为C2C电子商务.淘宝是属于C2C模式的. c2 ...
- 15款精美的 WordPress 电子商务网站模板
在这篇文章中,我们收集了15款精美的 WordPress 电子商务网站模板.WordPress 作为最流行的博客系统,插件众多,易于扩充功能.安装和使用都非常方便,而且有许多第三方开发的免费模板,安装 ...
随机推荐
- C语言深度剖析学习错误点记录
0. static修饰变量和函数 static修饰变量,1)限定作用域,本文件内.全局变量(自定义起,本文件前面要用需extern声明),局部变量函数内:2)生命周期,程序运行期间一直保存. stat ...
- MySql避免重复插入记录方法(ignore,Replace,ON DUPLICATE KEY UPDATE)
ON DUPLICATE KEY UPDATE 博客 http://blog.csdn.net/jbboy/article/details/46828917
- Oracle sqlldr导入导出txt数据文件详解
一.sqlldr导入txt 1.预备 a).txt文件 这里要保存成无签名的UTF-8 b).oracle建表 2.编写控制文件input_test.ctl LOAD DATA CHARACTERSE ...
- Android中三种onClick事件的实现与对比
方式一:在activity的onCreate()方法中,嵌入如下代码: Button button = (Button)findViewById(R.id.button1); button.setOn ...
- linux:指令与档案的搜索
linux下的五种搜索方法(参考自鸟哥linux私房菜基础篇): 一.find :功能很强大,直接搜寻整个硬碟的(速度不是很快,如果系统硬碟较旧的话)----特色:find后面可以接多个目录搜索,它本 ...
- Nodejs解决2分钟限制
摘要:解决:在nodejs中调用服务,若超过2分钟服务没有返回数据,node会再次请求服务. 加班的日子总算暂时结束了,才发现下午6点钟的天还没有黑!开始我的总结吧... 去年的某个项目用nodej ...
- org.apache.ibatis.builder.IncompleteElementException: Could not find parameter map
mybatis 出现这个错误是 参数类型写错了.parameterType 写成了parameterMap
- Matlab基本功能:自定义函数、添加块注释、定时器的试用
1.自定义函数 新建一个m文件 在m文件里面第一行输入function [X,Y]=pll(X1,Y1,X2,Y2),这里x1 x2 y1 y2是你函数的输入值, x y是输出值,接着定义你要实现的功 ...
- android studio ADB not responding.
打开cmd 输入 netstat -aon|findstr "5037" 找到谁在占用5037端口 记住他的pid. 例如pid为 2028 输入 taskkill ...
- C#委托实例
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace we ...