¿Cómo deberían responder los programadores de Android cuando se encuentran con preguntas relacionadas con la optimización del rendimiento?

La optimización del rendimiento de Android siempre ha sido un tema candente examinado durante el proceso de entrevista.

Hay un sinfín de blogs técnicos relacionados y siempre podemos encontrar muchos artículos de este tipo.

Comience a analizar cada aspecto de una aplicación, los distintos medios de optimización y los distintos efectos logrados.

A menudo, cuanto más largo y detallado es, más popular es.

Sin embargo, durante las entrevistas, al hacer este tipo de preguntas, los candidatos a menudo dan respuestas insatisfactorias y la mayoría de las personas recitarán las medidas de optimización que se les ocurran.

Cuanto más se memorice, mejor. Los propios candidatos se sienten culpables. Después de memorizar, el entrevistador no tiene expresión porque esa no es la respuesta que quieren.

Pensémoslo desde la perspectiva del entrevistador.

¿Cuáles son las dificultades en la optimización del rendimiento?

Dificultad 1: Mal desempeño

El primer problema en la optimización del rendimiento es el bajo rendimiento de la propia aplicación, que se basa en el uso del rendimiento de la propia aplicación:

  • El primer tipo de problema es que los usuarios pueden sentirlo intuitivamente, como: la aplicación se inicia lentamente, se congela, se congela, etc. ¡Los usuarios definitivamente se quejarán de que el teléfono está demasiado atascado!
  • El segundo problema es que, aunque los usuarios no lo sentirán intuitivamente, como un uso elevado de memoria y fluctuaciones frecuentes, este problema oculto puede provocar un desbordamiento de la memoria, lo que afectará el funcionamiento normal del programa.
  • Además, los problemas de rendimiento incluyen el consumo de energía de las aplicaciones, solicitudes de red lentas y altas tasas de fallas y excepciones.

Entre ellos, la tasa de fallas y la tasa de excepción pertenecen a la categoría de estabilidad. La tasa de fallas es más fácil de entender. A lo que se debe prestar atención es a la tasa de excepción de la aplicación. La anormalidad significa que la aplicación no puede responder normalmente. Por ejemplo, cuando hacemos clic en un botón, no salta a la siguiente interfaz correctamente. En este momento, la aplicación no falla, pero también está en un estado no disponible, lo que trae muy mala experiencia de usuario.

Insertar descripción de la imagen aquí

Dificultad 2: No se pueden solucionar problemas en línea

La dificultad para solucionar problemas en línea es un problema que quema el cerebro (tuo) (fa) para muchos programadores de Android. ¡Hablemos de las principales dificultades para solucionar problemas en línea!

Insertar descripción de la imagen aquí

El primer problema en la optimización del rendimiento es que no hay forma de solucionar problemas en línea . Esto es desde la perspectiva de la solución de problemas. En términos simples, es cómo podemos garantizar una alta sensibilidad a las anormalidades cuando ocurre una anormalidad en la línea de retardo.

Cuando lanzamos una nueva versión o lanzamos una nueva función sin comentarios de los usuarios, no debemos considerar que se haya lanzado exitosamente, porque es muy fácil pasar por alto la primera vez que ocurre una excepción al confiar únicamente en los comentarios de los usuarios. No lo soporte y regrese con comentarios. El daño causado ha sido demasiado grande y se ha perdido la mejor oportunidad para abordarlo.

La segunda dificultad en la resolución de problemas en línea: cómo restaurar la escena del crimen ... Supongamos que el usuario nos da su opinión, pero no podemos estar contentos demasiado pronto en este momento. El hecho de que los usuarios tengan comentarios no significa que podremos reproducirlos. Muchos problemas no les ocurrirán a todos los usuarios. Los usuarios que encuentren este problema especial pueden estar usando un equipo especial o su cuenta se encuentra en un estado anormal específico. Cuando utilizamos nuestro propio equipo y nuestras propias cuentas para reproducir su problema en la empresa, es muy probable que no podamos reproducirlo por condiciones insuficientes y, naturalmente, no habrá forma de solucionarlo rápidamente.

La tercera dificultad de los problemas en línea: cómo repararlos rápida y exitosamente.Para los problemas en línea, el tiempo es esencial y debe repararse con éxito lo antes posible. Después de solucionarlo, por motivos de seguridad, generalmente abriremos algunos usuarios con poco tráfico o buscaremos usuarios específicos para realizar pruebas. Pero si nuestro método es reinstalar usuarios continuamente y esperar el resultado, el ciclo de dicha solución es realmente demasiado largo y los usuarios se disgustarán un poco después de muchas veces y, al final, es posible que no pueda encontrar la solución. usuarios que desees.

