Anuncio

En 2016, C fue el noveno lenguaje más activo en GitHub con 202k solicitudes de extracción en el año. Compare eso con los tres idiomas principales: JavaScript con 1.604k solicitudes de extracción, Java con 763k solicitudes de extracción y Python con 744 solicitudes de extracción. Ruby, PHP, C ++ y CSS también vencieron a C.

A primera vista, puede parecer que C ha quedado en el polvo por lenguajes más nuevos, frescos y emocionantes: C es 45 años, después de todo, pero GitHub no es exactamente la imagen más precisa ¿Qué es Git y por qué debería usar el control de versiones si es desarrollador?Como desarrolladores web, muchas veces tendemos a trabajar en sitios de desarrollo local y luego cargamos todo cuando terminamos. Esto está bien cuando solo eres tú y los cambios son pequeños, ... Lee mas de la industria del software. GitHub tiene un enorme sesgo hacia el código abierto y la tendencia.

C no es un lenguaje muerto. De hecho, IEEE Spectrum revista clasificó como el idioma número 2 en 2017

instagram viewer
por delante de Java, C # y JavaScript. Si tuviera que aprender C este año, sería no ser una pérdida de tiempo o energía Aquí hay cinco razones por las cuales.

1. Comprensión más profunda de las computadoras

Es posible que haya escuchado que C es un "lenguaje de nivel inferior". En el contexto de la programación, el "nivel" es una descripción de qué tan cerca está del conjunto de instrucciones nativo de la computadora. Cuanto más bajo sea el nivel, más cerca estará de escribir el código de la máquina. Cuanto más alto sea el nivel, más abstracción será realizada por el lenguaje para alejarlo de escribir código de máquina.

C es un lenguaje de nivel inferior con cierta abstracción. Puede escribir código que esté bastante cerca del hardware y manipular directamente la memoria, mientras que en un lenguaje de nivel superior como Java, el lenguaje mismo maneja la memoria a través de un recolector de basura.

¿Por qué vale la pena programar en C?
Crédito de imagen: Casimiro PT a través de Shutterstock

Si bien esto es parte de lo que hace que C sea difícil de aprender, también es la razón por la cual los programadores de C tienden a estar más en sintonía con el funcionamiento de las computadoras. Para escribir un buen código C, debe pensar como piensa una computadora: gestión de memoria, flujos de entrada / salida, orden de bytes, etc.

Existen lenguajes de nivel más bajo que C (por ejemplo, Ensamblaje), pero C tiene el nivel más bajo que desea. Conserva la mayor parte del poder y el control de los lenguajes de nivel inferior, pero se abstrae lo suficiente para un código legible por humanos que no te hará arrancarte los ojos.

2. Elija otros idiomas más fácilmente

A algunos programadores les gusta decir que "una vez que conoces un lenguaje de programación, prácticamente los conoces a todos". Aunque es un sentimiento alentador, no es del todo cierto, a menos que aprenda C.

La cuestión es que pasar de un idioma a otro es más fácil cuando te mueves en abstracción. Pasar de un lenguaje de nivel inferior como C a un lenguaje de nivel superior como Python es bastante fácil porque Python te sostiene más la mano. ¿Pero yendo de Python a C? No tan fácil.

Por qué vale la pena programar en C Aprender a programar más idiomas
Crédito de imagen: Sashkin a través de Shutterstock

O considere otro ejemplo. C # es un primer idioma popular para los novatos de hoy, especialmente para aquellos que desean ingresar al desarrollo de juegos (porque el querido motor de Unity usa C # 5 herramientas de software de desarrollo de juegos gratis para hacer tus propios juegosEl software de desarrollo de juegos gratuito es una excelente manera de comenzar a crear videojuegos. Hemos compilado el mejor software de juegos del mercado. Lee mas ). Pero a pesar de que el lenguaje C # es muy abstracto y más fácil de usar, los novatos a menudo se confunden porque no entienden lo que se está abstrayendo.

Al aprender C, básicamente estás aprendiendo los fundamentos de la programación moderna. Si realmente puede entender C, podrá aprender cualquier otro idioma porque casi todos los idiomas modernos tienen un nivel más alto que C.

3. Mejor apreciación de otros idiomas

El bajo nivel de C tiene un costo: complejidad y tedio.

Piense en ello como hacer un sándwich de jamón. En un lenguaje de nivel superior, puede usar un método makeSandwich ("jamón") que produce un sándwich listo para comer. En C, tendría que escribir su propia función makeSandwich () que reúne y prepara todos los ingredientes necesarios, ensambla el emparedado y luego vuelve a colocar todo.

Por qué vale la pena programar en C Aprender a programar en otros idiomas
Crédito de imagen: Zakharchuk a través de Shutterstock

