工作第十六七周:生活这么繁琐,我们还要努力爱她 淩亂°似流年 2022-07-15 10:44 94阅读 0赞 一眨眼又是两周,上周周末有些事,耽搁了总结,只好拖到这周一起了。 ## 这两周生活、工作 ## ### 1.订婚大事 ### 我跟肉肉在一起也有 5 年 4 个多月了,没毕业前双方家里睁一只眼闭一只眼,过得倒也开心、自在。毕业工作后,不能算早恋了,两个人关系也要拿上台面谈谈。 肉肉从小娇生惯养,掌上明珠,见识比我多,脾气也不小,但对我很好,家里一顿饭没做过,跟我在一起后也开始做饭。对我爸爸妈妈也比较热情,挺受喜欢的。 我虽然家境一般,长的一般,工作一般,但好在诚实可靠,有点上进心,脸皮厚不怕肉肉欺负。所以叔叔阿姨不讨厌我,对我俩的关系也没什么意见。 关系确定了接下来就要商量订婚、结婚大事了,结果双方父母都没什么经验,突然要商量这个,七大姑八大姨的咨询,这下子,我的电话一个接一个,这个说东那个说西,整的我心力憔悴。 本来觉得订婚是很简单的一件事,现在看来我还是 too naive。 双方家长考虑问题角度不同导致侧重点不同,我和肉肉在中间周转、传话,就像风箱里的耗子。折腾了好一阵子,才先大概确定下来。 My god, 真累。 ### 2.可耻地直接搬了别人的代码 ### 上周业务上有个需求,需要自定义一个组件,本来一开始打算自己写,结果由于我之前开始的 [Java 集合框架源码分析系列][Java] 拓展内容太多,进度比计划慢了许多,从而导致没有时间自己写。 然后我就从 GitHub 上找了一个现成的,大概了解后就直接拿来用了。 现在想想心里还是有些鄙视自己的,没有自己写就算了,不好好看清楚源码确定没问题就直接用人家的,这不是我想要的结果。 希望下周加速度搞完需求,仔仔细细地把这个组件代码看看,了解清楚吧。 ### 3.双十一买了 Mac ### 哈哈,本来双十一没打算买什么,陪肉肉逛逛就睡了。结果 JD Mac 搞活动,肉肉看我那么想要,居然同意了! 作为一名小屌丝,能有一本 Mac 是我梦想了许久的事情。 虽然是分期,拿我每个月零用钱的一部分还,但我当时脑子里只有 Mac,管不了那么多了哈哈。 ![shixinzhang][] 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 系统做兼容. 解决方法有如下几个: 1. 精简方法数量,删除没用到的类、方法、第三方库。 2. 使用 ProGuard 去掉一些未使用的代码 3. 复杂模块采用 JNI 的方式实现,也可以对边缘模块采用本地插件化的方式。 4. 分割 dex [http://blog.csdn.net/j08006869966/article/details/51780676][http_blog.csdn.net_j08006869966_article_details_51780676] [https://segmentfault.com/a/1190000004053072][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][http_abc.xyz] was leaked. Did you forget to close a response body? [https://github.com/square/okhttp/issues/2843][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.还是要感慨一句废话:毕业后乱七八糟事情真!多!啊! 无奈生活这么繁琐,我们还努力爱她,这才是真爱。 [Java]: http://blog.csdn.net/u011240877/article/category/6447444 [shixinzhang]: /images/20220715/bbb1a39d40ef4f3bba8d602f8f464c70.png [http_blog.csdn.net_j08006869966_article_details_51780676]: http://blog.csdn.net/j08006869966/article/details/51780676 [https_segmentfault.com_a_1190000004053072]: https://segmentfault.com/a/1190000004053072 [http_abc.xyz]: http://abc.xyz [https_github.com_square_okhttp_issues_2843]: https://github.com/square/okhttp/issues/2843
相关 第十六周. 16周 问题 A: yangftc的时间安排 问题 B: 自守数 问题 C: 相聚HNUCM校园食堂 问题 D: 0-1背包问题(回溯法) 绝地灬酷狼/ 2022年10月08日 02:30/ 0 赞/ 175 阅读
相关 工作第十六七周:生活这么繁琐,我们还要努力爱她 一眨眼又是两周,上周周末有些事,耽搁了总结,只好拖到这周一起了。 这两周生活、工作 1.订婚大事 我跟肉肉在一起也有 5 年 4 个多月了,没毕业前双方家里睁一只 淩亂°似流年/ 2022年07月15日 10:44/ 0 赞/ 95 阅读
相关 第十六周:C语言:坐标 问题:(1)请编写程序,输入一点的横纵坐标,输出该点到原点的距离 (2)请编写程序,输入两点p1和p2的坐标,输出两点之间的距离,以及p1关于x轴的对称点,p2关于原点的对 爱被打了一巴掌/ 2022年07月14日 15:27/ 0 赞/ 181 阅读
相关 第十七周 任务一 / 程序头部注释开始 程序的版权和版本声明部分 Copyright (c) 2011, 烟台大学计算机学院学生 Al 朱雀/ 2022年06月11日 05:23/ 0 赞/ 237 阅读
相关 第十六周 任务四 / 实验目的:文档的自动处理 实验内容:从文件中读入数据,排序并输出到另外一个文件中 程序头部注释开始 程序 浅浅的花香味﹌/ 2022年06月11日 03:47/ 0 赞/ 231 阅读
相关 第十六周 任务三 / 程序头部注释开始 程序的版权和版本声明部分 Copyright (c) 2011, 烟台大学计算机学院学生 ﹏ヽ暗。殇╰゛Y/ 2022年06月11日 02:59/ 0 赞/ 204 阅读
相关 第十六周 任务二 / 程序头部注释开始 程序的版权和版本声明部分 Copyright (c) 2011, 烟台大学计算机学院学生 Al ゝ一世哀愁。/ 2022年06月11日 02:49/ 0 赞/ 456 阅读
相关 第十六周 任务一 /实验目的:学会ASCII文件的操作 实验内容:从文件中读入数据,排序并输出到另外一个文件中 程序头部注释开始 程 Bertha 。/ 2022年06月11日 02:45/ 0 赞/ 268 阅读
相关 第七周. 第六周作业 <table> <thead> <tr> <th>这个作业属于那个课程</th> <th>C语言程序设计II</th> </t 小灰灰/ 2021年12月21日 04:13/ 0 赞/ 328 阅读
相关 第十七周 一.学习 1.这一周基本上进入复习周了,大家都在备考当中,而我感觉这一周的效率不是很高,没有复习到多少东西,进度和16周的没有什么区别,所以自己内心还是有点小慌张 清疚/ 2021年11月10日 23:58/ 0 赞/ 312 阅读
还没有评论,来说两句吧...