基于B2C电子商城开发.doc

  1. 1、本文档共63页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于B2C电子商城开发

一.项目背景 1.项目的意义 www = why + what + how W:why? 看看自己学的怎么样 能否灵活运用各个知识点,完成一个项目。 找到做项目的一个感觉,积累项目经验,为找工作奠定基础。 通过项目,认识自己的不足,然后更加努力。 2.项目定位 W:what? PHP可以干什么? Web开发,基于B/S 电子商务 CMS,内容管理系统,涵盖面比较广泛 SNS,社交网站 各种管理系统 电子商务的一些模式 B,商家 C,客户 B2C:商家对客户。凡客,小米 C2C:客户对客户, 网站方只提供平台。淘宝、拍拍 B2B2C:商家对商家对客户。京东,当当,国美,苏宁 B2B:商家对商家,批发平台。阿里巴巴 O2O:online 2 offline,线上线下,美团、糯米,大众点评,比较依赖于地图。 最多的是B2C。 我们的项目,是基于B2C模式的电子商城。 做的过程中,可以参考ecshop、京东。 W:how 二.项目规划 1.项目整体架构 从电子商务的角度来讲,电子商城通常包括 3 个方面: 商品部分 用户部分 电子商务(订单) 从开发项目的角度来看,需要完成两个方面的事情 后台的开发 前台的开发 整体架构图 商品模块,是我们商城的核心,也是整个电子商城项目中最难的一个内容。 2.时间安排 三.数据库设计 重要程度:***** 难度:***** 数据库的设计,就是体现了你对业务逻辑的理解。 数据库设计的好坏,有时候决定了项目的成败。 要点: 表与表之间的关系 (一对一、一对多[多对一],多对多[难]) 每一个字段的数据类型 (数值、字符串、日期时间)没有布尔类型[使用tinyint] 如何来设计数据库?----以商品模块为例 找到核心(中心),然后一步一步的展开。 核心----商品 先来初步设计一下商品表的字段: 名称、价格、图片、颜色、上架时间、各种规格参数、详细描述,库存,品牌、分类。 这么多的属性,是存放到一张表当中的吗? 品牌和商品是两个不同的东西,设计表的一个理念:一张表表示一种信息。 冗余--更新异常、删除异常。耦合性高。 软件开发的一个理念:低耦合、高内聚。 如何来判断品牌和商品是两种不同的信息呢? [小技巧]:看他们的生存周期-----生死时刻。 品牌:apple 1984年就有了 商品:iphone 6 2014年才有的 商品 和 它的价格,生存周期就是一致的。有了这个商品,自然就要定一个价格。 应该吧品牌单独的拿出来,用一张新的表保存。 品牌和商品有关系,是一个什么样的关系呢? 正反两个方向来看。 一个品牌 对应 n 个商品 一个商品 对应 1 个品牌 综上所述:品牌和商品之间的关系 一对多 1:n 如何体现这种一对多的关系呢? 1的一方,称之为父表,多的一方称之为子表。需要在子表中增加一个字段,和主表中的主键进行关联,子表中的这个字段就是外键。 由一张表到两张表,这个过程很重要。 商品分类信息,同样也单独的保存到一张表中。商品分类表。 商品的扩展属性 先看实际情况 三星s6 苹果6 再来看书籍的情况 Php书 Mysql书 不同类型(书、手机)的商品有不同的扩展属性。 商品的属性,对商品的描述,通常分为两种信息: 基础信息:所有的商品都具备的属性,如商品名称,价格,缩略图。 扩展信息:不同类型的商品,它的扩展信息是不同的,如服装,有材质,颜色,做工,手机则具备 屏幕尺寸,操作系统,内存大小,摄像头,书籍具备 出版社,作者,ISBN,印刷。 不同类型的商品,它有不同的扩展属性, 首先就需要把这些扩展属性保存起来。此时就有两种表,goods_type和attribute表。 要注意,attibute表存到属性本身,不是某个商品的属性。 商品和属性之间的关系。 解决多对多的问题,需要引入第三张关联表。 本项目商品模块的表设计ER图 思考: 商品分类和商品类型有何区别? 商品分类它是为商品服务,为了将商品进行分门别类的管理, 商品类型是为属性服务的, 二者的目的就不一样了。 四.编程思想 思想决定高度。 1.oop思想 OOP:Object Oriented Programming,面向对象程序设计,面向对象编程 OOP的三大特征: 封装,通过类实现的,将内部实现细节隐藏起来,给外部提供一个调用接口。 继承,通过extends来实现的,子类可以继承父类的属性和方法(protected和public) 多态,php本身就是多态的,php是弱类型的语言。在php中一般不怎么提到多态概念。 OOP的好处: 可维护性好 可扩展性好 可重用性好 灵活度好 我们的项目也是采用OOP的,所以就有很多类和方法。 2.mvc模式 Mvc思想(重点) 面试题。 如何理解mvc? M:model,模型,负责完成具体的业

文档评论(0)

tmd2017 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档