1. 聚能聊>
  2. 话题详情

如果参与编写《阿里巴巴Android开发手册》,你会写什么?

年关刚过,阿里巴巴对外公布了《阿里巴巴Android开发手册》(下载地址),主要涉及Android资源文件命名与使用、Android基本组件、UI与布局、进程/线程与消息通信、文件与数据库、Bitmap/Drawable与动画、安全几大块,很多是集团移动端开发同学们在日常工作中经常会遇到的问题,大家利用业余时间把经验沉淀下来写成集团Android规约,目的是避免后人踩坑。同时把这些规约定制成自动检测工具和CI/CD的流程一起结合起来,保证线上的稳定性。

那么问题来了:
1、小团队内部或者公司内部,你们会遵循统一的开发规范么?
2、你们是如何保证一致的编码习惯的?
3、你们是如何将前人经验沉淀下来的?
4、有哪些Android开发中,你觉得很值得跟大家分享的经验教训?

参与话题

奖品区域 活动规则 已 结束

25个回答

1

试试看看 复制链接去分享

Hello world

1

zhizhengyan 复制链接去分享

首先感谢楼主提出来的问题,这给了我们一个机会让大家真正有机会去思考:如果自己能够参与阿里的《android开发手册》的编写,自己能够为这个手册的编写一点什么,换句话说就是能够为这个行业留下点什么吧!
其次呢,作为学生的我,也可以同样借楼主之法,预想一下将来入职公司的情景以及结合现在自己的身份来回答楼主提问😊:
1.现在在大学,我们团队和老师一起做项目,也就三、四个人。我们首先都会看看前期阿里发布的编程规范(诸如变量的定义,函数驼峰式命名等等)我想按照一个规范来大家都很方便,这也是我们从软件工程出发做事吧!
2.对于如何保持一致编码习惯,这个只能说每个人的习惯都不一样,我们前期会一起商量那些需要注意的地方(诸如在一些复杂的逻辑上接上注释)
3.古人讲人生三不朽:立德、立功、立言。我们会和之前的学长一起交流,然后整理他们开发过程走了那些坑,然后我们自己也会结合每天遇到的问题做个总结继而分享给大家的
4.很抱歉!由于这一点需要很强的安卓开发功底才合适和大家谈“经验教训”,可是学生不才,真的不敢随便谈谈经验教训。还请见谅

1

夏之冰雪 复制链接去分享

1、小团队内部或者公司内部,你们会遵循统一的开发规范么?
我们是明确要统一开发规范的,对于任何一个新人加入公司,都会在初期的培训期间,让他去看公司代码规范指南。

2、你们是如何保证一致的编码习惯的?
不能一味地强制别人代码规范,要让大家知道代码规范的好处,和自己部门的同事,不断地强调让整个项目代码风格保持一致,代码具有整体感、不杂乱。在处理一些特定代码调整、代码清理等情况下,需要搜索代码。统一代码风格,可以更容易编写正则进行搜索。
代码规范不仅仅规范了缩进、单双引号、是否驼峰、等等。还会规范一些编码习惯,从根本上杜绝一些bug、漏洞,比如对于弱语言,统一采用===进行强等判断,禁止使用弱等判断。对于新人而言,特别是实习生和即将毕业的学生。一家公司如果有好的代码规范,也可以有助于提升新人的编程素养。

还有,一定要编写一套具有说服力的代码规范手册,或者指南,确保覆盖面广、确保不要有冲突。之前,存在代码规范前后矛盾,导致新人觉得代码规范不好用,也就执行力减弱了。

工具方面,我们有在IDE集成代码规范插件,送测的时候比如JS会执行JSLINT确保一致性,以及整个部门部署了代码质量管理平台SonarQube来可持续的维护代码统一和规范。

3、你们是如何将前人经验沉淀下来的?
每半年,都要有同事举行一次技术分享——《重构改善既有代码设计》。

4、有哪些Android开发中,你觉得很值得跟大家分享的经验教训?
超过半年的功能的代码,没有注释,人也不在了。本来预计10人天工作,最后,额外花了2天熟悉代码流程,一行一行看,然后一边理解加注释,不是一般的坑。。。
所以,员工在项目交接时,不仅要有文档,最好找个检测工具,看看他负责的代码,是否存在大段大段代码没有注释,如果有,就让其编写代码说明和注释。

1

微wx笑 复制链接去分享

1、小团队内部或者公司内部,你们会遵循统一的开发规范么?
开始都会制定规范,但执行方面还很不到位。

