携程工作感言(7.31)
Posted 酷叮喵
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了携程工作感言(7.31)相关的知识,希望对你有一定的参考价值。
day7.18
1、
2、给boss看了一下设计的imageloader,给了几个改进建议:
删掉handler(防止外部的类可以对其进行操作);
使用单例模式去操作imageloader;
压缩图片(防止图片太大是,内存会io溢出),把decodeScrum换成decodeFile;
get、put bitmap时考虑空指针异常,所以要用if进行判断;
SDcard不需要缓存块(内存要,防止图片太大而崩溃才先申请缓存块的);
SaveFail()方法单独抽出来当一工具类(单一原则);
命名是,注意public,privatte,protected,friendly的区别和生命周期;
day7.19
今天接了一个spring3的小需求,完成酒店秀和民宿地图ab版本隐藏♪(^∇^*)
顺利完成了,就等联调了,开心
day7.20-7.21
1、学会了一个强大工具android Device Monitor的使用,当我想查相关模块时,启动这个工具,点击dump可得到位置图
根据id搜全局(shift+command+f)|搜哪里使用(option+f7)可以找到了相关代码,再看代码逻辑就好了
2、git还有个工具叫gitk:命令行 gitk & 可以看不同和分支树
day7.22
再一次感觉到了,编程中最有用的是算法和数据结构,最没用的是源代码。。(感觉被莴携前人写的代码坑了两次了,以后有啥功能自己查书查资料写,看别人写的简直要哭死)
——————————-我是郁闷的分割线~(>_<)~————————————–
1、要了解一下如何“正确”的读写sdcard(莴携未来要实现sdcard存储而准备)
2、git stash 是放弃当前更改
code review:
1、在git commit时要有严谨感,不要随便提交代码,有些没有服务器下发数据时自己写的测试,或者一些自己本地的更改后的废代码,不要push到主支上
2、参数强转的话,用单例模式去实现;(防止settag()时tag为空)
3、for循环时,不要在()里调用函数,提前弄出来,赋值给一个局部变量更加好
4、重复利用StringBuilder,可以节约内存
5、工具:Android Studio下面有个monitor 可以看到的曲线波动来判断应用发生gc没有
6、不要硬编码,会埋坑
day7.25-7.26
1、ios的code review,讲了一下几个模式:MVC,MVP(纯展示的),观察者模式,MVV(交互多时使用),VIPER(接下来使用这种方法)
ps:这东西,根据需求去找比较合适的模式匹配起来,可以规范一下代码写法,但是不能硬搬
2、(又被前人留下的坑给坑了,以后有些设计code的编码,自己想想方案再考虑要不要参考原有的code,不要死板硬套,容易挂掉的,请大胆自觉的趟过去)
3、前端一周例会:注意代码质量;做挑战的事情,越挑战就越让别人看到你的价值,别碌碌无为
4、今天有个地图不显示的bug测试报过了,本来有点方的,不过还是硬着头皮去定位,发现拿到的经纬度是0.0,就有点蒙了,让后学会了查报文的方式,去确认服务端有没有下发给我数据,然后看相应的model里面的数据。
(命令行:adb pull /mnt/sdcard/dataLogTrunk/log.txt
open log.txt
搜索请求的time操作/request名,把Json数据copy到在线校验的网站,查字段有没有数据就好了)
day7.28
1、git rm 文件名 删除这个文件
git checkout 文件名 放弃此文件的修改
2、 push后模块打包(MCD中)
3、sdcard造轮子,imageloader和一些sdcard操作在android的toolbox类里:
ImageLoader.java || ImageRequest.java
day7.29
1、static静态的,不可以再对其赋值(无论是否是构造函数、构造方法中)
2、final 除了构造函数外,其他地方不可以对其值更改
以上是关于携程工作感言(7.31)的主要内容,如果未能解决你的问题,请参考以下文章