Skip to content

「Android学习+面试指南」一份涵盖大部分 Android 程序员所需要掌握的核心知识。准备 Android 面试,首选 AndroidGuide!公众号程序员徐公

gdutxiaoxu/AndroidGuide

Repository files navigation

简介

hello,大家好,欢迎大家来到这里,能来到这里,证明是一种缘分

下面我先简单介绍一下自己。

我目前是一名程序员,Android 高级工程师,17 年毕业,从实习到现在,一直从事在 Android 开发,目前在广州。

  1. CSDN 博客专家,访问量 113 万+,原创 130+

  2. 从毕业开始,一直在中大厂工作,典型的比上不足,比下有余。哈哈。

这几年开,我是站在巨人的肩膀上成长起来的,同样,我也希望成为你们的巨人。觉得不错的话可以关注一下我的微信公众号程序员徐公。主要分享

  1. Android 开发相关知识:包括 java,kotlin, Android 技术。
  2. 面试相关分享:包括常见的面试题目,大厂面试真题、面试经验套路分享。
  3. 算法相关学习笔记:比如怎么学习算法,leetcode 常见算法总结,跟大家一起学习算法。
  4. 时事点评:主要是关于互联网的,比如小米高管屌丝事件,拼多多女员工猝死事件等
  5. 公众号回复“黑马”两字,可以获得 Android 学习视频。回复 ”java“ 两字,可以获得 java 学习视频。

希望我们可以成为朋友,成长路上的忠实伙伴!

目录如下

性能优化

启动优化

Android 启动优化(七) - JetPack App Startup 使用及源码浅析

Android 启动优化(六)- 深入理解布局优化

Android 启动优化(五)- AnchorTask 1.0.0 版本正式发布了

Android 启动优化(四)- AnchorTask 是怎么实现的

Android 启动优化(三)- AnchorTask 开源了

Android 启动优化(二) - 拓扑排序的原理以及解题思路

Android 启动优化(一) - 有向无环图

面试官:今日头条启动很快,你觉得可能是做了哪些优化?

个人总结

程序员该如何写好自己的简历,一位 5 年中大厂老哥跟你聊聊

我的 5 年 Android 学习之路,那些年一起踩过的坑

关于我,一个简单低调的程序员

职场上这四件事,越早知道越好

今天,说三件小事

技术人的未来在哪里

致刚入职场的你 - 程序员的成长笔记

2019.05 随笔

Android 必学

Android 点九图机制讲解及在聊天气泡中的应用

SharedPreferences灵魂拷问之原理

java 源码系列 - 带你读懂 Reference 和 ReferenceQueue

Android livedata 源码解剖

Android lifecyle 源码解剖

Android LiveData 使用详解

Android lifecycle 使用详解

你真的了解 View 的坐标吗

一步步读懂 ButterKnife

Android 二次封装网络加载框架

Android Fragment 的妙用 - 优雅地申请权限和处理 onActivityResult

TextView AutoLink, ClikSpan 与长按事件冲突的解决

聊一聊 Android 中巧妙的位操作

Android 自定义 MarqueeView 实现跑马灯 —— 原理篇

Android MarqueeView 实现跑马灯效果

Android Hook 机制之简单实战

开源框架

面试官,怎样实现 Router 框架?

面试官:简历上最好不要写Glide,不是问源码那么简单

从筛选简历和面试流程讲起,再给培训班出身的程序员一些建议

Rxjava 2.x 源码系列 - 线程切换 (上)

Rxjava 2.x 源码系列 - 线程切换 (下)

Rxjava 2.x 源码系列 - 线程切换 (下)

Rxjava 2.x 源码系列 - 变换操作符 Map(上)

Rxjava 源码系列 - 基础框架分析

一步步拆解 LeakCanary

java 源码系列 - 带你读懂 Reference 和 ReferenceQueue

面试必备

网络和基础

