![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
移动开发
文章平均质量分 93
Web_boom
这个作者很懒,什么都没留下…
展开
-
你们做Android也这么闲吗?真的受不了了,想跑路!
上周六,跟一个许久不见的大学同学一起约了个饭,因为毕业后都是做Android开发方面的工作,所以也就一直有着些联系,但线下面基却是第一次。四年同窗,一起“同床”的情谊,见了面却也很是生疏,各种寒暄、商业互捧、没话找话。终于,他的一句:“我辞职了,你那公司咋样?”,让彼此打开了话匣。毕业后,他找了一份比较清闲的工作,在一家外企做Android开发,做事流程也非常正规,大家都非常羡慕,没想到把他给闲出病来了。下面,我将以第一人称的视角,来看一下他的工作状态。我了解到,还是有很多人因为太闲的原因,而辞职的。这原创 2021-08-24 14:57:40 · 201 阅读 · 4 评论 -
面试必备:Kotlin 线程同步的 N 种方法
面试的时候经常会被问及多线程同步的问题,例如:“ 现有 Task1、Task2 等多个并行任务,如何等待全部执行完成后,执行 Task3。”在 Kotlin 中我们有多种实现方式,本文将所有这些方式做了整理,建议收藏。1. Thread.join2. Synchronized3. ReentrantLock4. BlockingQueue5. CountDownLatch6. CyclicBarrier7. CAS8. Future9. CompletableFuture10. Rx原创 2021-07-07 17:56:19 · 535 阅读 · 0 评论 -
Android性能优化,这一篇有你想要的所有答案!
性能的优化是一个老生常谈的点,也是一个比较重要的点。做过一点性能优化的工作,现在对工作中的优化点做一个总结。如有错误,还请指正。有哪些方面需要优化在平时的优化过程中我们需要从哪几个点来优化呢?其实我们平时自己一定也用过软件,在使用软件的过程中有没有什么想吐槽的呢?“这个 app 怎么还没下载完!”、“太卡了吧!”、“图片怎么还没加载出来!”、“怎么刚进去就卡了!”、“这么点了一下就退出了!”等等,是不是有这样的想法?这些想法其实包含了我们今天要说的内容,就是从哪些方面来优化我们的 APP ,我总结了以原创 2021-04-14 20:44:48 · 423 阅读 · 4 评论 -
“我天天curd,怎么才能成长?” 老板:别长了,你这样挺好!
你要真是天天curd,怎么可能会有成长?怎么滴,怕成长起来了,老板没钱给你涨工资呀?那您可真是“赤胆忠心”。每一个IT公司可能都缺不了一个天天curd的“人才”,但愿那个人不会永远都是你!(想啥呢,能撑过35岁吗?还有永远)起因“天天在那curd,能有啥出息”“你就是一个curd boy”“就你叫curder啊”“你不写代码,你只是代码的搬运工”上面几段话,程序员是不是经常听到或者看到。这几句话说明了什么?高度概括能力:用几个单词组合,就概括了多数程序员日常的工作情况。自嘲:自嘲有时是.原创 2021-02-25 20:24:48 · 660 阅读 · 4 评论 -
一篇就够了,全网最全计算机网络基础总结攻略
定义 计算机网络的各层 + 其协议的集合作用 定义该计算机网络的所能完成的功能OSI体系结构、TCP/IP体系结构、五层体系结构OSI体系结构:概念清楚 & 理念完整,但复杂 & 不实用TCP/IP体系结构:含了一系列构成互联网基础的网络协议,是Internet的核心协议 & 被广泛应用于局域网 和 广域网五层体系结构:融合了OSI与TCP/IP的体系结构,目的是为了学习 & 讲解计算机原理低三层为通信子网,负责数据传输 高三层为资源子网,相当于计算机系统,完成数据处理;传输层承上启下。原创 2021-02-04 20:40:32 · 12295 阅读 · 0 评论 -
“你们程序员不就是修电脑的吗,你牛什么牛?” 确实,我一开始也这么认为!
“这科技越来越发达,你就学电脑吧,你二姨儿子在县城里就是自己开店子给人修电脑,能挣不少钱!”—— 父亲大人 2009年7月引子最近一直在思考,作为一名软件开发工程师,到底应该如何实现自我成长,是否有捷径而言?其实断断续续有过很多思考,也有和各种年龄段的同学们做过不少交流,结合自身的经历,有一些感悟和思考。本文可能可以适用到其他端,不过由于自己是一名 Android 开发工程师,所以就姑且从一名普通的 Android 开发工程师的角度来进行表述吧。整篇文章可能读下来会比较啰嗦和白话,但句句真言,字.原创 2021-02-02 17:49:46 · 14068 阅读 · 34 评论 -
Android主流三方库源码分析:Leakcanary
一、原理概述首先,笔者仔细查看了Leakcanary官方的github仓库,最重要的便是对Leakcanary是如何起作用的(即原理)这一问题进行了阐述,我自己把它翻译成了易于理解的文字,主要分为如下7个步骤:1、RefWatcher.watch()创建了一个KeyedWeakReference用于去观察对象。2、然后,在后台线程中,它会检测引用是否被清除了,并且是否没有触发GC。3、如果引用仍然没有被清除,那么它将会把堆栈信息保存在文件系统中的.hprof文件里。4、HeapAnalyzerS原创 2021-01-13 20:58:02 · 294 阅读 · 1 评论 -
Android主流三方库源码分析:Dagger2
前言上一篇,笔者详细地分析了Android中的依赖注入框架ButterKnife,使用它帮助我们解决了重复编写findViewById和setOnclickListener的繁琐。众所周知,当项目越来越大时,类之间的调用层次会越来越深,并且有些类是Activity/Fragment,有些是单例,而且它们的生命周期也不是一致的,所以创建这些对象时要处理的各个对象的依赖关系和生命周期时的任务会很繁重,因此,为了解决这个问题Dagger2应运而生。相比ButterKnife的轻量级使用,Dagger2会显得更重原创 2021-01-11 20:11:39 · 242 阅读 · 0 评论 -
腾讯T4大佬年终分享,知乎一天获赞3K,这份《高级Android插件化强化实战》学习笔记太香了!
前言近些年,一线互联网大厂几乎对移动互联网形成了垄断,app的功能越来越多,比如下面的美团、支付宝(最近相继因为垄断问题被调查(手动狗头)):每个app都集成了许多功能入口,美团上有“美食”、“电影”、“外卖”、“打车”等,其实每个入口都是一个app,只不过被集成到这些入口里了。想要一下如果没有插件化技术,美团、淘宝这些app会有多大?又或是对于用户而言,如果没有插件化,你的手机上面又要多下多少个APP?不管是对于美团、阿里这些互联网IT公司而言,还是对于广大的Android用户而言,插件化技术的出原创 2020-12-31 15:39:53 · 1500 阅读 · 6 评论 -
Android主流三方库源码分析:Glide
一、基本使用流程Glide最基本的使用流程就是下面这行代码,其它所有扩展的额外功能都是以其建造者链式调用的基础上增加的。GlideApp.with(context).load(url).into(iv);复制代码其中的GlideApp是注解处理器自动生成的,要使用GlideApp,必须先配置应用的AppGlideModule模块,里面可以为空配置,也可以根据实际情况添加指定配置。@GlideModulepublic class MyAppGlideModule extends AppGlide原创 2020-12-28 17:10:50 · 311 阅读 · 0 评论