1. 如何设计B2B电子商务网站的部门架构
我帮助 给撰稿啊~原创的设计B2B电子商务网站的部门架构.
2. 电子商务网站常用的系统架构哪些
一. 商品展示
站内搜索(搜索提示,搜索规则,搜索成功页,搜索不成功页,相似推荐)
导航(频道导航,其他导航如销售排行,广告位,推荐位,文字链,also buy等)
商品分类(品牌分类,品类分类,属性分类如剪裁形式)
登陆页(商品列表页,商品详细页,商品活动页)
这里的访问逻辑是:a /b/c分流消费者去往相对个性化的页面,由登陆页体现商家的核心诉求和价值传递,完成call-to-action的第一步。
二. 内容展示:内容展示较为简单,对纯购物品牌而言包括:
公告区
帮助中心
论坛(如需商城与论坛发生交互,则需自行开发,否则可集成discuz做同步登陆即可)
三. 订单确认
订单确认,就是帮助消费者正确提交订单信息的环节,看似简单,实则非常复杂,需要对很多信息逻辑判断和处理,一般由2个部分组成:
购物车
订单提交(返回购物车,收货地址&地址薄,支付方式判断,配送方式,发票,订单标记,实付金额计算等等)
四. 支付系统
与一般的想象不同,支付系统其实并不简单等于第三方支付工具接入:
外部支付系统(支付宝将接口,财付通接口,网银直联端口,信用卡分期端口)
内部支付系统(账户余额,积分,礼品卡,优惠券)
支付系统的逻辑设计不但需要考虑到各种极端情况的发生(如一张订单先用礼品卡,再用积分,最后网银支付),还要预留财务做账所需的相关字段,并充分考虑订单取消之后如何回滚各类内部账户。
五. 用户中心
注册&登陆(快速注册,完整注册,注册有礼,推荐注册,密码找回,主站id登陆,open-id登陆如qq,新浪微博等)
订单中心(历史订单状态,中间状态订单修改,物流追踪)
服务中心(各类自助服务如退款申请,退换货申请,建议与投诉等)
信息管理(用户基本信息管理和账户信息管理)
一. 商品&促销
商品管理(品类管理,品牌管理,单品管理)
促销管理(活动管理和自定义活动模板管理)
在上述模块中,最重要的是2个部分:单品管理中的批量产品生成的自动程序和活动管理中“共享与互斥”管理。前者用于大幅提升上新速度,后者避免促销活动失控。
二. crm :crm是对b2c核心资源—会员的管理,服务与再营销系统,包括如下部分:
会员管理(会员信息的增删改查和到其他系统的链接)
用户关怀(条件触发和人工触发相关edm &短信& ob)
定向营销(会员分组和营销活动管理)
客服管理(内容非常多,集成所有需前台与后台交互的功能,详情还是看图吧)
呼叫中心(ivr,坐席管理,统计报表,参数传递与窗口嵌入)
值得注意的,edm和短信通道市面上已经有成熟的外包服务商,一般都会外包;呼叫中心和在线客服自行开发成本太高,特别是呼叫中心系统,业务初期也都是外包的。
三. 订单处理:订单处理是在订单未正式进入仓储部门处理之前,对订单的前置性处理环节。
订单录入(电话订购,网上下单,外部团购订单,无金额订单录入如礼品单)
订单审核(自动审核和人工审核)
rma处理(rma申请单和rma处理单)
四. wms(warehouse management system仓库管理系统)
wms的流程很长,功能模块也很多,大致分为入库管理,库存管理,出库管理和票据管理4个模块四个模块
五. 采购管理
供应商管理(供应商信息管理,合同发票管理)
采购单管理(po单管理,负po单管理)
库存管理(库存查询,库存占用单,库存变动log)
六 .财务管理:b2c的财务管理,主要是对供应商,渠道和内部费用支出的成本控制。
供应商结算
渠道结算
配送结算
内部结算
七. 报表管理:报表是b2c业务的宏观表现,理论上说,每个部门的kpi都应该从中找到。
搜索报表(站内搜索量查询)
销售报表(多个维度销量查询,优惠券使用情况,报表导出)
财务报表
客服报表(客服日报和坐席报表),前者反映与消费者发生的日常交互(包括正常与异常),后者考核客服的工作绩效
仓储物流报表,这几块报表,是业务运作的核心,涉及到公司机密,就不能写的太细了,见谅。
八. 系统设置:这块大家都知道是干嘛的,也就不多说了,分成三块。
基础设置(和业务有关的一些字段值)
权限设置(不同账号的操作权限和操作记录)
其他设置
九. wa系统(web analytcis)
网站分析系统,几乎全是外购,很少有能够自建的,即使自建,最多做几个简单的模块。用于实战的,要么是免费的ga(google analytics),要么是昂贵的omniture。
3. 电子商务网站的基本架构
电子商务网站的基本架构设计
电子商务网站是以商务活动为中心进行的,而网站的盈利一般通过网站的会员制收费进行,网站的盈利点是网站根据网站的商务活动内容确定的,所以网站的基本架构设计既要以商务活动的业务内容、流程、相关规则为基础,又要兼顾电子商务网站的收费体系.
网站基本架构的设计主要根据以下步骤进行:
2.1 确定电子商务网站功能定位
确定网站所涉及的商务活动的内容、商务活动的流程.比如我们在进行房产信息网的设计中,首先考虑确定网站发布房产信息的种类,确定了房源信息包括中介所的房源信息和个人的出售、出租信息,网站负责信息的发布和信息的管理.同时在确定了信息发布种类后,确定了信息处理的流程为房源信息输入、会员资格审核、信息审核,信息发布.
2.2 确定网站的收费对象和收费规则
在网站所涉及的商务内容确定了的情况下,确定收费的对象和如何进行收费,以此为依据确定网站的栏目.网站栏目的划分实际上就是系统的功能模块划分.在房产网站的系统设计中,确定了网站只对房产中介所进行收费,个人用户免费,所以网站的主要栏目分为个人专区和中介所专区两个主要栏目,同时根据功能的逐步扩大,这样也就基本确定了网站的信息服务内容和方式.
2.3 确定网站的栏目的功能
在确定了网站的收费项目后,要确定网站的主要栏目和功能,包括网站的管理功能模块、网站的信息发布方式、网站商务活动的发布以及网站导航栏等.
网站的功能栏目的设置和系统的主要功能模块的划分是相一致的.
网站业务介绍性栏目,应包括内容应包括会员申请流程,收费标准,网站运行规程等,使用户对网站的服务有一个明确的了解,是扩大网站的会员用户数量和提高网站的使用率都是必不可少的栏目.
网站的导航栏是网站的整体功能的全面介绍,使用户对网站的功能有一个清晰的了解,也是网站不可缺少的栏目.
同时也应有网站运行的相关提示信息,比如在房产网站的设计中,我们在确定了收费对象和主要功能后,确定了网站首页的主要栏目为中介所专区、个人专区、写字间专区、新房楼市等栏目,同时加入了上网导航栏目对网站的主要功能进行介绍.
2.4 确定网站的信息流和控制流
在确定了网站的主要功能和商务活动的主要规则后,应该确定网站的信息流图和控制流图,作为数据库设计的基础.
在房产网的设计中,我们根据房产信息发布的功能和所确定的信息审核和控制流程,在确定了一个网站的数据流图和控制流后,系统的运行控制流程也就确定下来了.
4. 电子商务的框架是什么
电子商务套件是电子商务时代,基于ERPII思想的管理软件,主要强调的是企业在整个产业链中的协同商务能力,以物流为基础,物流、信息流、资金流、商务流四流合一,串起ERP、SCM、CRM、DRP等企业信息化应用的各个部分,是电子商务套件的显著特征。目前主流的电子商务套,国外以Oracle11i为代表,国内以博科的Open9000为代表。
本文以国内外主流的电子商务套件为例,讲述电子商务套件的框架及设计理念。
一、产品框架
1、什么是电子商务套件
电子商务套件是旨在增强整个价值链竞争优势,采用基于活动管理的技术来评估各种业务流程,消除重复(即不增值)的活动;强调内部协作和外部协同;以物流管理为基础,功能涵盖ERP、CRM、SCM、DRP等企业信息化应用,同时支持企业间的协同商务。通过标准化的咨询、实施和服务,为企业分阶段快速部署行业化解决方案,在开放、集成的平台基础之上,可以灵活地满足用户个性的需求及企业业务不断变化的要求。
对于需要管理创新的中国企业来说,电子商务套件不单是软件产品,而是为企业引进一种先进的管理思想,导入一套成熟的经营管理模式、管理方法和手段。
2、电子商务套件应用框架
电子商务套件为企业信息化搭建起一个战略框架,在这个框架指导下,企业可以根据自身的实际需求迅速构筑信息平台,同时可以灵活、动态地、有效地管理,并实现电子化的商业事务处理的能力,使企业可以持续保持在IT投入上的竞争力,在提供的专业、贴身的服务下塑造自己的独特竞争优势。在这一灵活弹性的框架下,电子商务套件供应商给出了在供应市场、消费市场、资本市场、知识市场具体应用解决方案,体现了作业层、管理层和决策层等不同层次的应用,真正实现物流、资金流、信息流、商务流四流合一。实现了企业的集成管理,使企业产、供、销、人、财、物各个环节联结成一个紧密衔接的有机整体,同时也为进一步实现产业链级的协同商务提供了保证。
电子商务套件主要的应用框架特点:
◆ 全面集成、功能完整应用解决方案
◆ 弹性、灵活、可成长
◆ 开放的体系,集成第三方应用
◆ 基于价值链,面向电子商务及产业级协同商务
◆ 标准化服务、快速实施
电子商务套件应用框架
3、子商务套件主要特点
电子商务套件针对不同企业的规模,不同企业的类型以及不同管理模式与管理流程,均能够实现功能可裁剪性、系统可配置性、流程可重构性、平台可移植性。
主要特点:
◆ 基于架构式平台技术,开放、集成,可成长
◆ 跨平台操作,支持多种大型数据库
◆ 先进的工作流技术,工作流程可自由定义
◆ 国际化应用,多语言、多币种及多会计制度
◆ 协同商务,实现全程物流管理
◆ OLAP技术,实现多维多点智能分析
◆ 全面的预算管理,完善的KPI绩效考核
◆ 支持多种生产管理模式,灵活的计划应变功能
◆ 全面电子化的实时企业内部审计
◆ 支持移动计算技术,实现移动商务
4、电子商务套件的主要功能部件
国外电子商务套件产品,以Oracle 11i为例,主要的功能部件或者模块包括:
◆ 市场营销
◆ 销售
◆ 服务
◆ 合同
◆ 财务
◆ 人力资源
◆ 供应链管理
◆ 定单管理
◆ 项目管理
◆ 采购
◆ 资产管理
◆ 生产制造
国内电子商务套件产品,以博科Open9000为例,主要的功能部件或者模块包括:
◆ 财务管理
◆ 生产制造
◆ 购销链管理
◆ 客户关系管理
◆ 物流配送系统
◆ 零售系统
◆ 工作流及知识管理
◆ 企业内审
◆ 集团管理
◆ 商业智能
◆ 企业信息门户
二、设计理念
电子商务套件的产品核心理念,主要包括:技术平台化,功能套件化,应用协同化。
以博科电子商务套件Open9000为例,产品理念的详细情况阐述如下:
1、技术平台化
架构式平台技术是企业级应用软件开发技术的一种趋势,博科的Open9000平台是基于软件构件技术,完全集成和开放的“通用对象化内核+客户端界面”体系架构(构件应用框架),是目前国内在技术上居于领先的,最具规模的大型企业管理平台。构件应用框架,它常是针对特定应用领域的,表示构件复用所需的软件结构架构,说明构件是如何组装成应用系统的,以及它们是如何相互交互的,框架既反映了一个应用领域共性的功能和基本的支撑服务,代表更大、更高层次的设计复用模式,另外,它又具备灵活性和可扩充性,允许客户根据特定应用需要,在一些可变的插入点上,接入所需特定功能的构件,进行客户化。“通用对象化内核”是一个群件化结构的用于数据处理的构件仓库,它包含了企业管理中各类基本业务内容和业务逻辑规则。在内核的基础上,针对不同行业企业处理的特点和需求,抽取不同的构件进行组合。
博科电子商务套件正是基于这一软件工程思想,基于这一平台技术实现的,并在此基础上快速孵化出各种行业版本的解决方案。
平台技术的优势:
◆ 可以使企业方便地、快速地、平滑地增加新的功能,新的构件同原有的构件可以集成在一起可靠地工作
◆ 可以特别灵活地、动态地重新配置,将一个构件替换为升级的新版本不必考虑对其它构件的适配
◆ 允许对给定的任务采用不同的软件开发供货商提供的软件,企业在实现它的解决方案时具有选择产品的充分自由
◆ 企业可以容易地、灵活地将为企业特别设计的构件与整个系统集成使用,从而实现企业的特殊需求
◆ 基于构件的解决方案能够为进一步方便地扩展系统功能提供方便,因为定制的构件的接口也可以由用户特殊构件的使用
2、功能套件化
对于ERP软件来说,集成是第一位的。由于国内管理软件起步较晚以及在产品发展规划方面缺乏远见,没有考虑到不同产品的集成,甚至依靠收购的方式来增加完善功能,结果导致用户在使用过程中形成了一个个信息孤岛,无法发挥信息整合的作用。同时用户可能面临对于相同的基础资料要分别维护,数据需要重复输入之类的问题,一方面带来无效劳动;另外为了得到想要的数据,不得不做大量的二次开发工作,这不但增加项目实施的难度,还会使预算大大超过计划。这些都给企业信息化设置了陷阱。
博科是国内第一家倡导套件概念的软件厂商,博科电子商务套件基于博科Open9000平台实现了大型企业应用程序的全面集成,其十一大功能部件涵盖了公司的前台和后台办公系统,不同的功能模块均能互连互通,还提供了无缝实时的商业智能。
3、应用协同化
企业运作效率越来越依赖于各部门、各类不同应用的协同,而不是单一部门、单一应用的水平。由于电子商务的出现,人们开始从单纯关注交易这一节点向关注商务全过程转移,这将使协作扩大到整个供应链上企业业务之间的协作。在企业内部,有各部门之间的业务协同、不同的业务指标和目标之间的协同以及各种资源约束的协同。如协同的生产管理能根据现有可调配的人力、物力和设备能力等资源进行优化排产,以便实现按期交货。而在企业之间,业务间的协同变得更为重要,也更难实现。在供应链上,企业为了满足客户和市场的需求,通常需要有三个层次的计划:需求计划、供应计划、满足需求计划,通过实施这三个计划来完成需求与供给的匹配,在相应执行层次上提供支持功能。
只有做好不同层次、不同业务间的协同,才能帮助企业提高其产品和服务的创新能力,优化企业内部的业务流程,合理调配企业及供应链上的资源,更好地实现企业的并行运作,提高企业和供应链整体的快速响应能力。
5. 电商网站的功能架构什么意识
网站基本架构的设计主要根据以下步骤进行:
2.1 确定电子商务网站功能定位
确定网站所涉及的商务活动的内容、商务活动的流程.比如我们在进行房产信息网的设计中,首先考虑确定网站发布房产信息的种类,确定了房源信息包括中介所的房源信息和个人的出售、出租信息,网站负责信息的发布和信息的管理.同时在确定了信息发布种类后,确定了信息处理的流程为房源信息输入、会员资格审核、信息审核,信息发布.
2.2 确定网站的收费对象和收费规则
在网站所涉及的商务内容确定了的情况下,确定收费的对象和如何进行收费,以此为依据确定网站的栏目.网站栏目的划分实际上就是系统的功能模块划分.在房产网站的系统设计中,确定了网站只对房产中介所进行收费,个人用户免费,所以网站的主要栏目分为个人专区和中介所专区两个主要栏目,同时根据功能的逐步扩大,这样也就基本确定了网站的信息服务内容和方式.
2.3 确定网站的栏目的功能
在确定了网站的收费项目后,要确定网站的主要栏目和功能,包括网站的管理功能模块、网站的信息发布方式、网站商务活动的发布以及网站导航栏等.
网站的功能栏目的设置和系统的主要功能模块的划分是相一致的.
网站业务介绍性栏目,应包括内容应包括会员申请流程,收费标准,网站运行规程等,使用户对网站的服务有一个明确的了解,是扩大网站的会员用户数量和提高网站的使用率都是必不可少的栏目.
网站的导航栏是网站的整体功能的全面介绍,使用户对网站的功能有一个清晰的了解,也是网站不可缺少的栏目.
同时也应有网站运行的相关提示信息,比如在房产网站的设计中,我们在确定了收费对象和主要功能后,确定了网站首页的主要栏目为中介所专区、个人专区、写字间专区、新房楼市等栏目,同时加入了上网导航栏目对网站的主要功能进行介绍.
2.4 确定网站的信息流和控制流
在确定了网站的主要功能和商务活动的主要规则后,应该确定网站的信息流图和控制流图,作为数据库设计的基础.
6. 架构电子商务网站的五个步骤分别是什么
1.
电子商务网站的规划与分析关系到电子商务的经营效果,盲目的投入时间、人力、资金、经业务搬到网上运行,不但会造成浪费,更会与传统渠道相冲突,影响客户对公司的印象。
2.
电子商务网站的设计与开发的主要内容是根据网站的定位,确定网站的内容信息结构,风格基调和功能模块。运用相关的开发技术和工具进行页面设计与制作。以及在选定数据库管理系统平台上进行数据库的设计与管理
3.电子商务网站的好坏,都必须经过一定的测试来解决。测试的内容包括功能测试、性能测试、安全性测试、稳定性测试、浏览器兼容模式测试、连接测试等。进过测试后,就要把网站对外发布出去了。网站发布,简单的说就是将构成整个网站的所有文件部署到WEB服务器上,经过简单的配置发布到互联网上的过程。
4、确定网站的栏目的功能
在确定了网站的收费项目后,要确定网站的主要栏目和功能,包括网站的管理功能模块、网站的信息发布方式、网站商务活动的发布以及网站导航栏等.
5. 电子商务网站推广包括利用传统的媒体广告、利用搜索殷勤、网络广告、BBS、新闻组、邮件列表公共关系等。
资料来源:http://www.netshop168.com/article-3380.html
7. 电子商务网站结构
电子商务网站结构是指网站中页面间的层次关系;按性质可分为逻辑结构及物理结构。网站结构对网站的搜索引擎友好性及用户体验有着非常重要的影响;
电子商务网站结构在决定页面重要性(即页面权重)方面起着非常关键的作用;
电子商务网站结构是衡量网站用户体验好坏的重要指标之一。清晰的网站结构可以帮助用户快速获取所需信息;相反,如果一个网站的结构极其糟糕的话,用户在访问时就犹如走进了一座迷宫,最后只会选择放弃浏览;
电子商务网站结构还直接影响搜索引擎对页面的收录,一个合理的网站结构可以引导搜索引擎从中抓取更多有价值的页面;
电子商务网站结构对网站及网站中页面的影响。搜索引擎对重要页面的抓取;由于互联网中信息量极其庞大,为了向用户展示更多有价值的信息,搜索引擎会优先抓取每个网站中相对重要的页面(即权重较高的页面)然而,搜索引擎是怎样发现这些重要页面的呢?根据重要页面的链接指向的页面可能是重要页面的思路;
搜索引擎首先会从权重相对较高的页面(即源页面)出发跟踪其中的链接,从而抓取其他相对重要的页面(即目标页面);
通过电子商务网站结构分析,培基帮您设计高效、快捷的网站结构,提高网站的易操作性,让客户在最短的时间内找到想要的内容,改善客户的操作体验;
培基建议:
通过主页可以到达任何一个一级栏目首页、二级栏目首页以及最终内容页面;
通过任何一个网页可以返回上一级栏目页面并逐级返回主页;
主栏目清晰并且全站统一;
通过任何一个网页可以进入任何一个一级栏目首页
不同主题的网站对网页内容的安排会有所不同,但大多数网站首页的页面结构都会包括页面标题、网站LOGO、导航栏、登录区、搜索区、热点推荐区、主内容区和页脚区等构成;
参考资料:东莞培基官方网站
8. 电子商务网站一般架构有哪些
1.电子商务的基本概念电子商务是利用计算机及互联网开展的各种商务活动。其中电子是手段,商务是目的。是通过网站的商务运作和会员制收费,达到盈利的目的。电子商务包括以下三部分内容:
电子:指信息基础设施及相关应用系统,其中信息基础设施包括internet 网络基础和信息技术,应用系统应包括支持电子商务活动的网站。
商务:指业务内容、流程及规则,这是电子商务网站系统设计的基础和依据。
信息:指业务活动中的数据,应完整、全面、实时、动态。业务活动所使用的数据也是网站系统数据库设计的依据。Internet技术、信息技术系统和商务过程的有机集成形成了一个新的商务模型,即电子商务模型。2.电子商务网站的基本架构设计电子商务网站是以商务活动为中心进行的,而网站的盈利一般通过网站的会员制收费进行,网站的盈利点是网站根据网站的商务活动内容确定的,所以网站的基本架构设计既要以商务活动的业务内容、流程、相关规则为基础,又要兼顾电子商务网站的收费体系。网站基本架构的设计主要根据以下步骤进行:2.1 确定电子商务网站功能定位 确定网站所涉及的商务活动的内容、商务活动的流程。比如我们在进行房产信息网的设计中,首先考虑确定网站发布房产信息的种类,确定了房源信息包括中介所的房源信息和个人的出售、出租信息,网站负责信息的发布和信息的管理。同时在确定了信息发布种类后,确定了信息处理的流程为房源信息输入、会员资格审核、信息审核,信息发布。2.2 确定网站的收费对象和收费规则在网站所涉及的商务内容确定了的情况下,确定收费的对象和如何进行收费,以此为依据确定网站的栏目。网站栏目的划分实际上就是系统的功能模块划分。在房产网站的系统设计中,确定了网站只对房产中介所进行收费,个人用户免费,所以网站的主要栏目分为个人专区和中介所专区两个主要栏目,同时根据功能的逐步扩大,这样也就基本确定了网站的信息服务内容和方式。2.3 确定网站的栏目的功能在确定了网站的收费项目后,要确定网站的主要栏目和功能,包括网站的管理功能模块、网站的信息发布方式、网站商务活动的发布以及网站导航栏等。网站的功能栏目的设置和系统的主要功能模块的划分是相一致的。网站业务介绍性栏目,应包括内容应包括会员申请流程,收费标准,网站运行规程等,使用户对网站的服务有一个明确的了解,是扩大网站的会员用户数量和提高网站的使用率都是必不可少的栏目。网站的导航栏是网站的整体功能的全面介绍,使用户对网站的功能有一个清晰的了解,也是网站不可缺少的栏目。同时也应有网站运行的相关提示信息,比如在房产网站的设计中,我们在确定了收费对象和主要功能后,确定了网站首页的主要栏目为中介所专区、个人专区、写字间专区、新房楼市等栏目,同时加入了上网导航栏目对网站的主要功能进行介绍。 2.4 确定网站的信息流和控制流 在确定了网站的主要功能和商务活动的主要规则后,应该确定网站的信息流图和控制流图,作为数据库设计的基础。在房产网的设计中,我们根据房产信息发布的功能和所确定的信息审核和控制流程,确定房产网的基本数据流图为: 实例:一个网站的数据流图在确定了一个网站的数据流图和控制流后 ,系统的运行控制流程也就确定下来了。3.网站的后台管理在网站的基本功能和数据流确定后,为了保证网站信息的准确性和有效性,应有完善的后台管理和维护系统,进行相关数据的审核,定期进行数据库的维护和备份,进行缴费会员资格的管理,有效的保证网站的商务运作。我们在房产信息发布网站的后台管理系统的系统设计中,设计了一套完整的网站后台管理系统,主要功能包括房源信息管理如:房产信息审核、房产信息删除、房产信息删除确认;网站运行提示信息的管理,主要是对网站与商务运营有关的信息进行管理,使网站的用户对网站的运行情况进行管理;网站会员资格的审核,对逾期未缴费的用户取消会员资格;网站系统管理员权限管理,对不同的网站系统管理人员进行授权使用不同的后台维护功能。4.网站的数据库设计在确定了网站的主要商务的业务对象和业务流程后,可以确定了网站的数据流,也就可以进行数据库设计。 在进行数据库设计时,同样和一般的应用系统开发一样,应该注意信息的完整性和数据的独立性。我们在房产网站的开发过程中,在数据库的设计阶段,对系统的数据库按房源的基本信息、中介所信息、个人信息分别进行库表的设计,同时对系统的维护信息、权限管理等控制信息设计独立的库表,主要的数据库表为房源信息表、中介所信息表、会员信息表等,这样可以方便网站的信息输入、数据库查询同时也方便网站后台的数据库管理和数据库维护。数据库表数据的独立性和数据冗余直接影响数据的存取效率,影响网站的运行速度,所以在数据库设计时一定要避免数据的冗余性,同时要避免长数据库表的设计。总结:在电子商务网站开发过程中,网站的商业运作模式决定了网站系统设计,一个功能清晰的网站的设计,一定要从网站的系统设计入手。
9. 电商前端架构设计
什么是前端架构
说到架构,很容易拉出一系列的概念知识点,像系统架构、软件架构、框架等等,这些不是今天探讨的重点,大家可以下去网络来理解。架构的本质是什么?其实也是一种管理。通常我们所说的管理,都是指对于任务和人员的管理,而架构管的是机器和代码。比如说,机器的部署属于运维的物理架构,SOA属于服务架构,那么,前端的架构指什么呢?
长期以来,前端所处的位置是比较偏应用层,很薄的一层,而架构又要求深度和广度,所以之前在前端里面做架构,好比在小水塘里游泳,稍微扑腾两下就到处碰壁。但最近这几年来,随着一些列新的技术和概念的出现,前端的范围被大大拓展了,所以这一层逐渐变得大有可为。
单纯从语言的角度来说,html、js、css是最简单最容易上手的开发语言,不考虑模块化、工具、压缩优化,任何人都可以快速上手,完成一两个功能简单的页面。在规模很小的项目中,前端技术要素彼此不会直接产生影响,因此无需架构相关的思考。由于前端语言这种灵活松散的特点,使得前端项目规模在达到一定规模后,工程问题凸显,成为发展瓶颈,原来孤立的技术要素开始彼此产生影响,各种技术要素彼此之间开始出现关联,要用模块化开发,就必须对应某个模块化框架,用这个框架就必须对应某个构建工具,要用这个工具,就必须对应某个包管理工具……这个时候,需要有人从比较高的角度去梳理、寻找适合自己团队的集成解决方案。而这一系列解决问题的工具和手段就是所谓的前端架构。
架构的组成
组件框架
架构不等于框架这一点很好理解,相信大家都能够很深入的说明这里的差别,框架是架构的重要组成部分,架构决定框架的选型,框架决定架构的技术路线。架构围绕框架进行一系列的流程工具建设,从而形成完善自动的开发体系。
+框架不等于类库,这里就是很多人困惑的点,你用的什么框架?jquery、underscore、linq、seajs、requirejs等等,每个人都能够列举一大堆。但这个是不准确的,一套编码框架是有一系列的元素组成:
开发模式,我们如何来实现代码的职责分离。以前整个前端是mvc中v这一层,而现在前端内部也进行了mvc的逻辑细分,Javascript的MVC框架现在很多,有的强化m、有的强化c。每一个框架其实都有其特点的,并且有越来越多的创新改造,比如现在最流行的是mvvm。有angular、react等等。我们是为了引入mvvc才把他们纳入到我们的开发体系,而不是因为他是一个好用的类库。
通讯,模块化、组件化是前端在推进开发模式过程中的一个过程产物,为了有效的进行组件隔离和独立,现在有各种各样的通信模型出来,不过由于实现简单,代码少,他往往是合入到某个类库里面,但本质也是一个类库。比较成熟的比如:消息总线、事件模拟、缓存中转、flux模型等等。
模板,我们用什么样的方式来集中的处理数据往html的转换过程,这里就不用多展开,这种类库现在太多了,光我们公司就有很多套,大家在代码行、缓存管理、预编译、运算性能、强大的语法等等各个维度不段追求各种极致。
基础类库最后才是传统类库,相信现在已经没有同学会在项目中去约束团队中的dom操作、常用函数、方法、异步化等等各种很基础东西,这个时候我们一般就是引入jq、zepto、underscor这些封装好的东西就行了。核心就是为了改善编码生产力。
对于框架的选型要从两面看,一是看该框架的本领,二是看你们团队的能耐。从经验上给几个点建议:
这里也可以顺便展开聊一下现在前端产品的形态分类:
从这些分类里面,我们这些年派生出了所谓全端和全栈的概念。但本质上怎么走还是要由所在产品的形态来决定。
内容型Web站点 侧重渲染方面的优化,前端逻辑比重小
操作型B/S系统 以数据和逻辑为中心,界面较规整
hybrid内置型,要处理缓存和一些本地接口,包括PC客户端和移动端。现在的本地应用,基于很多考虑,都变成了混合应用,也就是说,开发这个应用的技术,既包含原生的代码,也包含了嵌入的HTML5代码
Web游戏,前端的逻辑非常重,在代码结构上要求非常高的可管理性和更复杂的设计模式。
桌面应用型,现在有一些PC端的混合应用开发技术,比如node-webkit和hex,前者的典型应用是XDK,后者的典型应用是有道词典,此外,豌豆荚的PC客户端也是采用类似技术的,也有一些产品是用的qt-webkit。这类技术可以方便做跨平台,极大减少开发工作量。
大工程应该尽量避开谷歌产品,他的很多技术开源项目都是玩票性质的,GWT、Closure、Darty就是前车之鉴。曾今提出过很多的新技术,到现在还是独家的,变出太大。包括现在angular,喜欢做断崖式升级,做做运营后台系统问题不大,如果是线上系统的话,每次升级就是一次人月神话中的典型焦油坑。
关注应用场景,像刚才说到的boss后台是一种;另外我的平台是否有沉重的历史包袱,需要兼容ie6,还是可以轻装上阵;产品对于seo是什么样的态度?是否需要考虑自适应?或者我的团队足够大,能够各搞一套?;产品特征是强内容还是强交互或者是游戏性。这些都是选择不同框架的主要出发点。
没有最好,只有最适合自己的,基本上,针对每个平台,我们都可以列出一些主流框架,但不意味着你们都能驾驭得住。小马过马,老牛没过膝,松鼠淹个半死,就是这么回事。但无论我们选择什么框架或决定自己动手造轮子,都勿忘初心,技术必须让我们工作生活更为轻松愉快——我们只选择我们能驾驭住的框架,我们不能保证它在一年后是否会过时落后。
而且按照我个人这么多年的经验来看,任何框架都会过时,往往不是因为他不够好,而是因为一定有更好的出来。我们再选择一个框架或者一个类库的时候就要想好,未来我如何抛弃他。至少不能成为我们引入新的框架的绊脚石。现实的工作中很多的团队往往会陷入到年复一年的用今年的新框架去重构去年老框架代码的历史循环中去。对于引入框架如何尽量延长他的生命力,我个人的意见是选择框架时去追求概念,而不是潮流,当我的架构可以接受新的设计概念的时候才去考虑引入新的框架。用设计理念的选择代替框架的选择。之所以这么说是因为我观察到我们部门的后端架构的开发理念跟我进公司的时候是差不多的。更多你可以参考成都网站建设