LENGUAJE C
C es un lenguaje de programación de propósito general que
ofrece economía sintáctica, control de flujo y estructuras sencillas y un buen conjunto de
operadores. No es un lenguaje de muy alto nivel y más bien un lenguaje pequeño, sencillo y
no está especializado en ningún tipo de aplicación. Esto lo hace un lenguaje potente, con un
campo de aplicación ilimitado y, sobre todo, se aprende rápidamente. En poco tiempo, un
programador puede utilizar la totalidad del lenguaje.
C es un lenguaje de programación originalmente desarrollado por Dennis
2
Ritchie entre 1969 y 1972 en los Laboratorios Bell, como evolución del anterior lenguaje B,
a su vez basado en BCPL.
Al igual que B, es un lenguaje orientado a la implementación de Sistemas operativos,
concretamente Unix. C es apreciado por la eficiencia del código que produce y es el lenguaje
de programación más popular para crear software de sistemas, aunque también se utiliza para
crear aplicaciones.
Se trata de un lenguaje de tipos de datos estáticos, débilmente tipificado, de medio nivel, ya
que dispone de las estructuras típicas de los lenguajes de alto nivel pero, a su vez, dispone de
construcciones del lenguaje que permiten un control a muy bajo nivel. Los compiladores
suelen ofrecer extensiones al lenguaje que posibilitan mezclar código en ensamblador con
código C o acceder directamente a memoria o dispositivos periféricos.
Núcleo del lenguaje simple, con funcionalidades añadidas importantes, como
funciones matemáticas y de manejo de archivos, proporcionadas por bibliotecas.
Es un lenguaje muy flexible que permite programar con múltiples estilos. Uno de los
más empleados es el estructurado "no llevado al extremo" (permitiendo ciertas
licencias de ruptura).
Un sistema de tipos que impide operaciones sin sentido.
Usa un lenguaje de pre-procesado, el preprocesador de C, para tareas como
definir macros e incluir múltiples archivos de código fuente.
Acceso a memoria de bajo nivel mediante el uso de punteros.
Interrupciones al procesador con uniones.
Un conjunto reducido de palabras clave.
Por defecto, el paso de parámetros a una función se realiza por valor. El paso por
referencia se consigue pasando explícitamente a las funciones las direcciones de
memoria de dichos parámetros.
Punteros a funciones y variables estáticas, que permiten una forma rudimentaria
de encapsulado y polimorfismo.
Tipos de datos agregados ( struct ) que permiten que datos relacionados (como un
empleado, que tiene un id, un nombre y un salario) se combinen y se manipulen como
un todo (en una única variable "empleado").
LENGUAJE C++
C++ es un lenguaje de programación diseñado a mediados de los años 1980 por Bjarne
Stroustrup. La intención de su creación fue el extender al lenguaje de
programación C mecanismos que permiten la manipulación de objetos. En ese sentido, desde
el punto de vista de los lenguajes orientados a objetos, el C++ es un lenguaje híbrido.
Posteriormente se añadieron facilidades de programación genérica, que se sumaron a los
paradigmas de programación estructurada y programación orientada a objetos. Por esto se
suele decir que el C++ es un lenguaje de programación multi-paradigma.
Actualmente existe un estándar, denominado ISO C++, al que se han adherido la mayoría de
los fabricantes de compiladores más modernos. Existen también algunos intérpretes, tales
como ROOT.
Una particularidad del C++ es la posibilidad de redefinir los operadores, y de poder crear
nuevos tipos que se comporten como tipos fundamentales.
El nombre "C++" fue propuesto por Rick Mascitti en el año 1983, cuando el lenguaje fue
utilizado por primera vez fuera de un laboratorio científico. Antes se había usado el nombre
"C con clases". En C++, la expresión "C++" significa "incremento de C" y se refiere a que
C++ es una extensión de C.
DIFERENCIA ENTRE EL LENGUAJE C Y
LENGUAJE C++
La gran diferencia entre estos dos tipos de lenguajes de programación, es que, el lenguaje C
está orientado a la implementación de sistemas operativos, mientras que el lenguaje de
programación de C++, es un lenguaje orientado a objetos, es decir, un lenguaje de
programación que permita la manipulación de mecanismos.
DIFERENCIAS DE TIPO DE C++ RESPECTO A C
C es un lenguaje libre estandarizado por ISO MUY PEQUEÑO que admite programación
estructurada (la de toda la vida), nada más. Útil en programación de microchips, sistemas
operativos, drivers y programación web... Poco más.
C++ es un lenguaje libre estandarizado por ISO MUY GRANDE, que admite: Programación
estructurada (la de toda la vida), la totalidad de la POO (objetos, herencia simple, herencia
múltiple, polimorfismo, upcasting, downcasting, RTTI, interfaces, clases abstractas, clases
amigas, operadores, sobrecarga... y mil cosas más avanzadas), programación genérica
(plantillas, STL, conceptos de contenedores, estructuras de datos genéricas, <b>Meta
programación</b>... es una programación que no dispone ningún otro lenguaje mayoritario
por el momento)... y otras características más avanzadas como los punteros inteligentes,
programación lambda, programación "física"... También se usa como programación por
eventos (MFC, Qt, Gtk y otras GUIs). Se usa para cualquier cosa, desde sistemas operativos
hasta los juegos 3D de última generación pasando por servidores, pasando por las típicas
aplicaciones de escritorio o un Office u Open Office, un reproductor WinAMP y Windows
Media Player, un explorador web (Internet Explorer, Mozilla, Firefox...), un cliente eMule,
un cliente Torrent.
En C cuando una función no toma parámetros tienes que añadir el voit, en cambio en C++
esto es opcional.
En C tienes que declarar las variables al principio del código, en cambio en C++ puedes
declararlas de forma local (incluso dentro de sentencias).
Y la gran diferencia, C++ es un lenguaje de programación orientado a objetos y C no lo es.
LIBRERIAS
¿Qué son exactamente las librerías?
En C++, se conoce como librerías (o bibliotecas) a cierto tipo de archivos que podemos
importar o incluir en nuestro programa. Estos archivos contienen las especificaciones de
diferentes funcionalidades ya construidas y utilizables que podremos agregar a nuestro
programa, como por ejemplo leer del teclado o mostrar algo por pantalla entre muchas otras
más.
Al poder incluir estas librerías con definiciones de diferentes funcionalidades podremos
ahorrarnos gran cantidad de cosas, imaginemos por ejemplo que cada vez que necesitemos
leer por teclado, debamos entonces crear una función que lo haga (algo realmente complejo),
al poder contar con las librerías en C++, podremos hacer uso de una gran variedad de
funciones que nos facilitarán la vida y aumentarán el modularidad de nuestros códigos.
Las librerías no son únicamente archivos externos creados por otros, también es posible crear
nuestras propias librerías y utilizarlas en nuestros programas. Las librerías pueden tener
varias extensiones diferentes, las más comunes son: lib,.bpl,. a, .dll, .h y algunas más ya no
tan comunes.
En conclusión: Las librearías son archivos (no siempre externos) que nos permiten llevar a
cabo diferentes tareas sin necesidad de preocuparnos por cómo se hacen sino simplemente
entender cómo usarlas. Las librearías en C++ permiten hacer nuestros programas más
modulares y reutilizables, facilitando además crear programas con funcionalidades bastante
complejas en unas pocas líneas de código.
SOFTWARE’S DE APLICACIÓN
JAVA
C
C++
PYTHON
C#
VISUAL [Link]
JAVASCRIPT
PERL
SWIFF
MATLAB
KIVY
SQLITE
MANGODB
DELPHI/OBJECT PASCAL
ASSEMBLY LENGUAGE (ASL)