Por un lado, ser capaz de controlar cada aspecto de tu sándwich es genial. Incluso puede escribir un makeSandwich () más rápido que omita ciertos pasos que no le interesan. Pero a veces solo quieres que alguien te prepare un sándwich, y la comida hecha para ti a menudo sabe mejor que la comida que hiciste tú mismo.

La mayoría de los lenguajes modernos nacieron en respuesta a deficiencias en otro idioma: C ++ en respuesta a C, Java en respuesta a C ++, C # en respuesta a Java, etc. Al aprender C, puede comprender mejor por qué ciertos idiomas están diseñados de la forma en que están y apreciar mejor la comodidad que ofrecen los lenguajes de nivel superior.

4. Proyectos y aplicaciones no convencionales

La mayoría de los lenguajes de programación modernos se usan para las mismas tres cosas: aplicaciones comerciales, aplicaciones web y móviles, y análisis de datos.

Los lenguajes de nivel superior son excelentes para estos porque no hay necesidad de sumergirse en los detalles esenciales de la arquitectura de la computadora. En cambio, los rápidos ciclos de desarrollo y la mano robusta reinan, dos de los principales beneficios de usar un lenguaje de nivel superior.

Por qué vale la pena programar en C Aprender aplicaciones de proyectos de programación en C
Crédito de imagen: inspirador a través de Shutterstock

Pero si desea desarrollar software que interactúe directamente con el hardware, necesitará un lenguaje de nivel inferior, y C es el más utilizado. Las aplicaciones notables incluyen sistemas operativos, lenguajes de programación y compiladores, sistemas integrados, motores de juegos, etc.

Por ejemplo, el kernel de Linux está escrito en C y Assembly. Los lenguajes populares como Python, PHP, Perl y Ruby se implementan en C. ¿Sabías que incluso C está escrito en C? Y dado que muchos sistemas embebidos tienen límites de recursos estrictos, C suele ser el lenguaje de elección porque tiene muy poca sobrecarga.

5. Mejora tus oportunidades laborales

Hay dos formas de garantizar un trabajo en la industria del software:

  1. Especializarse en puestos de alta demanda.
  2. Especializarse en puestos de baja oferta.

Posiciones de alta demanda 10 trabajos de programación de computadoras que están en demanda ahoraDado que obtener un trabajo de programación puede ser difícil en el panorama actual, considere centrarse en una de las siguientes concentraciones para mejorar sus posibilidades de éxito. Lee mas implican lenguajes modernos que se pueden usar en múltiples campos: JavaScript, Python y Java son los mejores ejemplos. Los puestos de baja oferta tienden a involucrar lenguajes arcaicos, sistemas heredados y proyectos no tan llamativos. C es popular, pero los programadores de C están disminuyendo.

Ya que la mayoría codificación de campamentos de entrenamiento Coding Boot Camp para principiantes: ¿debería tomar uno?Los campos de arranque de codificación integral proporcionan una entrada al espacio de codificación. ¡Descubra cuáles son, qué aprenderá y si es el adecuado para su viaje de programación! Lee mas y los cursos de capacitación en línea empujan a los programadores novatos hacia los lenguajes de alta demanda; en cambio, puede diferenciarse al aprender C. Esto puede abrir muchas oportunidades de trabajo que simplemente no están disponibles en los idiomas de nivel superior.

Comenzando con C

C no es fácil de aprender, especialmente si es su primer lenguaje de programación. Es por eso que recomendamos leer estos tres artículos antes de sumergirse: preguntas que debe hacerse antes de aprender a codificar, Cómo aprender a programar sin el estrésy trucos para dominar un nuevo lenguaje de programación 7 trucos útiles para dominar un nuevo lenguaje de programaciónEstá bien sentirse abrumado cuando aprende a codificar. Probablemente olvidará las cosas tan rápido como las aprenda. Estos consejos pueden ayudarlo a retener mejor toda esa información nueva. Lee mas .

Pero si te tomas en serio el aprendizaje de C, definitivamente comienza con Lenguaje de programación C, segunda edición (a menudo denominado "K&R"). Básicamente es la Biblia de programación C. Es bastante viejo, pero todo lo que contiene todavía se aplica a C hoy. Una vez que haya terminado, puede leer los cambios que ocurrieron en las revisiones de idioma C89, C99 y C11.

Si no puede pagar ese libro, comience con El libro c. Ya no se imprime, pero aún está disponible en línea en formato HTML en su totalidad.

¿Qué piensas? ¿C está desactualizado e inútil o deberían los nuevos programadores aprenderlo antes de explorar lenguajes más modernos? ¡Comparte tus pensamientos con nosotros a continuación!

Joel Lee tiene un B.S. en informática y más de seis años de experiencia profesional en redacción. Es el editor en jefe de MakeUseOf.