¡Genial! El jefe de Alibaba P8 se quedó despierto hasta tarde durante 15 días y compiló todos los sistemas de conocimiento de iOS en PDF
Con el desarrollo continuo de las empresas de Internet, hay cada vez más módulos en los proyectos de productos y los requisitos de experiencia del usuario son cada vez mayores. Es cada vez más difícil lograr el objetivo de correr rápido en pequeños pasos. e iterar rápidamente También hay problemas como 65535 y llamadas mutuas entre aplicaciones, que nacieron de la aplicación de tecnología de complemento. Sin tecnología de complementos, aplicaciones como Meituan y Taobao que integran una gran cantidad de "aplicaciones" podrían tener un tamaño de varios gigabytes.
Por lo tanto, el desarrollo móvil iOS actual no conoce la capa inferior, el algoritmo, el complemento y la componenteización, y más del 80% de las entrevistas no se pueden aprobar.
El jefe de Alibaba P8 se quedaba despierto hasta la una o dos de la madrugada todos los días y pasaba casi medio mes en seguridad inversa de iOS, algoritmos, diseño de arquitectura, subprocesos múltiples, avance de red y la capa inferior. , audio y video, Flutter, etc., y los marcos de código abierto de terceros de iOS están integrados en un conjunto de notas de conocimiento del sistema en PDF, ¡que tiene 1042 páginas! Creo que después de leer este documento, tendrá una comprensión más profunda y sistemática de estos marcos de terceros de iOS.
Los principios subyacentes siguen siendo, sin duda, una capacidad imprescindible para el desarrollo de iOS.
Los principios subyacentes de los objetos
Algunas entrevistas relacionadas con los punteros y la memoria
Referencias débiles débiles
Los principios de los bloques
Principio de AutoreleasePool
Principio de Runloop
Reenvío de mensajes relacionado con el tiempo de ejecución
¡La optimización del rendimiento y las capacidades arquitectónicas son cada vez más exigentes que antes!
①Optimización del rendimiento: optimización de tableView -> principio de interfaz atascada -> análisis del rendimiento de la aplicación -> optimización del proyecto
②Arquitectura: patrones de diseño, métodos de desacoplamiento, componenteización....
Las capacidades de los algoritmos de estructura de datos también representan una proporción relativamente grande. Generalmente, las grandes empresas realizarán algunos exámenes escritos: aunque los requisitos para los algoritmos de estructura de datos no son muy estrictos para aquellos que no ocupan puestos centrales, también habrá algunas preguntas generales sobre algoritmos y estructuras de datos
Clasificación
Diseño de estructura de datos
Discusión sobre la complejidad
Algunas preguntas alucinantes sobre algoritmos
.....
iOS actual La razón por la que el desarrollo encuentra cuellos de botella es porque hay muy pocas reservas en el frente y no pasa nada. En una era donde la tecnología se actualiza constantemente, espero que puedas calmarte y seguir el ritmo de los tiempos, y reservar constantemente habilidades para sumar puntos.
Aquí recomiendo aprender: ¡dirección visual! Ya sea una transmisión en vivo o un video corto, el procesamiento de gráficos e imágenes se ha convertido en una habilidad inevitable con el advenimiento de la era 5G en el futuro, ¡esta tecnología definitivamente se convertirá en el punto de diferencia entre usted y otros desarrolladores!
En términos de rendimiento, el rendimiento de Flutter es teóricamente el mejor, seguido de RN y Weex, y ambos son mejores que la solución WebView tradicional.
Desde la perspectiva de la comunidad y la comunidad. En términos de actividad, RN y Flutter son sin duda los más activos
Resumen: según la situación actual del mercado, personalmente recomiendo a todos que aprendan: Flutter
El propósito de aprender ingeniería inversa de iOS
Todo el mundo sabe que el salario es alto. . . .
1 Aprende el diseño de Apps excelentes
Cuando ves que una App tiene algunas funciones muy útiles, quieres aprender o también necesitas implementar las mismas funciones, para que puedas puede revertir su implementación y analizar su proceso de implementación
2 Fortalezca mejor la seguridad de su propia aplicación
Cuando esté familiarizado con la ingeniería inversa de iOS, estará mejor preparado al desarrollar la suya propia Aplicación en el futuro, qué lugares tienen más probabilidades de ser interrumpidos por otros, para evitarlos de manera efectiva
3. Aprenda algunas implementaciones de bibliotecas de código no abierto en el sistema iOS.
Por ejemplo, la implementación de nuestro UIKit de uso común, etc.
4 Con una perspectiva más amplia, el desarrollo de iOS ya no se limitará a dibujar interfaces, datos y operaciones de red
La ingeniería inversa de iOS le permite comprender la capa inferior general de todo el sistema iOS, el kernel, el proceso de carga del programa, el proceso de compilación de la aplicación, etc.
5. Puede cambiar algunas funciones de la aplicación existente
Vaya a los anuncios de la aplicación iQiyi, tome sobres rojos en WeChat, etc. (Por supuesto, este aprendizaje es posible, pero no puede usarse como beneficio comercial, es ilegal)