La programación en C requiere una mentalidad diferente a la programación en C # o Java. Hoy en día, el desarrollo web típico casi nunca se realiza en C simple, por lo que supongo que va a trabajar en algún tipo de programación orientada al sistema o desarrollo de UI con GTK o un kit de herramientas similar.
La mayor diferencia entre C por un lado y C # y Java por el otro es que en C tienes que ocuparte de la memoria (y otros recursos del sistema) tú mismo. Deberá realizar un seguimiento de los fragmentos de memoria que asignó y liberarlos cuando sea apropiado, y tendrá que lidiar con los punteros y su aritmética.
Además, C, no es del todo seguro. Cuatro bytes de memoria pueden ser un “int largo”, pero la próxima vez los mismos cuatro bytes pueden interpretarse como una matriz de cuatro bytes o incluso algo completamente diferente, dependiendo de lo que haya en la memoria antes o después de estos cuatro bytes. Esto le da mucho poder sobre el comportamiento de su código, pero requiere que sea extremadamente cauteloso sobre lo que señalan sus variables de puntero.
- ¿Cuáles son los campos en informática que no requieren mucha programación?
- ¿Qué es bueno en NIT Kurukshetra: civil o producciones?
- Cómo dominar las estructuras de datos y los algoritmos sin experiencia en informática, para conseguir un trabajo en las mejores empresas tecnológicas del mundo
- ¿Cuál es la diferencia entre la ciencia de TI y la informática? Quiero ser programador y quiero crear juegos. ¿Cuál debo elegir para mi título? ¿Cuál me ayudará más?
- ¿Debería unirme a Cognizant o Wipro como un recién graduado de B.Tech en CSE? ¿Por qué?
En mi opinión, es mucho más difícil cambiar de un lenguaje administrado como Java o C # a C que al revés. Aunque la sintaxis externa de estos lenguajes es bastante similar, la forma en que se ejecuta su código en el hardware es diferente. Debe estar dispuesto y preparado para pensar en términos de hardware, memoria, descriptores de archivos y otros recursos del sistema. Pronto descubrirá que la programación no se trata tanto de un lenguaje específico, sino de conceptos de programación, que pueden ser diferentes o similares independientemente del lenguaje de programación utilizado.