2、你们是如何保证一致的编码习惯的?
每个人的经历不同,如果不是有特别严格规范制度的话,
是没办法保证一致的编码习惯的。

3、你们是如何将前人经验沉淀下来的?
学习的过程就是在前人的基础上模仿,模仿的过程加点自己的料嘛;
编程基本上都是在模仿别人写过的代码,只不过换个变量名称,换个语句堆叠方式顺序罢了。
有多少是自己原创吗?太少。

4、有哪些Android开发中,你觉得很值得跟大家分享的经验教训?
Android开发我是小小白。还要向大佬们多学习。

微wx笑 回复

哇,全是实物奖品。

评论
0

浮生递归 复制链接去分享

1、小团队内部或者公司内部,你们会遵循统一的开发规范么?
有想过,但是只是想想而已。因为人数少,每个人自觉性要求更高。然而现实是,大家都喜欢能偷懒就偷懒,还提什么规范?最好活都别干,光拿工资。人越多,规范越容易推行吧。

2、你们是如何保证一致的编码习惯的?
每个人的习惯都是千奇百怪,什么鬼都有。所以很庆幸基本不会发生协同开发和项目移交之类的事情,一个项目就是一个人终身负责到底。上次有个同事离职,移交项目,然后就是一堆的BUG。各种设置的东西都是靠平时手工操作。功能?没有的。

3、你们是如何将前人经验沉淀下来的?
主要靠自己领悟。单位没什么大神,也就没什么经验好沉淀,还不如自己上网百度来的直接。一般有人离职,也就顺便把经验一起带走了,呵呵。

4、有哪些Android开发中,你觉得很值得跟大家分享的经验教训?
测试的时候,本地真机测试真心测不完。机型这么多,靠自己真机就是把质量交给运气,只有上云端,用第三方的批量真机测试才能真正得出各机型下的实际效果。我单位就是找几个人不同的手机现场测下就完了,哈哈。然后客户那边会各种坑。

微wx笑 回复

小公司都是员工自己的手机当测试机。

评论
1

北方的郎 复制链接去分享

1、小团队内部或者公司内部,你们会遵循统一的开发规范么?
这是必须的啊。我觉得只要是一个人以上进行开发就要有一个统一的开发规范。如果人特别少,或者特别熟至少也要一个写在白板上的简单约定。

2、你们是如何保证一致的编码习惯的?
基本上是靠规范、插件和以老员工带吧。

3、你们是如何将前人经验沉淀下来的?
规范,文档,插件,Code Review等。

4、有哪些Android开发中,你觉得很值得跟大家分享的经验教训?
这个其实不少,简单列几个吧:
数据库表段字段常量和SQL逻辑分离,更清晰
全部Activity可继承自BaseActivity,便于统一风格与处理公共事件,构建对话框统一构建器的建立,万一需要整体变动,一处修改到处有效。
全局变量放全局类中,模块私有放自己的管理类中,让常量清晰且集中.
注意单一职责原则,一个类专心做好一件事情更为清晰。
如果数据没有必要加载,数据最好延迟初始化。
异常抛出,在合适的位置处理或者集中处理,不要搞的到处是catch。
........

1

1013605606444584 复制链接去分享

我只想让更多的人知道什么是安卓!!!手机拿着的安卓手机是什么意思!!!

0

cjsoldier 复制链接去分享

1、小团队内部或者公司内部,你们会遵循统一的开发规范么?
小团队有,我们商量好之后就一起遵守。但凡有一点追求的人都会遵守的。

2、你们是如何保证一致的编码习惯的?
以前用过checkstyle这个插件。后来嫌麻烦,全靠自觉。
我喜欢看别人的代码,如果有人不遵守我会友情提示一下。

3、你们是如何将前人经验沉淀下来的?
前任一般都会留下一些文档。很多时候文档写的很糟糕。
我会根据他的文档+官网文档+网上博客自己重新写一份文档。
这不是说前任的文档没有价值,前任最大的价值就是很多坑他们已经帮我们踩过了。

4、有哪些Android开发中,你觉得很值得跟大家分享的经验教训?
下载模拟器,直接下载太慢,几天几夜都下不完。后来在segment fault上看到有镜像网站。
天朝的网络环境在这儿,任何时候镜像网站应该是首选,其次才应该考虑vps。虽然这不值得一提,
但对于我来说这是多么痛的领悟。

微wx笑 回复

天天模拟器如何,有朋友推荐用这个

