Lenguaje de ProgramaciónProgramación y desarrollo de software

El lenguaje C: origen, diseño y usos

El lenguaje de programación C es uno de los más influyentes y utilizados en la historia de la informática. Surgió en la década de 1970 como una herramienta para desarrollar el sistema operativo Unix, y desde entonces se ha extendido a múltiples plataformas y dominios de aplicación. Su éxito se debe a su combinación de simplicidad, eficiencia, portabilidad y expresividad, que lo convierten en un lenguaje versátil y potente.

En este artículo se presenta el origen, el diseño y los usos del lenguaje de programación C, con el objetivo de ofrecer una visión general y comprensiva de este lenguaje fundamental para la ciencia y la ingeniería de la computación.

Lenguaje C

Origen del lenguaje C

El lenguaje C fue desarrollado por Dennis Ritchie y Ken Thompson en AT&T Bell Laboratories como parte del proyecto de desarrollo del sistema operativo Unix.
Unix era un sistema operativo experimental basado en el concepto de que “todo es un archivo” y pretendía ser simple, elegante y portátil entre diferentes tipos de computadoras.
El primer prototipo de Unix fue escrito en lenguaje ensamblador para el PDP-7, una computadora de 18 bits con poca memoria y potencia de procesamiento.
Sin embargo, este lenguaje era muy engorroso y dependía de la máquina, lo que dificultaba la programación y la portabilidad del sistema.
Entonces Thompson decidió inspirarse en el lenguaje BCPL y desarrollar un lenguaje de alto nivel que sería más fácil de escribir y portar a otras máquinas.
Así nació la lengua B.
Se utilizó el lenguaje B para reescribir el kernel Unix en el PDP-11, una computadora de 16 bits con más recursos.
Sin embargo, B también tenía las siguientes limitaciones: B.
Tipos de datos faltantes, mala precisión numérica y mala gestión de la memoria.
Por lo tanto, Ritchie comenzó a mejorar y ampliar el lenguaje B agregando características como tipos de datos, estructuras, punteros, funciones y declaraciones.
Así nació el lenguaje C y se utilizó para reescribir el núcleo de Unix y otras utilidades del sistema.
El lenguaje C rápidamente se hizo popular entre los programadores debido a su simplicidad, eficiencia y portabilidad.
También se benefició de la popularidad de Unix, que se convirtió en el sistema operativo preferido para la investigación y la enseñanza de la informática.
El lenguaje C también se utiliza para crear otros sistemas operativos como Linux, Windows y MacOS, y para desarrollar todo tipo de aplicaciones, desde sistemas integrados hasta videojuegos.

Origen del lenguaje C

 Diseño del lenguaje C

El lenguaje C está diseñado como un lenguaje de propósito general, adecuado para programar sistemas operativos y aplicaciones.

Esto se basa en los siguientes principios: debido a que es un lenguaje compilado, el código fuente se convierte a código de máquina antes de la ejecución, lo que mejora el rendimiento y la eficiencia del programa.

– Como lenguaje de bajo nivel, puede acceder y manipular la memoria y el hardware de la computadora directamente, brindando a los programadores mayor control y flexibilidad pero también aumentando el riesgo de errores y colgar.

– Como lenguaje estructurado, se basa en dividir los programas en bloques de código llamados funciones, permitiendo la reutilización y la modularidad, facilitando la organización y el mantenimiento del código.

-Este es un lenguaje imperativo, por lo que se basa en la ejecución secuencial de instrucciones que cambian el estado del programa, haciendo el código más claro y directo, pero también más riguroso y menos expresivo.

– Debe ser un lenguaje de propósito general.

-Esto significa que se puede utilizar para crear todo tipo de aplicaciones, desde sistemas operativos hasta videojuegos, pasando por aplicaciones de escritorio, web y móviles.

Diseño del lenguaje C

Características del lenguaje C

El lenguaje C se caracteriza por una sintaxis simple, concisa y uniforme y consta de los siguientes elementos:

– Comentario.

– Identificador.


Estas son partes de código que se ignoran durante la compilación y son útiles para explicar y documentar su programa.
Estos se pueden escribir de dos maneras.
Puede utilizar /* y */ para separar comentarios de varias líneas o // para escribir comentarios de una sola línea.

Un nombre utilizado para referirse a una variable, constante, función u otro elemento del programa.
Debe comenzar con una letra o un guión bajo y puede contener letras, números y guiones bajos.
No pueden ponerse de acuerdo sobre palabras reservadas en un idioma que tengan significados especiales, como por ejemplo: Ejemplos: int, para, retorno.

Tipo de datos.
Una categoría que define el tamaño, formato y rango de valores que una variable o constante puede almacenar.
Los tipos de datos básicos del lenguaje C son char (carácter), int (entero), float (decimal), double (decimal de doble precisión) y void (void).


– Variables.
Un área de memoria para almacenar valores que pueden cambiar durante la ejecución del programa.
Deben declararse con un tipo de datos y un identificador antes de poder usarse.
Ejemplo: int x; Declara una variable entera llamada x.


