Qué aprender para convertirse en programador
1. Aprenda la instalación del sistema Linux, los comandos comunes y la instalación de aplicaciones.
2. Para aprender a programar en C en Linux, debe aprender este libro "Programación avanzada en entorno UNIX" y "Programación de redes UNIX", escrito por Richard Stevens. La mayoría de los expertos en C han estudiado "C y punteros". , "Defectos y trampas de C", "Guía de programación C/C de alta calidad", "Programación experta en C", "El lenguaje de programación C"
3. programas ¡Los desarrolladores deben aprender las estructuras de datos!
4. La mayoría de los desarrolladores de bajo nivel deben aprender: ¡los desarrolladores integrados deben aprender los principios de las microcomputadoras!
5. persona Es necesario que los desarrolladores de software comprendan y operen el hardware, ¡porque no es realista comenzar con ARM desde el principio!
6.
7. Es necesario aprender circuitos digitales; de lo contrario, no sabrás leer esquemas cuando realices un desarrollo de bajo nivel. Al menos debes comprenderlos y comenzar.
8. Desarrollo de aplicaciones ARMLinux (el requisito previo es una placa de desarrollo)
9. Para realizar un desarrollo de bajo nivel, debe saber cómo están conectados y funcionan juntos el software y el hardware. a menudo se utiliza el conocimiento de la tecnología electrónica. Esta es una de las diferencias entre expertos y principiantes.
10. Necesitas aprender a ensamblar en Linux para que puedas comprender realmente cómo se ejecuta el programa que escribes en un hardware específico. Esto es lo que diferencia a un buen jugador de un novato.
11. Se debe aprender la pila de protocolos TCP/IP, algo que todos los expertos integrados deben dominar. Esta es la tercera diferencia entre expertos y novatos.
12. Con estas cosas, obtener el controlador de Linux ya no es pan comido. Necesita aprender el código fuente del kernel de Linux y el diseño del controlador de Linux.
13. Tienes que aprender tecnología de decodificación de audio y vídeo.
14. Puedes participar en el desarrollo y diseño de varios circuitos integrados y gestores de arranque.
15. Diseñar y desarrollar nuevos productos y nuevas tecnologías por sí mismo.