miércoles, 5 de diciembre de 2018

EL ORIGEN DE C++ COMO LENGUAJE DE PROGRAMACIÓN

LENGUAJE C: 

EL ORIGEN DE C++ COMO LENGUAJE DE PROGRAMACIÓN


C es el lenguaje de programación de propósito general asociado, de modo universal, al sistema operativo UNIX. Sin embargo, la popularidad, eficacia y potencia de C, se ha producido porque este lenguajeno está prácticamente asociado a ningún sistema operativo, ni a ninguna máquina, en especial. Ésta esla razón fundamental, por la cual C, es conocido como el lenguaje de programación de sistemas, por excelencia.

C nació realmente en 1978, con la publicación de The C Programming Languaje, por Brian Kernighan y Dennis Ritchie (Prentice Hall, 1978). Desde su nacimiento, C fue creciendo en popularidad y los sucesivos cambios en el lenguaje a lo largo de los años junto a la creación de compiladores por grupos no involucrados en su diseño, hicieron necesario pensar en la estandarización de la definición del lenguaje C.

Así, en 1983, el American National Standard Institute (ANSI), una organización internacional de estandarización, creó un comité (el denominado X3J11) cuya tarea fundamental consistía en hacer “una definición no ambigua del lenguaje C, e independiente de la máquina”. Había nacido el estándar ANSI del lenguaje C. Con esta definición de C se asegura que cualquier fabricante de software que vende un compilador ANSI C incorpora todas las características del lenguaje, especificadas por el estándar. Esto significa también que los programadores que escriban programas en C estándar tendrán la seguridad de que correrán sus modificaciones en cualquier sistema que tenga un compilador C.

C es un  lenguaje de alto nivel, que permite programar con instrucciones de lenguaje de propósito general. También, C se define como un lenguaje de programación estructurado de propósito general; aunque en su diseño también primó el hecho que fuera especificado como un lenguaje de programación de Sistemas, lo que proporciona una enorme cantidad de potencia y flexibilidad.

El estándar ANSI C formaliza construcciones no propuestas en la primera versión de C, en especial, asignación de estructuras y enumeraciones. Entre otras aportaciones, se definió esencialmente, una nueva forma de declaración de funciones (prototipos). Pero es, esencialmente, la biblioteca estándar de funciones, otra de las grandes aportaciones.

Hoy, en el siglo XXI, C sigue siendo uno de los lenguajes de programación más utilizados en la industria del software, así como en institutos tecnológicos, escuelas de ingeniería y universidades. Prácticamente todos los fabricantes de sistemas operativos, Windows, UNIX, Linux, MacOS, Solaris..., soportan diferentes tipos de compiladores de lenguaje C y en muchas ocasiones distribuciones gratuitas bajo cualquiera de los sistemas operativos citados. Todos los compiladores de C++ pueden ejecutar programas escritos en lenguaje C, preferentemente si cumplen el estándar ANSI C.

C versus C++


C++ es una extensión de C con características más potentes. Estrictamente hablando, es un superconjunto de C. Al igual que sucede con Java y C# que son superconjuntos de C++. El ANSI C estándar no sólo define el lenguaje C sino que también define una biblioteca de C estándar que las implementaciones de ANSI C deben soportar. C++ también utiliza esa biblioteca, además de su propia biblioteca estándar de clases. Hace unos años se revisó el nuevo estándar de C, denominado C99 que fue adoptado por ISO en 1999 y por ANSI en 2000. El estándar de C ha añadido algunas características que soportan algunos compiladores de C++.

Por estas razones casi todas las sentencias de C también tienen una sentencia correcta en C++, pero no es cierto a la inversa. Los elementos más importantes añadidos a C para crear clases C, objetos y programación orientada a objetos (C++ fue llamado originalmente “C con clases”). Sin embargo, a C++ se han añadido nuevas características, incluyendo un enfoque mejorado de la entrada/salida (E/S) y un nuevo medio para escribir comentarios.

De hecho las diferencias prácticas entre C y C+ son mucho mayores que lo que se pueda pensar. Aunque se puede escribir un programa en C++ similar a un programa en C, raramente se hace. C++ proporciona a los programadores las nuevas características de C++ y enfatiza a utilizar estas características, pero también se suele utilizar en partes de los programas las características específicas y potentes de C. Si usted ya conoce C, muchas propiedades le serán familiares y aprenderá de un modo mucho más rápido y eficiente, pero encontrará muchas propiedades nuevas y muy potentes que le harán disfrutar con este nuevo lenguaje y construir sus programas aprovechando la potencia de orientación a objetos y genérica de C++.

No hay comentarios:

Publicar un comentario