Android 程序员的技术栈大全_安卓技术栈_Wei_Leng的博客-程序员秘密

AndroidAll

项目地址:chiclaim/AndroidAll 

简介: Android 程序员的技术栈大全

更多:作者   提 Bug   

标签:

 

内容涵盖绝大部分 Android 程序员所需要的技能:「设计模式」「Flutter」「ReactNative」「Kotlin」「RxJava」「Dagger2」「Retrofit」「OkHttp」「ButterKnife」「Router」「NDK」「Android 架构」「数据结构与算法」「自定义 View」「性能优化」「Android 源码分析」 「经典书籍」等。

我编写了一份详细的 Android 技术栈思维导图,由于 GitHub 图片国内展示不稳定,所以下面使用的树形结构目录。你可以点击查看详细的 -> 思维导图

如果您有任何问题可以提 Issues ,本项目也欢迎各位开发者朋友来分享自己的一些想法和实践经验,欢迎 Pull Request。

  • Android 基础

    • 四大组件
      • Activity
      • Service
      • ContentProvider
      • BroadcastReceiver
    • Activity 启动模式
      • standard
      • singleTop
      • singleTask
      • singleInstance
    • 常用的布局控件
      • RecyclerView
      • ConstraintLayout
      • WebView
      • ......
    • 数据存储
      • SharedPreferences
      • File
      • SQLite
      • Realm
    • 线程异步
      • Thread
      • AsyncTask
      • IntentService
      • 线程池
    • IPC
      • IPC 方式
        • Bundle
        • 文件共享
        • AIDL
        • Messager
        • ContentProvider
        • Socket
      • 框架
        • Hermes
        • HermesEventBus
    • 熟悉常用的开源框架
  • UI

    • UI 绘制流程及原理
    • 事件的传递机制
    • 自定义 View
    • 屏幕适配
  • 开源库

  • Android 虚拟机

    • Dalvik
    • ART
  • 架构

    • 程序架构
    • 设计模式
    • 架构思想
      • 概念
        • IoC 控制反转
        • DI 依赖注入
        • AOP 面向切面
      • 开源方案
        • ASM
        • Javasisit
        • AspectJ
      • 工具
        • APT
        • Gradle plugin
    • 组件化
      • 如何处理组件之间的代码边界
      • 组件之间的 Router 路由
      • 控制反转和依赖注入
      • 如何管理拆分的 Module
    • 插件化
      • 发展历程
        • 2014 年
          • Dynamic-load-apk
        • 2015 年
          • OpenAltas
          • DroidPlugin
          • Small
        • 2016 年
          • Zeus
        • 2017 年
          • Atlas
          • RePlugin
          • VirtualAPK
        • 2019 年
          • Qigsaw
          • Shadow
    • 热修复
      • Native Hook
        • Dexposed
        • AndFix
        • HotFix
      • Java Multidex
        • QZone
        • QFix
        • Nuwa
        • RocooFix
      • Java Hook
        • Robust
        • Aceso
      • Dex Replace
        • Tinker
        • Amigo
      • 混合/优化(商业收费)
        • Sophix
    • 字节码技术
      • gradle plugin
      • 全局的 bug 修复
      • 日志统计
  • 性能优化

    • 安装包大小优化
    • 启动优化(冷启动、暖启动、热启动)
    • 耗电量优化
    • UI 性能优化
      • XML 布局优化
      • 代码优化
    • 网络优化
    • 线上、线下全链路性能监控
  • NDK

  • 跨平台

  • 团队

    • 如何提高整体的团队水平?
    • 如何提高提高团队内代码质量?
    • 如何提高团队积极性?

计算机技术

网络协议

数据结构与算法

Java

Java 基础

Java 网络编程

JavaIO

Java 多线程

Java 集合框架

Java 虚拟机

Kotlin

设计原则与架构

设计模式

Android 架构

Android 性能优化

NDK 开发

Android 框架

RxJava

Dagger2

ButterKnife

Android WebView

跨平台开发

Flutter

经典书籍

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/u014608640/article/details/103667890

智能推荐

Centos 6.4 python 2.6 升级到 2.7_一线涯的博客-程序员秘密

一开始有这个需求,是因为用 YaH3C 替代 iNode 进行校园网认证时,一直编译错误,提示找不到 Python 的某个模块,百度了一下,此模块是在 Python2.7 以上才有的,但是系统的自带的Python是2.6版本,难怪一直连不上网。于是,继续百度google,进行安装,后来又出现问题...在此开篇记录一下,权当备忘。查看python的版本#python -V

