电商系统二次开发---经验之谈

本文简单介绍了在电商行业,开发企业自有系统,要处理的一些问题与开发工作经验的一些总结。开发的时候,考虑到了这些问题,开发将会更加顺畅,开发出来的软件将更有生命力。
 
充分利用原有系统功能,把工作量降低到最小
公司的系统是是正在运行中的系统,做二次开发的时候往往是在原有的一些基础功能上升级,这就要求不能破坏原有的功能逻辑,又要利用好先有的功能,因为要实现某些功能的时候,可能有的功能已经有了。例如,电商平台需要做一个充值的功能,系统原本就有支付功能,礼券功能,那我们能否可以考虑把两个功能综合起来改造一下呢?
 
站在平台角度上设计、开发,做到模块化、工具化
开发系统的时候,有时候需要跳出来考虑,开发的视角,不局限于项目本身,不局限于项目组本身,要站在全局的角度考虑。例如,有这样一个场景,负责退换货业务的项目组,需要开发一个功能,退款成功后需要推送一条消息给APP客户端,这个时候,可能需要研究一下诸如极光推送,友盟推送之类的第三方解决方案,然后调用第三方API开发相应的功能。无独有偶,支付组,可能也要做类似的功能,在用户支付成功后,需要推送一条消息给APP,提醒一下用户支付成功了,这个时候,支付组又要研究一下第三方推送的解决方案,做重复性工作了。其实一开始,退换货组就应该分析到,消息推送应该是比较通用的功能,完全可以开发一个通用的工具模块、工具,给整个公司的人使用。当然,开发通用模块这种工作,在有的公司可能有专门的架构组开发完成,这里只是举个例子而已。
 
处理代码积累,重构代码
要相信,需求的变更,是代码产生臭味,使代码变的混乱、腐化的根源。特别是持续迭代更新的代码,有时候为了赶进度,或者为了规避系统产生较大的改动,很容易破坏代码原有设计,或者的随意复制黏贴代码快速实现某些功能,逻辑变得越来越复杂,重复的代码变得越来越多,代码最终改不下去了,然后才想起来要整理下代码,这个时候已经太迟了,可能推到重新来过所付出的成本反而会更低。因此,在开发的时候,要做个有心人,一个小小的优化,一个小小的量变,都是为了未来做质变而准备。
 
各个端兼容,各个版本兼容
公司走的是渠道电商解决方案,开发一个功能的时候,需要考虑到PC官网、安卓端、IOS端、移动T站端、门店系统、ERP系统,这些不同平台如何实现,功能如何取舍;移动端同一个平台,开发的时候,还要考虑向低版本兼容。各种不同端背后可能有不同的团队负责,开展一个涉及面很广的项目的时候,如何更高效地和各个组沟通,如何把握项目的进度,这都是很大的挑战。
 
投入产生的控制,系统完善度与进度、项目风险之前的关系的平衡
开发一个功能,有时候并不是做得越完善就越好,也不是做得越完美就越好,而是要平衡开发的投入成本和项目带来的产出,要考虑值不值得你这样折腾。当然,作为一个纯粹的程序员,不考虑资本家的事情的话,做到100%完善、易用是最好的。
 
可行性、需求、开发、测试、上线、上线后的监控、上线后的效果、后续运维和升级的需求全程跟踪
作为开发人员,在参与项目的生命周期中,电商行业与其他行业有不同的地方,可能在于上线后的监控、效果跟踪和运维。在电商行业,如果系统出现了问题,很有可能会影响销售、影响客户体验,或者是出现一些漏洞,造成公司损失。因此确保系统稳健运行,不出问题至关重要,在系统上线后,必须做好监控,确保出了问题能够第一时间发现和处理。系统稳定之后,还需要做效果评估,看开发的功能、做的项目是否带来了回报 ,效果如何,看有没有什么地方需要改进、升级,获取更大的回报。
 
 
读到最后,读者可能觉得文章可能是标题党,这些经验可能跟电商企业开发关系不是很必然,也许在任何一家软件开发的公司都会碰到这些问题,这也许是软件开发想通的地方吧,但这确实是本人在从事电商行业软件开发工作只所感,如有不合理的地方,还请指正,如有更多好的经验和方法,欢迎分享。

转载于:https://www.cnblogs.com/still-windows7/p/xitongkaifajingyanzhitan.html

基于SpringBoot+MyBatis实现。 后台管理系统包含商品管理、订单管理、会员管理、促销管理、运营管理、内容管理、统计报表、财务管理、权限管理、设置等模块。 #### 后端技术 技术 | 说明 | 官网 ----|----|---- Spring Boot | 容器+MVC框架 | [https://spring.io/projects/spring-boot](https://spring.io/projects/spring-boot) Spring Security | 认证和授权框架 | [https://spring.io/projects/spring-security](https://spring.io/projects/spring-security) MyBatis | ORM框架 | [http://www.mybatis.org/mybatis-3/zh/index.html](http://www.mybatis.org/mybatis-3/zh/index.html) MyBatisGenerator | 数据层代码生成 | [http://www.mybatis.org/generator/index.html](http://www.mybatis.org/generator/index.html) PageHelper | MyBatis物理分页插件 | [http://git.oschina.net/free/Mybatis_PageHelper](http://git.oschina.net/free/Mybatis_PageHelper) Swagger-UI | 文档生产工具 | [https://github.com/swagger-api/swagger-ui](https://github.com/swagger-api/swagger-ui) Hibernator-Validator | 验证框架 | [http://hibernate.org/validator/](http://hibernate.org/validator/) Elasticsearch | 搜索引擎 | [https://github.com/elastic/elasticsearch](https://github.com/elastic/elasticsearch) RabbitMq | 消息队列 | [https://www.rabbitmq.com/](https://www.rabbitmq.com/) Redis | 分布式缓存 | [https://redis.io/](https://redis.io/) MongoDb | NoSql数据库 | [https://www.mongodb.com/](https://www.mongodb.com/) Docker | 应用容器引擎 | [https://www.docker.com/](https://www.docker.com/) Druid | 数据库连接池 | [https://github.com/alibaba/druid](https://github.com/alibaba/druid) OSS | 对象存储 | [https://github.com/aliyun/aliyun-oss-java-sdk](https://github.com/aliyun/aliyun-oss-java-sdk) JWT | JWT登录支持 | [https://github.com/jwtk/jjwt](https://github.com/jwtk/jjwt) LogStash | 日志收集 | [https://github.com/logstash/logstash-logback-encoder](https://github.com/logstash/logstash-logback-encoder) Lombok | 简化对象封装工具 | [https://github.com/rzwitserloot/lombok](https://github.com/rzwitserloot/lombok) #### 前端技术 技术 | 说明 | 官网 ----|----|---- Vue | 前端框架 | [https://vuejs.org/](https://vuejs.org/) Vue-router | 路由框架 | [https://router.vuejs.org/](https://router.vuejs.org/) Vuex | 全局状态管理框架 | [https://vuex.vuejs.org/](https://vuex.vuejs.org/) Element | 前端UI框架 | [https://element.eleme.io/](https://element.eleme.io/) Axios | 前端HTTP框架 | [https://github.com/axios/axios](https://github.com/axios/axios) v-charts | 基于Echarts的图表框架 | [https://v-charts.js.org/](https://v-charts.js.org/) Js-cookie | cookie管理工具 | [https://github.com/js-cookie/js-cookie](https://github.com/js-cookie/js-cookie) nprogress | 进度条控件 | [https://github.com/rstacruz/nprogress](https://github.com/rstacruz/nprogress)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值