– Constante.
Un valor que no cambia durante la ejecución del programa.
Estos se pueden definir de dos maneras.
Una es usar el símbolo #define para asignar un nombre a un valor y la otra es usar la palabra clave const para declarar una variable inmutable.
Ejemplo: #define PI 3.
14;Define una constante llamada PI con el valor 3.14

Expresión.
Una combinación de variables, constantes, operadores y funciones que se evalúan para producir un resultado.
Los operadores son símbolos que se utilizan para realizar operaciones aritméticas, lógicas, relacionales o de asignación.
Ejemplo: x + y * z; es una expresión que suma x al producto de y y z.


– Una declaración que es una instrucción ejecutada dentro de un programa.
Se pueden dividir en las siguientes categorías: oraciones simples que constan de una expresión como por ejemplo: B.
x = x + 1, enunciado compuesto.
Consta de múltiples declaraciones simples encerradas entre llaves, como {x = x + 1; y = y + 2;};También incluye declaraciones de control que cambian el flujo normal de ejecución, como por ejemplo: Por ejemplo, si, si no, cambiar, por, mientras, hacer-mientras, etc.


– Función.
Un bloque de código que realiza una tarea específica y se puede llamar desde cualquier parte del programa.
Deben definirse antes de su uso, especificando el tipo de datos devueltos, un identificador y los parámetros que aceptan.
Ejemplo: int sum(int a, int b);Define una función que devuelve un número entero y acepta dos números enteros como parámetros.

Caracteristicas del lenguaje C

Usos del lenguaje C

El lenguaje C se puede utilizar para crear todo tipo de aplicaciones debido a su eficiencia, portabilidad y versatilidad.
Las aplicaciones más comunes y relevantes del lenguaje C son:

Sistemas operativos: C es el lenguaje principal para desarrollar sistemas operativos, como Unix, Linux, Windows o MacOS, para permitir el acceso y el control del hardware de la computadora.
Administre computadoras, memoria, procesos y cree interfaces de usuario.
– Controladores de dispositivos: C es el lenguaje ideal para programar controladores de dispositivos, programas que permiten que el sistema operativo se comunique con hardware como teclados, ratones, pantallas, impresoras y cámaras.
– Sistemas integrados: C es el lenguaje más utilizado para programar sistemas integrados, que son dispositivos electrónicos.

Ventajas y desventajas del lenguaje C

El lenguaje C tiene algunas ventajas y desventajas que lo hacen más o menos adecuado para diferentes tipos de proyectos.

Estas ventajas y desventajas son:

– Ventajas:

-Es rápido y eficiente que puede generar programas que hacen un uso óptimo de los recursos informáticos.

-Es un lenguaje portátil que puede ejecutarse en casi cualquier plataforma y arquitectura y casi no requiere cambios en el código original.

-Brinda a los programadores control total sobre la memoria y el hardware para adaptarse a diferentes necesidades y estilos de programación.

-Una gran comunidad de usuarios y desarrolladores que brindan soporte, documentación y herramientas.

-Proporciona la inspiración y la base para otros lenguajes más modernos y populares como C, Java, Python y C#.

-Desventaja:

-Es un lenguaje complejo y difícil de aprender que requiere una buena comprensión de conceptos como punteros, estructuras, funciones y manejo de memoria.

-Es de bajo nivel que expone a los programadores a fallos y errores como desbordamientos de memoria, punteros colgantes, pérdidas de memoria y acceso no autorizado. Debido a que es un lenguaje estricto y no expresivo, los programadores deben seguir estrictas reglas de sintaxis y estilo, y no hay muchas oportunidades para la programación orientada a objetos, funcional o de propósito general.

-Es un lenguaje inseguro que no proporciona protección ni mecanismos de verificación de tipos y permite a los programadores escribir código que puede comprometer la integridad o confidencialidad de datos o sistemas.

Autor: Yeiron Stiven Saray Delgado

Editor: Carlos Iván Pinzón Romero

Código: UCPAG3 -1

Universidad: Universidad Central

Fuentes:

-https://i0.wp.com/imgs.hipertextual.com/wp-content/uploads/2011/10/nerdpol-ken-den.jpg?fit=1279%2C1024&quality=50&strip=all&ssl=1

-https://disenowebakus.net/imagenes/articulos/lenguaje-de-programacion-c.jpg

-https://upload.wikimedia.org/wikipedia/commons/thumb/7/74/C%C3%B3digo_en_lenguaje_C.png/256px-C%C3%B3digo_en_lenguaje_C.png

-https://www.abrirllave.com/c/images/programa-menu-de-opciones.gif

-Qué es C: Características y sintaxis | OpenWebinars. https://openwebinars.net/blog/que-es-c/.

-¿Qué es el lenguaje c y usos? | Deusto Formación. https://www.deustoformacion.com/blog/programacion-diseno-web/que-es-lenguaje-c.

-✅ ¿Qué es LENGUAJE C? 10 Cosas Importantes 🚀 [5 Minutos de Poder]
https://youtu.be/usiPKYATzlo?feature=shared