像开发手机APP一样开发客户端

手机APP通常有日活的概念,也有热修复的概念,前者用于了解APP的使用情况,后者用于及时修复BUG。但是手机上的记事本APP,如果定位成纯工具,则可能没有这两个功能。如果记事本APP是收费的,或者支持把文章同步到云端,则这两个功能就必不可少了,因为这两个功能有助于改善客户体验。手机APP当然还有其它埋点,用于完善产品,改进客户体验。

这里,产品体验作为产品功能的重要组成部分,为了改进体验,很多用户没有直接感受的功能被添加进来。记事本的功能不是记事,而是用户可以很愉快的记事。

假设我们要开发一个客户端叫做log2kafka,用于上传日志到kafka(一个消息队列服务)。这里没有产品经理,没有产品运营,只有一个开发。开发快速完成了功能,客户顺利部署,并把日志同步到了kafka。那么问题来了,一共有多少机器部署了log2kafka?每台机器每天大概要上传的日志量是多少?

这些和log2kafka的功能无关呀!当然无关,但是和体验有关,了解log2kafka的部署情况,有利于改进log2kafka,以及kafka的服务质量。为此要像手机APP那样,埋点,发送统计数据,收集崩溃信息,支持热更新。

如非特殊,开发客户端都应该像手机APP学习,把体验作为功能的一部分,这是开发需要多思考的。

Author: zhengzhiyong

Created: 2018-03-04 日 16:10

Emacs 24.5.1 (Org mode 8.2.10)

Validate