服务热线:18137863186

App开发,怎样能够快速的开发出满意的APP

分类:常见问题
浏览次数:431发表日期:2018-09-20

开发者的价值,是通过技术和产品体现的,对于App开发来说,除了实现业务之外,最重要的莫过于开发的速度、质量和可维护性,速度决定你能否支撑公司抢占市场,质量决定你们能不能站稳位置不被迅速踢走,可维护性决定你们继续前行时能否保持轻快的步伐。

速度、质量和可维护性

对速度、质量和可维护性的要求,其实就是又快,又稳,又清晰的要求。

App开发,怎样能够快速的开发出满意的APP

快:快其实是最容易做到,或者说最容易知道能不能做到的事情,熟悉的Android开发的朋友都知道,如果能理清业务逻辑,不受干扰地投入开发,开发速度可以很快,一般普通规模的App,一到两周就能完成。

稳:稳不像快,可以简单地用时间进行即时的量化评价,我们要等大量bug出现之后,才知道稳不稳,可是一般赶工速度一快起来,就很容易出现大量bug。其实Android常见问题无非是内存、异步、响应等,要排除和解决这些问题很容易,难的是怎样确保不出现这些问题。

清晰:清晰是最难做到的,快可以通过时间量化,稳可以通过bug统计量化,但是清晰是很难量化的,代码审查和可扩展性都是主观评价,而且相当滞后,很多情况下,往往要等到需要实现扩展,甚至换人接手代码时,才知道代码不清晰。

对于开发者来说,怎样才能又快又稳又清晰地开发App,这里梳理了我的几点心得。

有限参与业务设计

从职责分工上,业务设计是运营部门和产品经理的工作,确实不应由研发负责,但我说的是参与,研发(包括测试)应当尽早参与业务设计,一方面提前发现问题,另一方面可以引导和建议技术路线。

研发参与设计,可以规避很多问题,例如通信压力、加载速度、延迟时间、硬件负载等移动开发特有问题,不能指望运营和产品能像专业的研发一样面面俱到,考虑周翔。

另一方面,研发参与设计还可以引导技术路线,例如采用原生App、混合App还是ReactNative形式,采用单用户体系还是多用户体系,采用什么收费形式等。

异常处理

在实际开发过程中,除bug其实占了相当一部分工作量,有时候好好的开发计划,因为几个诡异的bug就得耽误半天,所谓“码字5分钟,排错两小时”是也。所以,能否尽早尽快处理异常,是非常影响开发效率的。

通用库的建立与维护

App开发,怎样能够快速的开发出满意的APP

我们知道,项目管理有四个要素,时间、成本、范围、质量,这四个要素一般是不能兼得的,要时间,就得砍一些范围的项目目标,降成本,就容易牺牲质量,等等,不过,建立和维护通用库,却能同时对四个要素都有好处。

加快开发速度,专注于具体业务(时间)

降低团队成员熟悉项目的成本,为新业务开发提供基础,加快开发迭代速度,利于更快地发布版本

提高代码复用率,降低开发投入(成本)

稳定的公共模块采用依赖组件库方式,提供给各个业务线协作使用,减少重复开发和升级维护工作量

提升开发效率,更容易实现项目目标(范围)

对已实现过的功能/业务,抽象出通用模块,再有类似的需求,能够迅速实现,更容易实现项目的业务需求

提升产品质量,持续改进通用功能(质量)

频繁使用的功能/业务模块采用组件复用方式,更有利于暴露缺陷,一处修改,多处受益,提高产品质量

工具与模板等

其实说起提高效率,前面的很多经验因为需要在实际开发中慢慢体会,难以迅速上手,反而是工具模板,真正见效快,一次安装,终生受益 :)

就我的经验而言,对我开发效率帮助最大的,包括代码模板、常用配置和开发插件,以及著名的程序员在线交友网站Github。

代码注释

一般来说,程序员看自己一个月前写的代码,是完全陌生的,我也一样,基本上过一个月就没印象了,但是如果要修改/扩展怎么办,这时候,就得看代码注释了。

就个人经验而言,有这么几个地方,一定要写注释:

App开发,怎样能够快速的开发出满意的APP

接口,特别是MVP的Contract接口,这里面基本定义了你的主要业务行为,谁来加载数据,谁来显示数据,谁触发的下一步操作,这些内容写明白了,以后读代码,只要看接口就知道主要业务是怎么回事儿了。

服务、广播等,服务和广播因为没有界面,容易游离在业务逻辑链条之外,在业务逻辑上缺少上下文,就必须有详尽的注释,说明其业务场景。

初始化、注入等,如果自定义了一些扩展的功能或控件,要求执行某些初始化函数,或者要注入特定功能的,就必须写好注释,提示调用者进行必要的操作。

TODO,工作总要排优先级的,有些工作暂时延后,自己记录是没用的,团队开发最终用的还是代码,所以一定要写TODO,提示开发者,这里是未完成的状态,避免不必要的误会和延误。

郑州app开发公司【立信科技】-专业为企业提供一站式手机app软件开发、app软件定制开发、网上商城、微信小程序等系统开发的软件开发公司!具备完善的产品开发流程,从立项到上线,保障每一个项目能够流畅进行。为客户提供全面的产品维护,制定全套维护流程,快速反应,保障客户产品运行安全。



  • 波浪
  • 波浪