工作第十六七周:生活这么繁琐,我们还要努力爱她
一眨眼又是两周,上周周末有些事,耽搁了总结,只好拖到这周一起了。
这两周生活、工作
1.订婚大事
我跟肉肉在一起也有 5 年 4 个多月了,没毕业前双方家里睁一只眼闭一只眼,过得倒也开心、自在。毕业工作后,不能算早恋了,两个人关系也要拿上台面谈谈。
肉肉从小娇生惯养,掌上明珠,见识比我多,脾气也不小,但对我很好,家里一顿饭没做过,跟我在一起后也开始做饭。对我爸爸妈妈也比较热情,挺受喜欢的。
我虽然家境一般,长的一般,工作一般,但好在诚实可靠,有点上进心,脸皮厚不怕肉肉欺负。所以叔叔阿姨不讨厌我,对我俩的关系也没什么意见。
关系确定了接下来就要商量订婚、结婚大事了,结果双方父母都没什么经验,突然要商量这个,七大姑八大姨的咨询,这下子,我的电话一个接一个,这个说东那个说西,整的我心力憔悴。
本来觉得订婚是很简单的一件事,现在看来我还是 too naive。
双方家长考虑问题角度不同导致侧重点不同,我和肉肉在中间周转、传话,就像风箱里的耗子。折腾了好一阵子,才先大概确定下来。
My god, 真累。
2.可耻地直接搬了别人的代码
上周业务上有个需求,需要自定义一个组件,本来一开始打算自己写,结果由于我之前开始的 Java 集合框架源码分析系列 拓展内容太多,进度比计划慢了许多,从而导致没有时间自己写。
然后我就从 GitHub 上找了一个现成的,大概了解后就直接拿来用了。
现在想想心里还是有些鄙视自己的,没有自己写就算了,不好好看清楚源码确定没问题就直接用人家的,这不是我想要的结果。
希望下周加速度搞完需求,仔仔细细地把这个组件代码看看,了解清楚吧。
3.双十一买了 Mac
哈哈,本来双十一没打算买什么,陪肉肉逛逛就睡了。结果 JD Mac 搞活动,肉肉看我那么想要,居然同意了!
作为一名小屌丝,能有一本 Mac 是我梦想了许久的事情。
虽然是分期,拿我每个月零用钱的一部分还,但我当时脑子里只有 Mac,管不了那么多了哈哈。
Mac 除了装逼好,用斌哥的话说,还更“专业”。
Windows 第一用户是办公用户和家庭用户,界面化操作封装了太多东西。
Linux 又太“专业”,底层暴露太多,缺少优秀的 UI 界面软件。
而 Mac 则兼具两者优点。
斌哥的话,听着好像很有道理的样子哈哈。
4.Done is better than perfect
在 Facebook 上市当天,创始人扎克伯格的公开信中有这么一段关于 黑客文化 的话:
黑客文化是一种持续改进和衍变创新的做事方法。黑客们认为,优化无止境,产品无完美。当有人说无法再改动一丝一毫,或是满足于现状时,黑客们却当着别人的面,情不自禁地动手修改。
黑客们迅速发布小规模更新,并从中汲取经验教训,而不是试图一蹴而就,一劳永逸,他们希望通过长久努力打造出最佳服务。为此,我们建立了一个测试框架,无论何时均可测试数千个版本的 Facebook。我们的办公室墙上写着“完成胜于完美”(Done is better than perfect),以提醒大家按时“交付产品”。
“黑客”也意味着一种亲身实践、积极进取的天然纪律。黑客们不会召开长达数天的马拉松会议,以讨论某个创意是否可行,或是试图寻找最佳方法。他们会制作原型产品,看看是否行得通。在 Facebook的办公室里,黑客们的口头禅是:“代码胜于雄辩”(Code Wins Arguments)。
“黑客”还意味着极度开放和精英为王。黑客们认为,最优秀的创意及其实现始终掌控一切——而不是由最善于鼓吹创意或是权力最大的人掌控一切。
你不需要等到够优秀才开始,你应该立即开始去变得优秀。
技术上的收获
1.为什么 ART 中不需要分包 multidex?
要理解这个只需搞清楚,为什么有最大方法限制呢?
5.0 以前的 dalvik 虚拟机用一个链表保存 每个类的 id,而这个链表的长度是 short 类型,由于 short 占两个字节,数据范围为 -2^15 到 2^15(-32768~32767),也就是总共 65536 个数。
新版本的 Android 系统中修复了这个问题, 但是我们仍然需要对低版本的 Android 系统做兼容.
解决方法有如下几个:
- 精简方法数量,删除没用到的类、方法、第三方库。
- 使用 ProGuard 去掉一些未使用的代码
- 复杂模块采用 JNI 的方式实现,也可以对边缘模块采用本地插件化的方式。
- 分割 dex
http://blog.csdn.net/j08006869966/article/details/51780676
https://segmentfault.com/a/1190000004053072
2.Android studio 全局替换:
项目右键 – Replace in path 选项
相当 Eclipse 中的 Ctrl + H
注:如果替换的字符串过多,请记住备份工程文件,因为谁也说不准替换完了之后会出现什么错误,所以请谨慎使用!
3.new FrameLayout.LayoutParams(-1, -1) 简便写法
-1 就是 MATCH_PARENT,-2 是 WARP_CONTENT:
public static final int MATCH_PARENT = -1;/*** Special value for the height or width requested by a View.* WRAP_CONTENT means that the view wants to be just large enough to fit* its own internal content, taking its own padding into account.*/public static final int WRAP_CONTENT = -2;
比如:
mProgressView.setLayoutParams(new FrameLayout.LayoutParams(-1, -1, Gravity.CENTER));
4.上周我负责将项目中引用的旧框架 library 换成 gradle 引入依赖,得到了一些经验
框架里要写什么、不写什么:
- 非公用、公用但常变的尺寸不该写到框架 dimen 中
- 颜色也一样
- 常用自定义 View,要把功能抽象成基类,具体界面效果交给 app 实现,因为可能经常会变
- Activity、Fragment、WebView 基类里要有 loading/content/failed 逻辑,但具体效果还是交给 app
框架应该只实现功能,不能写任何跟界面、业务相关的内容,因为那些都容易改变,比如这些:
- 基类 BaseActivity,BaseFragment,BaseWebViewFragment
- 网络请求库
- 图片加载库
- 三级缓存
- 常用工具类
- 常用自定义 View
- 常用第三方 SDK 调用代码封装
- Hybrid
- UBT
- 调试、测试类
- …
5.高效率的程序员都把时间花在制作工具上(忘了哪儿看的了,抱歉)
很多人也认为工具是很重要的,但是他们并没有花时间去制作、整合自己的工具。但是,Jonson 团队最出色的员工耗费了他们1/3的时间在工具制作上,这些工具可以用来发布代码,监控系统,以及能让他们花更少的时间去做更多事情。
优化你的迭代速度
假设你要花12秒钟去搜索某个函数是在哪里定义的。再假设你每天做这个动作60次,那么你每天就要花12分钟去搜索函数定义。
如果你用一个好一点的编辑器,每次找到函数定义只要2秒钟,那么你每天就会节约10分钟。每年你就可以节约40个小时。
如果你能找到3个这样的场景去优化一下,那么你每年可以节约一个月的时间。想想这一个月你可以做多少有意义的事情。
再假如你在调试一个App的bug的时候,改完一次代码都需要重启一下App,然后点击4、5次才能看到bug有没有改好。那么你是不是可以先花几分钟设置以下,让App一启动就转到显示Bug的页面呢?
总之,不要花时间去做机器可以代替你去做的事情。
千万不要小看这些琐碎的细节,改善它们的回报是巨大。
6.一个奇怪的警告
A connection to http://abc.xyz was leaked. Did you forget to close a response body?
https://github.com/square/okhttp/issues/2843
7.errorCode:405
请求方法不正确,比如人家要 get, 你用的却是 post。
搜索的时候加 关键字 http status : “HTTP STATUS 405”
- 400 - 错误的请求。
- 401 - 访问被拒绝
- 403 - 禁止访问
- 404 - 未找到
- 405 - 用来访问本页面的 HTTP 请求方法不被允许
- 406 - 客户端浏览器不接受所请求页面的 MIME 类型
- 407 - 要求进行代理身份验证
- 413 – 请求实体太大
- 414 - 请求 URI 太长
总结
1.前几天才发现,面试官问你的他也不一定会。
之前面试我的面试官,问过我 Git 的一些问题,结果有天晚上加班,看到同事教他怎么用 Git 我惊呆了 0.0。
所以面试的时候一定要自信,你了解多少尽量的说,不要怕别人觉得你掌握的少,better than nothing.
2.可以说,我们这一波人赶上了最好的时代,我们上来用的就是是新的开发工具(Android Studio)、主流的语言(Java,JS, Kotlin, Go),这让我们节约了很多时间。
不过别人的今天就是我们的明天,程序员要为自己的将来做好准备。
3.还是要感慨一句废话:毕业后乱七八糟事情真!多!啊!
无奈生活这么繁琐,我们还努力爱她,这才是真爱。
工作第十六七周:生活这么繁琐,我们还要努力爱她相关推荐
- 第十六届全国大学生智能汽车竞赛安徽赛区赛事指南
主办单位:安徽省教育厅 中国自动化学会 承办单位:安徽中医药大学 合肥工业大学 中国 合肥 2021年7月 §01 赛事简介 全国大学生智能汽车竞赛起源于韩国,是韩国汉阳大学汽车控制实验室在飞思卡 ...
- HCIP/HCIE RoutingSwitching / Datacom备考宝典系列(十六)DHCP知识点全面总结(动态主机配置协议)
目录 一.技术背景 二.DHCP概述 三.DHCP系统组成 四.DHCP报文结构 五.DHCP报文类型 六.DHCP工作流程 七.DHCP租期更新 50% 八.DHCP重绑定 87.5% = 7/8 ...
- 鸟哥的Linux私房菜(基础篇)- 第十六章、例行性工作排程 (crontab)
第十六章.例行性工作排程 (crontab) 最近升级日期:2009/09/11 学习了基础篇也一阵子了,你会发现到为什么系统常常会主动的进行一些任务?这些任务到底是谁在配置工作的?如果你想要让自己设 ...
- 小鱼易连电脑版_生活多么美好 篇十六:我的桌面改造,有绿植,有小鱼,有大音箱...
原标题:生活多么美好 篇十六:我的桌面改造,有绿植,有小鱼,有大音箱 生活多么美好 篇十六:我的桌面改造,有绿植,有小鱼,有大音箱 2020-11-06 22:13:312点赞1收藏1评论 想攒一台电 ...
- 达拉草201771010105《面向对象程序设计(java)》第十六周学习总结
达拉草201771010105<面向对象程序设计(java)>第十六周学习总结 第一部分:理论知识 1.程序与进程的概念: (1)程序是一段静态的代码,它是应用程序执行的蓝 本. (2)进 ...
- (七十六):Masked Autoencoders Are Scalable Vision Learners
(七十六):Masked Autoencoders Are Scalable Vision Learners Abstract 1. Introduction 2. Related Work 3. M ...
- html5诗歌作业,《品味诗词群》总第七十六期作业
<品味诗词群>总第七十六期作业 老物件总能给人以无限的怀想.本期作业以<收录机>为主题,以图题诗.韵部不限,诗词均可,要求不变,期待精彩! 品味诗词雅韵,传承华夏文明. 七绝 ...
- 周怎么换算成月_嘉会班三年级第十六周(2020年12月14日—12月18日)
周一湿水彩课上,我们一起油印了九九消寒图. 周二课堂迎来了六位家长并留下了很中肯的教学建议. 周三我跟孩子们请假溜出去买冬至零食,孩子们迫不及待地准了假.中午和孩子们做了桔子灯还有青椒灯/ 周四早晨, ...
- 网络最流行的伤感时代空间日志发布:那一年,我们十六、七岁
网络最流行的伤感时代空间日志发布:那一年,我们十六.七岁 - 网络最流行的伤感时代空间日志发布:那一年,我们十六.七岁 那一年,我们十六.七岁 每天没心没肺的笑着 但笑容里带着淡淡的忧伤 忧伤却没有人 ...
最新文章
- 清明出游,你会“鸽”酒店吗?AI 早已看穿一切
- 『互联网架构』软件架构-spring源码之spring结构概述
- 后端python基础
- LintCode刷起来(一)
- 《数据结构与抽象:Java语言描述(原书第4版)》一练习
- 读空气java_空气质量指数查询示例代码
- while用法_when 和 while 的用法区别
- html css . doc,html+CSS基础.doc
- php urldecode 加号不显示_php|urldecode urlencode 的加号问题
- 系统调用之Write
- win7 时间服务器地址修改,win7 时间服务器地址修改
- 工业物联网的体系架构
- 博客备份工具(博主网)开发略谈
- Jboss部署Springboot项目
- 如何在Mac os X上搭建本地服务器环境
- 【CF85D】 Sum of Medians
- Win 10 运行软件报‘MSCOMCTL.OCX‘缺失怎么办
- 傻瓜式制作纯净版win10启动盘
- Python笔试练习题
- 优麒麟 2204 安装 Fcitx5 输入法
热门文章
- 如何用潜类别混合效应模型(Latent Class Mixed Model ,LCMM)分析老年痴呆年龄数据
- 学习现代化的文章编写方式——关于Markdown语法的使用
- 问题:vscode 中用matplotlib 绘图时无法弹窗,不显示图像
- 9位院士!10所一流大学,迎“新帅”
- Altium Designer系列:问题之无法打开pcb文件
- 您需要最新版本的Outlook才能使用此数据库-MacOS的Outlook
- 扑克游戏24点的规则和方法分享
- 前端上传图片添加水印
- NOIP2017 游记
- 震惊了,王者荣耀项目组发了60个月的年终奖!!!妈妈,我要做游戏