En resumen, la optimización del rendimiento es difícil de localizar y resolver, entonces, ¿cómo destacar frente al entrevistador?

En este momento, los proyectos reales de optimización del rendimiento de las empresas de Internet de primer nivel se han convertido en una referencia clave para los ingenieros de desarrollo de Android, quienes pueden encontrar sus propios defectos en los problemas, adquirir más experiencia en proyectos y mejorar sus habilidades y conocimientos. Por lo tanto, me gustaría compartir este " Capítulo práctico de optimización del rendimiento de Android" para que todos los que quieran ingresar al campo del desarrollo y optimización del sistema Android puedan comenzar rápidamente a través de este manual de notas. También puede considerarse como una clasificación de conocimientos. , comprobando omisiones y llenando vacíos. , Aprendizaje permanente (acceso directo al final del artículo).

Optimización práctica del rendimiento de todos los fabricantes de Internet de primera línea.

Equipo Tencent:

  • Tencent Bugly: un poco de comprensión de los algoritmos de coincidencia de cadenas
  • Solución nacional de adaptación de karaoke arm64-v8a
  • Memoria Nacional de Karaoke Parte 2 - Un breve análisis de la memoria virtual
  • Memoria Nacional de Karaoke Capítulo 1 - Seguimiento y Gestión Integral en Línea
  • Tencent Bugly: la aplicación de distribución dinámica de bibliotecas en el paquete de instalación APK de Android adelgaza
  • El camino para acelerar la compilación de QQ Music para Android
    Insertar descripción de la imagen aquí

Equipo iQIYI

  • iQIYI: solución de captura de fallas de aplicaciones de Android: xCrash
  • Android | Intercambio de prácticas de optimización de inicio de aplicaciones iQiyi
  • Optimización del escaneo de códigos QR y práctica de la aplicación iQiyi
    Insertar descripción de la imagen aquí

Equipo de bytes

  • ByteDance: comprensión profunda de uno de los marcos de Gradle: complemento, extensión, buildSrc
  • ByteDance: optimización del escaneo de códigos QR
  • Titulares | Comprensión profunda del marco de Gradle Parte 2: Análisis de implementación de dependencia
  • Titulares | Código abierto | Escena: navegación de páginas de código abierto de Android y marco combinado
  • Práctica de optimización de Douyin BoostMultiDex: el tiempo de inicio de la aplicación se redujo en un 80 % en versiones inferiores de Android
  • Práctica de optimización de Douyin BoostMultiDex: el tiempo de inicio de la primera aplicación en versiones inferiores de Android se reduce en un 80% (2)
  • Optimización del tamaño del paquete Douyin-optimización de recursos
  • Serie de prácticas de optimización de ANR de Toutiao: principios de diseño y factores que influyen
  • Serie de prácticas de optimización de ANR de Toutiao: herramientas de monitoreo e ideas de análisis
  • Optimización de la velocidad de compilación de 'segundo' nivel de Toutiao Android
  • Serie de optimización del rendimiento de Android de Douyin: optimización de la memoria Java

equipo de baidú

  • Tecnología de aplicación Baidu: práctica de optimización de la primera pantalla de Android H5
  • El camino hacia la componenteización de la aplicación Baidu
  • Optimización profunda de la red de aplicaciones de Baidu Serie "3" Optimización de red débil

equipo de alibaba

  • Análisis de la arquitectura del cliente Alipay: optimización de la velocidad de inicio del cliente Android "recolección de basura"
  • Análisis de optimización de compilación de aplicaciones Alipay: optimización del rendimiento de inicio de Android mediante la reorganización del paquete de instalación
  • Análisis de optimización de la construcción de la aplicación Alipay: el tamaño del paquete de Android está extremadamente comprimido
  • ¿Cómo duplicó Xianyu la velocidad de inicio de Android en 2 meses?
  • Resuelva los problemas restantes de la optimización del tamaño del paquete Alipay: obtenga dexpc en tiempo de ejecución

Ctrip

  • Ctrip: análisis de la práctica de la arquitectura de componentes del proyecto Zhixing de Android
  • Guía de errores de adaptación de Ctrip a Android 10

NetEase

  • Equipo de tecnología NetEase Media: aplicación y práctica de la tecnología AOP en el cliente
  • NetEase Big Data | Consejos para la toma de decisiones sobre productos de Internet: pruebas AB
  • Optimización de compilación de NetEase News: ¿Cómo hacer que su velocidad de compilación sea "como un rayo"?
  • NetEase News Client H5 se abre en segundos optimizado
    Insertar descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/Coo123_/article/details/133363089
Recomendado
Clasificación