这是我参与「第四届青训营 」笔记创作活动的第1天,重点学习了客户端开发分别面向用户、公司和个人的不同交付层级情况。
客户端开发面对的角色
作为一个客户端开发,面向的对象一般有三种情况:
- (对外)用户:满足用户需求
- (对内)公司:节约公司成本
- 自身:创造自身价值
针对这三种情况,交付的产品也有不同的层级。
(对外)用户
客户端开发针对用户的情况,一般是能够创造收益的,我的理解是,客户端开发的主要方向也是这个。它有3种不同层级的交付:
第一层交付:页面+逻辑+数据
第一层交付是最简单的交付,它能够满足用户对页面的基本需求。
要实现第一层交付,需要我们:
①熟悉Android基础和一些比较复杂的view接口实现页面功能;
②熟悉语言和代码结构,这是为了保障我们的设计效率和逻辑清晰,能在有一些改动时不至于牵一发而动全身;
③熟悉数据的存储和传递规则(也就是数据储存和网络通信),能保证我们设计的App能够正确存储数据和传递数据。
第二层交付:多样化需求
第二层交付是在第一层交付基础上,满足用户的诸如视频、图像、直播、AR和游戏等多样化需求,在页面的基础上,增添更多的功能。
要想实现第二层交付,就需要我们更深的了解视频、直播等的实现技术,比如怎么搭建、怎么存储数据、怎么实现等等。
第三层交付:体验+质量+安全+个性化
这一层交付,就不仅仅是实现功能上的扩展了,还对App的用户体验、质量、安全和个性化提出了新要求。
我的理解是:
1、体验,就是用户使用起来感觉完全符合自己的喜好。
像王者荣耀,经常听到有爱好游戏的人吐槽王者荣耀的匹配机制,玩的好的总是匹配到摆烂的队友,就总是掉分,这就是一种体验感不好的体现。当然,为什么他们一边吐槽王者荣耀却还是没有放弃王者荣耀选择要英雄联盟呢?我个人的话应该是英雄联盟的话操作有些难上手,不如王者荣耀简单易学,从这方面来说,用户体验感又稍微强些。
2、质量和安全,基本就是信息维护和产品运维这类问题了。
质量和安全,就是要避免服务端出现崩溃和错误的情况,保证用户隐私,防止用户信息泄露等。
一般要进行产品性能测试和安全验证等强化质量和安全的功能。
3、个性化其实才是最难的,要满足每个人不同的喜好,推送不同的内容。一般来说,通过大数据分析就可以实现,但是,如果一个人没有特定的需求,该怎么实现个性化?
用课上老师的例子来说:吃饭时你们最怕女朋友说什么?
我当时心理第一想到的就是:随便。我就是这样,我和朋友出去吃饭,每次都要纠结吃什么,她问我,我就会说:随便。然后她如果罗列了一些比如麻辣小龙虾、烧烤之类的我又会拒绝,然后她就会崩溃:你到底要吃什么?
其实我也不知道自己的需求是什么,自己都不明确需求,那么,设计时怎么实现个性化?拿抖音来举个例子,我最开始只是抱着随便看看的心态,刚注册这个时候,它怎么推送,推送什么内容给我?
我的理解是,最开始推送各类方向的优质视频(排名靠前),然后根据用户情况进行大数据分析推送。如果一段时间后用户的喜好改变了,又能重新分析数据进行推送。
(对内)公司
(对内)公司的意思是,一些企业开发过程中会出现一些管理或者其他复杂性工作,大大降低了开发效率,为了节约成本,针对公司内部需求而开发。
对于公司内部需求,开发的产品有2层交付:单人效能和团队效能。
我的理解是:
第一层交付能够满足单人提高效率,比如HR管理人事,如果没有一个特定的系统来管理,工作量会提升几倍,这种情况下就可以开发一个用户HR管理企业人员的App,为HR的工作提升效率,也便于公司的其他工作。
第二层交付是提升团队效能,比如某个公司每个部门负责的板块不同,但是同一个部门查看同一个东西需要拥有不同的权限,这时候就可以设计一款针对团队协作的App,给每个部门成员分配不同的权限。
自己
客户端开发的对象是自己,对这句话,我的理解有两方面:①根据自身需求来开发;②提升个人价值,创造个人技术。
对于前者,就是根据个人实际需求开发,开发的同时学习新东西;对于后者,就是通过客户端开发,提升个人技术水平和综合素质,形成自己的品牌,在互联网行业经久不衰。这里也有3层交付。
第一层交付:满足基本的交付需求
这层交付感觉和针对用户开发差不多,的确差不多,但本质上是站在不同角度思考的。这里是站在个人发展的角度思考的。
我的理解是:根据个人需求开发客户端,一方面能够满足个人需求,另一方面能加强个人对Android基础等的理解,从而提升业务能力。
第二层交付:打造自身技术高度
这一层相对第一层交付要求更高一些,要求我们了解更多底层原理,深入学习,从而打造个人技术品牌。
第三层交付:培养自身综合素养
通过客户端开发,提升个人的思维认知,学习的能力等等。
小结
以上就是我今天主要学习到的知识板块,其实还有一些诸如APK的构件、Git的使用等,这里没有描述,我想后续会整理笔记。今天从客户端开发对象入手,从3个角度描述了客户端开发的不同层级情况,大体了解了一个框架,虽然知识储备不够充沛,但我相信一切都能够通过一点点的沉淀改变现状!
今天的学习中,感觉有一些问题不太明白:页面+逻辑+数据的交互是怎么实现组合的?怎么实现个性化需求?怎么实现用户多样化需求诸如直播、短视频、美颜?对于客户端开发的对象是自己,也有一些不太明白,我想需要更多的时间来了解。