面试官系列 - https 真的安全吗,可以抓包吗,如何防止抓包吗

Android 面试必备 - http 与 https 协议

Android 面试必备 - 计算机网络基本知识(TCP,UDP,Http,https)

Android 面试必备 - 系统、App、Activity 启动过程

Android 面试必备 - JVM 及 类加载机制

面经

面试 Google, 我失败了 | Google 面经分享

常见的链表翻转,字节跳动加了个条件,面试者高呼「我太难了」| 图解算法

面试官:说说多线程并发问题

【不用背的原理】不用背的ThreadLocal原理

徐公随笔

关于小米得屌丝者得天下的一些思考

延迟享受,在最好的年纪请不要选择安逸

我面试人只看这4点

那些年,我们一起追过的安卓技术大佬们

职场上这四件事,越早知道越好

干起来,你就超过了 50% 的人

致刚入职场的你 - 程序员的成长笔记

拼夕夕事件反思,底层逆袭,靠拼命加班行吗

设计模式

[即学即用] Android开发——状态模式

带你了解Android常见的内存缓存算法

Android 建造者模式(Builder)及其应用

责任链模式以及在 Android 中的应用

java 代理模式详解

装饰者模式及其应用

Kotlin下的5种单例模式,真香

隐私合规

Android隐私合规检测(借助 Xposed)

一文学会字节码替换,再也不用担心隐私合规审核

真牛系列 - 一步步解决 App 隐私违规问题

正式开源!无恒实验室推出 appshark 自动化漏洞及隐私合规检测工具

Idea插件学习

Android Studio IDE 插件开发

IntelliJ IDEA/Android Studio插件开发指南

效率提升百分之四十,AS模板也太好用了吧

Android Studio Template(模板)开发

系统性解决IntelliJ IDEA插件开发环境问题

快看漫画提效工具之Android Studio插件

算法

刚开始准备刷算法题目的时候,感觉真的是好难,十道题目有九道是不会的。心中曾一万只草泥马跑过,自己怎么这么辣鸡。

慢慢得,我发现算法也是一个可以通过练习慢慢成长的。

  1. 首先我们要掌握基本的数据结构,数组,链表,哈希表, Set,二叉树,堆,栈等。你要知道他们有什么优缺点,适应场景是什么,时间复杂度和空间复杂度是多少。而不能知道简单的 API。
  2. 接着,掌握了这些基本的数据结构之后,一些基本的算法你也要掌握以下,比如快速排序,归并排序,对排序,二分查找。这些基本的一定要掌握,面试当中经常也会问到。
  3. 分类刷题,我们在力扣上面可以看到,https://leetcode-cn.com/problemset/algorithms/ ,刷题是可以按标签来的。比如链表,数组,二分查找,二叉树,动态规划等
  4. 学好算法不是一日之功,需要长期的积累。建议的做法是每天做一两道题,题目不在多,贵在于理解。坚持一两个月,你会发现你的感觉逐渐好起来了

最后,让我们一起加油,一起进大厂,拿期权,高薪。

剑指 offer

剑指offer

leetcode 算法

leetcode

算法总结

【算法总结】你真的掌握了二叉树的遍历嘛

【算法总结】五道常见的算法-二叉树

面试官:手写生产者消费者模型

快速排序与各种衍生知识点

面试官系列 - LeetCode链表知识点&题型总结

java 版剑指offer集锦

面试官:你有m个鸡蛋,如何用最少的次数测出鸡蛋会在哪一层碎?

归并排序 递归版和非递归版的实现

笔试题—字符串常见的算法题集锦

Git

Git config 使用说明

Git 配置别名 —— 让命令变得更简单

git 设置 mergetool,difftool 为 BeyondCompare

About

「Android学习+面试指南」一份涵盖大部分 Android 程序员所需要掌握的核心知识。准备 Android 面试,首选 AndroidGuide!公众号程序员徐公

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published