python windows错误代码_zhongfuyu的博客-程序员秘密

0操作成功完成。1功能错误。2系统找不到指定的文件。3系统找不到指定的路径。4系统无法打开文件。5拒绝访问。6句柄无效。7存储控制块被损坏。8存储空间不足,无法处理此命令。9存储控制块地址无效。10环境错误。11试图加载格式错误的程序。12访问码无效。13数据无效。14存储器不足,无法完成此操作。15系统找不到指定的驱动器。16无法删除目录。17系统无法将文件移到不

算法面试大全+答案_weixin_30552811的博客-程序员秘密

微软面试100题全部答案 最新整理的全部100题的答案参见如下(重复的,以及一些无关紧要的题目跳过。且因尊重阿财,未作过多修改。因此,有些答案是还有问题的,最靠谱的答案以程序员编程艺术系列为准,亦可参考个人之前整理的前60题的答案:第1题-20题答案:http://blog.csdn.net/v_JULY_v/archive/2011/01/10/61264...

如何查询网站外链?仅供参考_dgd896re32534的博客-程序员秘密

最近在搞SEO,从一无所知,到略知一二,依然在seo学习中。相信你已经看过很多大神文章,学习了很多有价值思路,那么这次就看看非常实用的,如何查询外链?相信大家对于外链肯定不陌生,但是如何更好利用查询工具,完成工作呢?这里我将介绍三个工具,各有利弊,需要你在实际使用中,结合着使用。如果觉得有价值,分享吧。如果没有价值,说的不好,直接抡起板砖吧。 第一个:百度domain命令查询网站...

eventBus的使用_帅性而为1号的博客-程序员秘密

事件总线类 OrderEventBus:import java.util.concurrent.ArrayBlockingQueue;import java.util.concurrent.BlockingQueue;import java.util.concurrent.ThreadPoolExecutor;import java.util.concurrent.TimeUnit;...

DEX VMP与ARM VMP_Android系统攻城狮的博客-程序员秘密

0x00: 目前各种加固都说是VMP了,简单分析市面上的加固,然后自己实现了一个类似原理的加固,大致流程图如下:加固端:解释器:https://www.cnblogs.com/2014asm/p/6534897.htmlARM平台指令虚拟化初探0x00:什么是代码虚拟化?  虚拟机保护是这几年比较流行的软件保护技术。这个词源于俄罗斯的著名软件保护软件“VmPr...

随便推点

Eclipse插件开发自定义扩展点_chuannaoxuan4674的博客-程序员秘密

介绍 如果你的插件写的有特色,想拿来用,但是还不能或者不适合直接修改你的代码,怎么办呢?解决方案当然是Eclipse插件系统最推荐的了——增加扩展点。 概念 一个扩展点(Extension Point)包括ID、Name及Schema文件,shema文件以ID命名,后缀为...

黑马程序员---.NET高级之网络套接字(Socket)编程_weixin_34387468的博客-程序员秘密

----------------------Windows Phone 7手机开发、.Net培训、期待与您交流! ----------------------1.什么是套接字Socket?所谓socket通常也称作"套接字",应用程序通常通过"套接字"向网络发出请求或者应答网络请求。在Internet上有很多这样的主机,这些主机一般运行了多个服务软件,同时提供几种服务。每种服务都...

python图像多层小波分解_图像变换 2: 小波变换(Python)_诺曼叔叔的博客-程序员秘密

1. pyWavelets小波工具包安装:pip install PyWavelets -i https://pypi.douban.com/simple --default-timeout=10002. pyWavelets例子二维Haar小波import cv2import pywtimport numpy as npimport matplotlib.pyplot as pltimg_gr...

IDL常用命令总结_idl控制台_TwcatL_tree的博客-程序员秘密

(4)画Y=3的一条横线;创建一个特定纬度的数组并赋值:replicate(2.0,4,2),创建4列2行值为2.0的数组。如:a=dindgen(3,2) , b=dindgen(2,3) , c=a#b=(3,3)(1)日期格式输出标准:“%H:%I:%S%3” 21:36:58.125。创建索引数组:findgen(num),dindgen(num)

用网络调试助手UDP TCP测试_2013网络调试助手_summitjava的博客-程序员秘密

网络调试助手如下方图,协议类型采用:UDP本机IP地址,一般打开后默认地址   端口随意目标主机:要发送给目标的外网IP地址 端口

推荐文章

热门文章

相关标签