**很久不见!在七月底办理入职以后连着好几周的培训,这才开始步入正轨,打算以新的形式去记录工做生活的所学所想,暂且想到下面几个模块,接下来就是做为正式鹅的第一个月总结啦!前端
┄┅┄┅┄┅┄┅┄┅┄┄┅┄┅┄┅┄┅算法
👩🏻💼厘米姑娘 de 加油站:不断查缺补漏⛽️数据库
👩🏻💼厘米姑娘 de 读书角:继续读书之旅📖设计模式
👩🏻💼厘米姑娘 de 当心情:所见所闻所想❤️缓存
👩🏻💼厘米姑娘 de 照片册:定格美好时刻🎑安全
┄┅┄┅┄┅┄┅┄┅┄┅┄┅┄┄┅┄┅**网络
PART ONE——加油站
列一些知识点,主要仍是经过连接形式拓展和补充~架构
1.BUG汇总:app
2.Android应用的启动方式:框架
3.分享一些大佬在编写代码总结的注意事项,对于还没什么实战经验的小白颇有用~
-
UI:
- 先后台切换、横竖屏切换时的逻辑是否正常,尤为UI有轮询逻辑的
- 适配问题,好比刘海屏手机是否存在UI遮挡
- 切换中英文时注意外文是否能完整显示
- 切图资源的尺寸和大小问题
- .9图拉升效果是否正常,包括padding区域
- 对齐类UI建议优先使用约束性布局,而不是多套一层Layout
- 开启手机开发者权限,确认是否有过分绘制,是否有频繁掉帧
- SurfaceView和TextureView不能混用重叠,会致使黑屏
-
动画:
- 动画执行时长是不可靠的,不要特别依赖
- 核心逻辑不要依赖System.currentTimeMills作时间判断,是可能人为改变的
- 若是只是计算时间差值建议用SystemClock.elapsedRealtime()
- 复杂动画建议用属性动画,用AnimatorSet的话可能会出现卡顿现象
-
Intent:
- 启动第三方Activity,先判断该Intent可否被解析或者加上try,不然可能出现ActivityNotFoundException
- 四大组件设置exported属性为true时要考虑是否会引起安全性问题:被绕过验证页面?致使拒绝服务漏洞?
- Intent传递的数据过大会致使页面跳转过慢,建议用持久化形式
-
Looper:使用View.post()要注意View一旦没有attached任务可能永远不会执行
-
Debug:日志打印避免使用String.format(),建议直接使用+或append,性能有10倍的差别
-
线程:加锁避免范围过大、尤为注意临界区代码、复用线程池
-
进程:
- Application生命周期里的代码,要考虑子进程是否须要执行
- 用AIDL最好加上oneway标识,用callback方式回调,防止进程间阻塞
- 善用RemoteCallbackList,防止注册之后没法反注册问题
- 基于Service的跨进程服务首次调用一般会失败,能够考虑用任务缓存队列或ContentProvider代替
- 不建议使用广播作跨进程通讯,全量发现少许Crash
-
清理:
- 页面退出时:是否调用Handler.removeCallback来清空Handler里的消息?是否取消了尚未完成的请求?在页面里注册的监听是否反注册?使用RxJava是否解除订阅?
- 数据库的游标是否已经关闭
- 打开的文件流是否关闭
- WebView使用后是否destroy
-
内存:
- 保存在内存中的图片是否作过压缩处理
- 是否频繁的建立对象,必要时须要使用内存池作复用
- 内部类最好写成static,避免引用外部类
- 成员变量持有Activity或Context必要时使用弱引用包裹
- 传入Activity尽量getApplicationContext
-
性能:
- 频繁操做同一个文件或执行同一个数据库操做,能够考虑把读取结果缓存在内存中,以空间换时间
- 放在主页面的控件,能够考虑优先用延迟加载来优化启动速度
-
第三方:
- build.gradle远程依赖第三方包版本号建议写死,避免新版本不兼容或不稳定致使Crash
- 调用第三方包或JDK的方法时,要跳进看源码决定是否加try-catch,避免Crash
- 确认是否要加防混淆,不然Release会有问题
-
边界状况:
- 有切换线程的回调函数在修改UI前最好先判断Activity是否存活,若死亡要阻止UI修改并作必要的变量回收
- 使用Utils.equals()进行Float/Double等非精确值的对等判断
- 除2建议改成乘0.5,防止float精度丢失;除数非0判断
- 空指针问题
4.Android知识架构图(水印有出处)
PART TWO——读书角
即将开通...预告一下,接下来打算看的书是《Android源码设计模式解析与实战(第二版)》,以前一直想看开源框架源码想学其设计理念,但苦于没有很好切入点看起来有些费劲不了了之,正好有这样一本书从设计模式出发进行源码解析,但愿在真正的项目实战中能有所帮助~
PART THREE——当心情
过去的这一个月真的太丰富多彩了,从零零散散的前半段就能看出来重心还不在技术成长上,大部分时间是在培训和融入,感觉颇深真不知道从何提及,那就分红几个大块说说吧~
1.培训篇
鹅厂对于咱们毕业生真的很是重视了,先来感觉下入职后培训安排,真的是很是规范和完整了!
- 【公司级】长达8天的封闭培训像重回校园,以班级和小组形式上课、答辩、比赛、考试、团建、晚会...在了解公司的发展历程、行业知识、业务布局和相关制度规定的同时,还拓展视野和人际网络。
- 【BG级】经过线上线下的通识、专业课程和为期1个月的MINI项目实战,进一步了解PCG组织架构并熟悉产品研发流程。
- 【部门级】1周豪华技术课程(如后台/前端/算法/技术研究)和1个月的MINI项目,对腾讯视频前端、内容、视频技术、推荐、搜索、平台等方面有个系统的了解。
整套培训下来真是受益颇深,讲师还提供了精心准备的课件供课后学习,无处不体现鹅厂对毕业生细致入微的关怀,更好的帮助咱们从学生身份转变成职业人。
多说一句,原觉得很轻松的培训其实蛮辛苦的,记得封培的时候每天两点多才回寝,但天天真是超级开心活力无限,能与这么多优秀善良的朋友共事,是鹅厂带给个人第一份宝贵的财富!
2.工做篇
- 或许是实习过,再回来的时候感受未曾离开,虽然多了些新鲜的面孔,但融入到工做氛围中几乎没费什么劲,除了第一天就得知本身有需求了😭固然有了组里大佬的帮助,仍是挺顺利的~
- 项目迭代速度仍是很快的,除了要接收各类文档和学习新操做,还要有很多的输出,对于新鹅来讲都还不是很熟练,因此想办法作好总结整理。例如,按照类型和版本对各类文档和连接进行分类收藏,方便查阅和检索;天天都写日报清楚作了什么;对每一个需求都有个梳理,就我目前还不成熟的理解,差很少这样:
标题 |
内容 |
需求单 |
|
终端 |
1.逻辑梳理 2.初步方案 3.疑问 |
协议 |
|
数据上报 |
|
排期 |
1.任务拆分 2.重要时间节点(1)联调时间(2)提测时间 |
开发 |
1.涉及框架 2.新知识点 3.CR问题点 |
测试 |
1.测试用例 2.showcase 3.BUG解决 |
- 遇上一些流程规范化的行动, 小到需求单系统状态的扭转流程,大到开源协同的建设,想进阶成职业人还有不少要学~
3.生活篇
- 给本身定些小习惯但愿本身能一直坚持下去,至少目前还在坚持的,好比上班路上看技术文章、午睡前学英语、晚上运动拉抻一下。
- 周末尽可能不赖在家里睡大觉,要不来公司学习,要不和好朋友去嗨皮,最近几个周末的大头是MINI项目,体验一次终端转行前端的刺激。
- 公司的福利仍是一如既往的给力,在不久的未来我身边会占满各类鹅定制品了。
PART FOUR—— 照片册
首先,最想分享的是这篇记录八天封培的推送→→又见七三 // 大梅沙流水帐←←是我培训小组人美歌甜心善良的雨心的文章,还有超级多的照片哟,我不定时入镜哈哈~
团宠弟弟的做品,晚会主KV,也是三组每一个人的桌面壁纸哦~
接下来就是一些随手拍~一二楼展厅的其中一个做品(高级定制,整我的像的承重点只是脚尖哟~),整个展厅不要太炫,来滨海参观不能错过的地方!
终于知道“滨海大厦”中的海是哪了!
听说是封闭低温的滨海最温暖的地方,想象一下在36楼悬空层俯视天空的感受,不要太好!
中秋节礼盒,圆圆的表情太可爱了吧,口味和颜色搭配也很赞!
最后,不知道说啥了给你们劈个叉把!但愿你们都多多运动~~