cjsoldier 回复
回复@微wx笑:

谢谢,我试试。我是业余的。

评论
0

我爱罗law 复制链接去分享

必须遵照统一规范

0

1470023059846693 复制链接去分享

阔怕

0

南工冷 复制链接去分享

1、小团队内部或者公司内部,你们会遵循统一的开发规范么?
不会

0

1305917890794742 复制链接去分享

1.会
2.多交流,多沟通
3.记公司的小黑板上
4.合作创新最重要

0

1191497805473032 复制链接去分享

小团队很难做到这点,基本是不做的。
这就是为什么PHP会在鄙视链垫底,因为PHP大多数都是小(微)团队。团队里还各自为战,主管也不会去理会规范什么的。
造成这种事情的原因就在于小团队的重心在业务。不是说大团队不重视业务,而是大团队有专人应对业务这块,而小团队基本就是代码跟着业务跑,设计和规范还没出来就开工,设计基本靠个人,能确认的只有接的活能不能做而已。

0

a子华 复制链接去分享

这个是好东西,正在学习android呢

0

1640816701688573 复制链接去分享

网站现在可以做吗我希望马云给我个意义

0

1569221173351212 复制链接去分享

谢谢大家的留言。

0

1957718538799097 复制链接去分享

手机版阿里云的阿里云云大使的入口在哪里

0

诺禾 复制链接去分享

1、小团队内部或者公司内部,你们会遵循统一的开发规范么?
我们是明确要统一开发规范的,对于任何一个新人加入公司,都会在初期的培训期间,让他去看公司代码规范指南。

2、你们是如何保证一致的编码习惯的?
不能一味地强制别人代码规范,要让大家知道代码规范的好处,和自己部门的同事,不断地强调让整个项目代码风格保持一致,代码具有整体感、不杂乱。在处理一些特定代码调整、代码清理等情况下,需要搜索代码。统一代码风格,可以更容易编写正则进行搜索。
代码规范不仅仅规范了缩进、单双引号、是否驼峰、等等。还会规范一些编码习惯,从根本上杜绝一些bug、漏洞,比如对于弱语言,统一采用===进行强等判断,禁止使用弱等判断。对于新人而言,特别是实习生和即将毕业的学生。一家公司如果有好的代码规范,也可以有助于提升新人的编程素养。

还有,一定要编写一套具有说服力的代码规范手册,或者指南,确保覆盖面广、确保不要有冲突。之前,存在代码规范前后矛盾,导致新人觉得代码规范不好用,也就执行力减弱了。

工具方面,我们有在IDE集成代码规范插件,送测的时候比如JS会执行JSLINT确保一致性,以及整个部门部署了代码质量管理平台SonarQube来可持续的维护代码统一和规范。

3、你们是如何将前人经验沉淀下来的?
每半年,都要有同事举行一次技术分享——《重构改善既有代码设计》。

4、有哪些Android开发中,你觉得很值得跟大家分享的经验教训?
超过半年的功能的代码,没有注释,人也不在了。本来预计10人天工作,最后,额外花了2天熟悉代码流程,一行一行看,然后一边理解加注释,不是一般的坑。。。
所以,员工在项目交接时,不仅要有文档,最好找个检测工具,看看他负责的代码,是否存在大段大段代码没有注释,如果有,就让其编写代码说明和注释。

0

豫川 复制链接去分享

最关键的是如何针对开发进行有效的分层测试,保证质量和效率,并且能够通过自动化用例的方式来进行回归

0

古散 复制链接去分享

1、小团队内部或者公司内部,你们会遵循统一的开发规范么?

口头上的规范,还有大家遵守的一些潜规则
2、你们是如何保证一致的编码习惯的?

保证不了,最后有一个程序叫做重构
3、你们是如何将前人经验沉淀下来的?

每周有分享会互相学习
4、有哪些Android开发中,你觉得很值得跟大家分享的经验教训?

约定大于配置,目前团队在学习的思想

2
5129
浏览
0
收藏
邀请他人互动
关注
0
粉丝
1
话题
1

简介:

大数据开发套件(Data IDE),提供可视化开发界面、离线任务调度运维、快速数据集成、多人协同工作等功能,为您...

超过10,000,000域名在这里注册

一站式提供企业即时通讯、销售管理、协同办公。

为您提供简单高效、处理能力可弹性伸缩的计算服务,帮助您快速构建更稳定、安全的应用,提升运维效率,降低 IT 成本...