阶段总结:我开发Android时学会的那些事儿

引:

周末去电影院看了我等了小半年的<君の名は>,感触良多,总结来说有三点:

1、因为我本是新海诚的忠实粉丝。

2、公司是日企,公司不管是滚键盘的还是忽悠人的,都要会日语。

3、嘿嘿,内心蠢蠢欲动,年少轻狂的我难免喜欢这些文艺爱情片,嘿嘿。

以我对电影的评价,这部电影质量还是很不错的,不知道不考虑情怀问题,国产的什么时候能达到这水平。迷茫脸。

不多说,开始正文。

为什么总结?

不可否认的是,日本人的行事风格是极其死板的,至少日本那边来的同事都是这样。总结来说,无论什么情况,都按规定来,这和我们大部分国人的“随遇而安”的风格格格不入。但正是这种死板,使得一切都变的井然有序,所以我开始渐渐的接受了这些死板的文化,甚至爱上了这种死板。其中,“总结”,就是死板中的一条。公司每天早上上班都有小组会议,总结昨天的情况和今天的安排;项目开始准备阶段,需要总结项目的工数、人员、开发文档;项目结束,无论是开发完成还是客观原因终止开发,都必须总结出对应文档,详细到每一个class中方法的作用。作为后续进来的维护人员,都是一件多幸福的事情,但对我这种作文档,分分钟有点想跳槽走人的冲动。当然,其实还有非常多的总结,我就不一一列举了。总结来说,因为重要,所以总结,因为总结,所以一切都变的井然有序。

总结哪些?

主要是在开发Android 时,一些小经验而已。其实没什么的,哈哈哈哈哈哈。

总结开始咯?

嗯!


一、抽基类

特别是Activity及Fragment等,一定要在项目初期创建类似"BaseActivity.class"的基类。这是为何呢?这还要从我进公司接触的第一个项目说起。当时那个项目需求时,在App退出到后台或者锁屏,再回到App时要到解锁页面,验证通过后才可以使用App,同时,在网络请求时,还需要验证登陆Token失效问题,如果失效,要删除登陆信息,自动跳转到登陆Activity。当时项目分工已经明确,各自负责各自的Activity等,等需要解决这需求的时候,很自然的想到解决方法,通过将Activity的引用放到放到Application中,通过这个引用来跳转Activity(还有另外就是Application中另开一个Activity的栈,但后来总是会出莫名其妙的问题,就放弃了)。恩,没毛病。但真的要做的时候,发现了,十几二十个Activity需要修改(在onResume()把引用设置到Application中,在onStop()中取消引用),这一点都不符合我们码农的风格,效率太低!我们一群小年轻没人愿意干这中无聊的Ctrl+C&&Ctrl+V,所以当时就悔啊,为什么当初没有抽个Activity的基类,在基类中实现这方法,我只要继承它,就什么都不管不问了。可能这一点你还觉得没什么,但我想说,凡事看远点。

二、谨慎选择开源的库

我接手项目的时候,项目已经开发了大概,已经上线给客户使用了。当时用“Afinal”解决网络请求、数据库操作等功能。这个库不可谓不强大,集成了很多,很全面,但是已经至少2年没有更新维护了,效率和其它新的库的相比,从测试数据上对比,差距还是挺远的了。另外,我想换okHttp作为请求的底层,这和“Afinal”的网络请求模块又重复了,我……所以总结来说,对开源库的选择,注意这几点:

1、选择开源库时,要选择会持续维护。因为库的问题导致App突然在某天无法正常运行,难道你打算自己哭着看源码,自己解决?

2、选择集成功能单一的。我还是比较提倡一个库解决一个需求的,如果像“Afinal“一般,我想换个网络请求同时不想提升耦合度,那工作量有点大。

3、注意库的更新日志。很多人都和我一样是版本帝,有更新就更,没有原因,就是想更,不管是修复Bug还是删除方法。删除方法什么都倒是还好,编译时会报错提示。但是方法逻辑变了,那就不好玩了,你懂的。

4、注意库的体积。在图片加载的库中,有Glide,Picasso,Fresco三个选项。Google自己推荐Glide,但Glide的方法数实在的有那么一点点的偏多,同时,Picasso完全可以完美支撑我们的项目,毫无疑问,选择Picasso!就算我是Google脑残粉,但是!在理性面前,还是要学会低头的。

三、多动笔

我讲真,不要太自我崇拜,自己就是一个敲键盘的而已。公司主要是Web端,今年才新成立移动开发部门所以测试时的一些case,基本和Web端一样,只有业务逻辑测试。但Android端不同,一个App的运行,除了业务逻辑问题,还有非常多意想不到的异常情况,什么锁屏、退后台、崩溃等等一系列的case都需要考虑。如果这些case你一人通过脑补就能想到正确的逻辑及解决方法,那我服。但是不能,那还是乖乖的拿出纸笔,用流程图什么的,画画吧。这带来的另一个好处就是,在出现异常case的时候,你看你当时画的流程图,能更快的想起当时的解决思路,更快的定位到问题代码块,这比注释效率更高。

四、规范命名

我们都知道注释的重要性,但光有注释是远远不够的。我认为变量的命名更加重要,一个正确规范的命名,能使阅读代码的效率以几何倍数增长。又说回接手的那个项目。之前是一个新手负责的,所以命名简直是不可描述,’mList,view,textview……"这些变量名就问你怕不怕,这还不关键,关键是,名字叫“mList”,再看对象,居然特么的是一个Json的解析实体,当时的我整个人都斯巴达了。如果换成"mTaskList,mListView,mLoginTV",有点经验的人都知道表示什么了。除了这个命名,还有常量。将业务中的一些标识等,定义为常量,更直观,更高效(为何高效,这就是基础问题了,这里不说)。举个例子吧,我们规定,字段'type'的值,用'0'代表苹果,'1'代表梨。如果你了解这业务,你当然能明白'0'代表什么,但是,如果你不懂业务,你看到这代码,你能看懂?所以我们定义为常量'public static final int TYPE_APPLE = 0;',你如果还不懂,那就是你的问题了,嗨!!!

五、多总结

为什么呢?从头看本文章吧。


总结:

扯了这么多有的没得,总结来说就是,要学会死板点,但不能真的死。公司的死板我都不想再吐槽了,码代码时,注释的格式,代码缩进,空格数量,都有明文规定,不合规定,算是Bug,记到你的头上,开会集体批斗。这样带来的好处就是,看代码时,好像就是自己写的一样,坏处就是,写个代码,感觉比写《三体》都难。所以,死板要学,但不能真的这么死,要灵活。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,657评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,662评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,143评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,732评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,837评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,036评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,126评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,868评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,315评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,641评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,773评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,470评论 4 333
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,126评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,859评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,095评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,584评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,676评论 2 351

推荐阅读更多精彩内容