Notas de aprendizaje
Primera parte:
Androide(Androide)
- Conceptos básicos de Android
- Resumen de pérdida de memoria de Android
- Análisis y solución de pérdida de memoria del controlador
- Análisis de procesos básicos de Handler, Looper, Message y MessageQueue
- Optimización del rendimiento de Android
- ListView explicación detallada
- Similitudes y diferencias entre RecyclerView y ListView
- Análisis del código fuente de AsyncTask
- tecnología de complemento
- Controles personalizados
- mecanismo de distribución de eventos
- problema de ANR
- La diferencia entre arte y Dalvik
- Soluciones de Android para OOM
- Fragmento
- Actividad y fragmento
- Vista de superficie
- Android varios procesos
- Proceso de inicio de la aplicación
- Proceso de inicio de actividad y proceso de visualización de interfaz.
- Caché de imagen de tercer nivel
- Análisis y uso de Bitmap.
- El principio de reparación en caliente.
- AIDL
- Mecanismo de carpeta
- Proceso de inicio de los procesos Zygote y System.
- MVC, MVP y MVVM en Android
- MVP
- Proceso de arranque de Android
- Análisis del código fuente de actualización
- Análisis del código fuente de Glide
- Explicación detallada del uso de EventBus
- Análisis del código fuente de EventBus
- Experiencia de uso de greenDAO del marco ORM de Android
- Guía del usuario de enlace de datos
- RxJava
- Diseñe una solución de caché de carga asincrónica de imágenes
- Adaptación de la interfaz de usuario de Android
- Gradle
- Compruebe si hay omisiones y complete los vacíos.
- operaciones de git
segunda parte
JavaSE (Conceptos básicos de Java)
- Conceptos básicos de Java
- Pérdida de memoria en Java
- Análisis de código fuente de cadenas
- Marco de colección de Java
- Análisis del código fuente de ArrayList
- Análisis del código fuente de LinkedList
- Análisis de código fuente vectorial
- Análisis del código fuente de HashMap
- Análisis del código fuente de HashTable
- Análisis del código fuente de LinkedHashMap
JVM (máquina virtual Java)
- Conceptos básicos de JVM
- Mecanismo de carga de clases JVM
- Área de memoria Java y desbordamiento de memoria
- Algoritmo de recolección de basura
JavaConcurrent (simultaneidad de Java)
- Conceptos básicos de concurrencia de Java
- problemas de productores y consumidores
- La diferencia entre Thread y Runnable en la implementación de subprocesos múltiples
- interrupción del hilo
- Hilos de demonio e hilos de bloqueo
- sincronizado
- Uso seguro de la API de recopilación en un entorno multiproceso
- Comparación de dos métodos para lograr visibilidad de la memoria: bloqueo y variables volátiles
- punto muerto
- Cerradura incorporada reentrante
- Utilice esperar/notificar/notificar a todos para implementar la comunicación entre subprocesos
- NÍO
tercera parte
- Estructura de datos(estructura de datos)
- formación
- lista enlazada
- pilas y colas
- cadena
- Árbol
- imagen
- Algoritmo(algoritmo)
- clasificar
- clasificación de selección
- clasificación de burbujas
- clasificación rápida
- fusionar ordenar
- Resumen de los diez mejores algoritmos de clasificación en entrevistas
- Encontrar
- búsqueda secuencial
- media búsqueda
- "Oferta de puntero de espada"
- Pregunta de la entrevista 2: implementar el patrón Singleton
- Pregunta de la entrevista 6: Reconstruir un árbol binario
- Pregunta de la entrevista 11: Potencias enteras de valores numéricos
- Pregunta de la entrevista 44: Poker Straight
- Pregunta de la entrevista 45: El último número que queda en el círculo
- "Guía de entrevista para programadores"
- "LeetCode"
- "Guía de entrevista sobre el código del programador (Zuo Chengyun)"
- 1. Diseñar una pila con la función getMin
- 2. Una cola compuesta por dos pilas.
- 3. Cómo revertir una pila usando solo funciones recursivas y operaciones de pila
parte 4
- Red
- TCP/UDP
- HTTP
- Enchufe
- Resumen de los conceptos básicos de las redes informáticas.
- Sistema operativo(sistema operativo)
parte 5
sexta parte
- Experiencia de entrevista(Experiencia de entrevista)
- Alibaba
- meituán
- Wandoujia
- Libélula FM
- Sina Weibo
- NetEase Hangyan
Si tiene alguna pregunta, comuníquese con: [email protected]
Bienvenido a seguir mi cuenta Zhihu:
El Zhihu de Francisco
Cuenta pública de WeChat:
Tao Cheng
Cuenta Weibo:
Weibo de Francisco
Se ha sincronizado con http://www.diycode.cc/wiki/androidinterview
Cualquier forma de uso comercial está prohibida.