撸代码之前我们应该想些什么

举报
架构师聊技术 发表于 2021/04/01 16:59:47 2021/04/01
【摘要】 接手一个新项目,实现一个新功能,你是不是经常立马开干,建库、建表,撸代码呢?如果是,请停下来,慢慢看完这篇文章,如果不是,也请踩下,或许你也能学到一点东西。

接手一个新项目,实现一个新功能,你是不是经常立马开干,建库、建表,撸代码呢?如果是,请停下来,慢慢看完这篇文章,如果不是,也请踩下,或许你也能学到一点东西。

(一) 了解业务


首先要了解业务,如果业务需求都不清楚,哪怎么开发,了解业务不仅仅是了解从产品经理、或者销售获取需求,也可以根据自己的经历经验,提出合适的建议。同时也要知道业务场景、及项目周边环境,比如需要的开发的项目有没有跟其它项目交互、其它项目是自家的项目,还是第三方开发的项目等等,总之,前期对业务的了解越清楚、越周全,后期开发落地就容易很多。

(二) 设计


了解了业务业务需求后,可以做设计,这里的设计不仅仅是我们平时见到
数据库设计,还应该包括需求设计、架构设计、技术方案设计、部署设计等等。
设计阶段也是对了解业务需求的查缺补漏阶段。同时也是承上启下的阶段,因为这是后续阶段的依据,所有,这个阶段一般有技术经理、架构师或者CTO直接参与进来,做整体设计。

(三) 实现方式

实现阶段主要是考虑实现业务逻辑采用何种技术、哪些方式来实现,比如消息,我们用kafka、rabbitMq、还是rocketMQ呢,我一般是在满足业务的前提下再看团队成员对每种消息队列的熟悉程度,尽量采用团队熟悉的中间件,尽可能不要在正式项目中实践新技术或者没有中间件,以免开发周期不好控制。
其次在实现阶段考虑的问题就是,主要功能、核心逻辑是不是需要慎重设计,比如,核心点有没有高性能突发性、需求的经常变动性、跟第三方对接是否考虑一致性等等,这些都是要认真对待的实际问题,撸代码之前规划好,会省很多事情,不然,二次返工或者重构会更痛苦。

(四) 交付


开发的功能经过测试及产品经理的确认,是不是可以直接上线了呢?实际经验告诉我,最好不要直接发到线上环境,加一个仿真环境非常的有必要,就算是不能按照生产环境还原,但建议是等比还原,再按照业务需求把功能在仿真环境测试通过后再交付,这个阶段也是开发最喜欢的阶段,养好精神,迎接下一个循环,吼吼。
撸代码之前,你是否考虑过这些,其实这也是一个软件开发的过程,看似过程很长,其实如果团队配合比较默契,是非常有效的,再加上已经成熟的DEVOPS,更是大大节省从开发到测试、交付的时间。
如果有什么问题,可以加我微信,多多交流,共同进步。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。