软多信息技术-中国互联网软件开发商!

微信扫一扫
全国服务热线: 13673670267

输入手机号可快速获得 行业动态 ,只需一步即可让你抓住机会快人一步!

86+
首页 新闻中心 新闻详情

App开发,怎样又快又稳又清晰

发布时间:2019-02-14 11:22:36 浏览次数:2541

App开发怎样做到又快,又稳,又清晰呢?相信不单单是App开发人员想如此。每个开发需求这也想外包公司在做App时能够又快,又稳,这样能剩下很多精力和金钱···


开发快稳清

Android开发,能理清业务逻辑,不受外界干扰地投入开发,开发速度会很迅速,很快,普通规模的App,一到两周即可完成。

稳:Android常见问题有内存、异步、响应等,排除和解决很容易,难的是怎样确保不出现这些问题?可以简单地用时间量化评价,要等大量bug出现之后,才知道稳不稳,但一般工作中会有个弊端,为了赶工速度一快起来,就很容易出现大量bug。

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

当然,公司层面也应有清楚的定位,研发对设计的投入,必须是有限的指导性的,如果大量把研发投入到设计工作,就是另一种形式的浪费了。


异常处理

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

处理异常,软多信息有这么几条心得:

提前考虑异常处理,在写正常流程的业务代码之前,先考虑异常,“未虑胜,先虑败”,沿着业务流程分支,先把异常情况都处理掉,例如获取在线数据显示一个列表,先考虑网络异常、服务器报错、数据失败等异常情况,并依次给出相应提示,最后才处理数据正常的情况,你本来就要写正常业务代码和异常处理代码,你只需要调换一下工作的先后顺序,其实你投入的开发时间没有增加,但是你的效率却大大提升了,因为一旦出现异常,我们可以迅速判断异常原因,节省大量时间。

这样做还有一个好处,在你的思维陷入复杂的业务逻辑之前,先处理相对简单的异常分支,可以避免你被业务逻辑搞到大脑缺氧后,再回来处理异常分支时一时疏忽手滑,写错或者写漏异常处理。

隔离前后台对接的数据接口,最好不要直接使用后台提供的数据,中间加一层映射,一方面,如果后台数据出了问题(数据异常、变更字段等),你在映射数据时就能发现和定位问题;另一方面,也有利于你采用更适合App的数据形式进行数据持久化。

另外,建议做一个接口录入与检查工具,形式不论,但要能轻松地维护前后台接口,最好能自动检测接口反馈是否正常(服务器负载过大、字段变更、第三方服务过期等)。

异常信息的收集、汇总和数据持久化

如果出现异常,最重要的是采集到异常代码行(如MainActivity第61行)和异常原因(如空指针异常),并记录为本地文件以备上传和查看

其实java的异常处理的内容还有很多,感兴趣可以看一看我以前总结过的Java异常捕获的设计原则: 


不过度设计

敏捷开发里有一个实践原则,就是不要过度设计,开发的价值不在于写出漂亮的代码,在于实现产品并支撑其正常运转,在能实现产品功能的前提下,代码逻辑其实是越简单越好,简单往往就意味着高可靠性+低维护成本,如果将来需要扩展功能,可以通过修改和重构实现。
当然,简单并不意味着随意,要把事件做复杂很容易,要做简单却很难。能做到逻辑清晰、线程安全、内存安全,又容易修改和扩展的同时,还能保持代码简洁,其实反而更考验功力的。

其实不仅在开发新功能时要避免过度设计,在维护和扩展旧代码时,也要注意,能正常运行的代码,都是好代码,我觉得在维护旧代码时,其实也适用开放封闭原则,对不得不改,不改就崩的旧代码,是开放的,可以修改的;对能正常运行的代码,哪怕你觉得再难看再手痒,那也是封闭的,是不可以修改的。

回到那句话,开发的价值不在于写出漂亮的代码,在于实现产品并支撑其正常运转。


通用库的建立与维护

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

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

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

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

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

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

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

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

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


工具与模板等

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

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


代码注释

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

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

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

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

以上就是软多信息针对每一个软件开发项目时,总结下来的一些经验,由于篇幅问题有所删减,如有没有言说的地方,请谅解!


上一篇: 24小时自助共享茶室:低成本、高私密性,个人创业的最佳选择 下一篇: 如何找到适合企业管理的系统软件开发商?

相关案例

相关推荐

郑州市管城区紫荆山路
兴达国贸1001室

联系我们

赵经理:13673670267

胡经理: 18137129857

周一到周六 8:30 ~ 18:00

河南软多信息技术有限公司

为中小企业提供信息化、电商化、互联网化的整体解决
方案,真正做到让天下门店没有难做的营销!

  • 微信小程序

  • 微信公众号

  • 抖音账号

排队免单 门店管理系统 排队免单系统 圣保罗地板加盟 网站托管 社区团购系统 互联网产品加盟 新行业加盟 橡胶接头 会员短信平台 群发短信平台

Copyright © 2017 软多信息技术 All rights reserved. 增值电信业务经营许可证:豫B2-20200556 备案号:豫ICP备18038454号-4

展开>>