动手开发前是否可以停两天?

Posted mrzhu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了动手开发前是否可以停两天?相关的知识,希望对你有一定的参考价值。

我在之前的开发中,总是认为开发就是全部,而忽视测试,需求理解和系统设计,因为我认为测试属于测试人员的事情,而且开发周期本来就很紧,无法有时间来规划测试的事情,而需求理解也没有很重视,只是大概的知道了整体需求,然后在开发过程中 在不断的理解需求,因为我的理解是,我们不可能一开始就确定我们做什么,很多时候,之前理解好的需求 会因为开发过程中不断的意外事件而改变,如果真的在开发前把所有的需求细节想清楚,其实在开发过程中还是会遇到问题,而且 我们很难在没有开始开发前就可以把所有的细节考虑清楚,除非我在脑袋里模拟开发一遍,而系统设计之前一直没有重视。

 

  而现在我对于开发流程有了新的理解:编写代码只是开发工作中极小的一部分,开发包括:需求理解,系统设计,代码规约,单元测试

    1:一定要在开发前仔细理解需求,将所有可以考虑到的细节全部考虑到

    2:正是因为前面把需求理顺了,想清楚了,才可以开始整体的设计系统,我们把系统的设计颗粒度尽量想到最细致的程度,这样后面的编写代码 其实仅仅是把我们的设计给实现而已,同样 如果我们在设计阶段可以构思的非常细致,也有助于加深理解需求

    3:规约,我们会遇到命名问题,尤其是大型系统,在面对不同的应用场景的时候,如果在开发过程中去构思命名 可能只是随手一想,但是命名是别人理解你的代码非常重要的一个地方

    4:单元测试,在系统逐渐变大之后,一个细小的改动可能就会影响到全局,这个时候,如果有一个单元测试 把整体系统测试一遍,将极大地提高代码质量

 

单人开发流程:

  1:与产品人员讨论业务细节,从整体到局部全部理解清楚

  2:与服务器端商讨接口设计(因为接口的数据结构 直接影响到你的系统设计)

  3:系统设计之抽离视图层与数据层

  4:视图层中组件设计

  5:将api数据结构转换为组件所需要数据结构,这个过程需要一个清晰的数据流设计

 

多人开发流程:

  1:确定负责人

  2:负责人将项目抽离成业务部分和通用部分(通用部分即组件,可以实现复用,业务部分即数据处理)

  3:负责人指定业务部分开发人员,负责人指定通用部分开发人员

  4:业务部分开发人员 与产品经理 服务器端沟通具体业务实现,

  5:通用部分开发人员则开始构思 开发通用部分

  6:最终通用部分开发人员将组件给到业务部分开发人员

  7:业务部分开发人员将服务器端接口数据 组件按照理解的业务进行组装,最终成为一个完整项目

 

  这样做的好处是,通过将业务部分与通用部分抽离 从而实现了分工,使得两个人可以并行开发,最终将使得项目开发时间大大缩短。

以上是关于动手开发前是否可以停两天?的主要内容,如果未能解决你的问题,请参考以下文章

动手开发一个名为“微天气”的微信小程序(上)

实用 | 如何远程登录开发板?

高级前端进阶,用gulp提升你的开发效率

阿里云云计算助理工程师认证(ACA)

两天撸一个天气应用微信小程序

白话开发——自己动手编译Android源码