• Diferencias entre lenguajes 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>metaprogramació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, por las típicas aplicaciones de escritorio o un Office u OpenOffice, un reproductor multimedia, un explorador web (Internet Explorer, Mozilla, Firefox…), un cliente eMule, un cliente Torrent.

    C# es un invento de Microsoft (lenguaje propietario) que mezcla las características básicas de C++ (no las avanzadas) simplificándolas al estilo Java y ofreciendo un framework. El problema es que es .Net, y deja de ser código nativo/portable. Eso sí, el framework provee bastante facilidad de programación de tareas comunes, al igual que Java. Por ello se genera el debate ¿Java o C#? Su funcionalidad viene a ser parecida. .Net es más nativo y Java más virtual.


    Deja una respuesta