VENTAJAS Y DESVENTAJAS DE C Y C++
FACULTAD DE INGENIERÌA
ESCUELA DE INGENIERÌA CIVIL
NOMBRE: XIMENA YEROVI
CURSO: TERCER SEMESTRE “A”
MATERIA: INFORMÀTICA II
FECHA: 10/04/2013
DOCENTE: ING.ALEJANDRA POZ
C
C++
VENTAJAS
* Un núcleo del lenguaje simple, con funcionalidades añadidas importantes, como funciones matemáticas y de manejo dearchivos, 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 preprocesado, el preprocesador de C, para tareas como definir macros e incluirmú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 de programación orientado a objetos.
- Lenguaje muy didáctico,gracias a este lenguaje puedes aprender muchos otros lenguajes con gran facilidad, como C#, Java, Visual Basic, Javascript, PHP, entre otros.
- Es muy potente en lo que se refiere a creación de sistemas complejos, un lenguaje muy robusto.
- Permite elaborar aplicaciones sencillas como un "Hello World!" hasta sistemas operativos y mucho más, todo eso dependiendo del manejo del lenguaje.
-Actualmente, puede compilar y ejecutar código de C, ya viene con librerías para realizar esta labor.
- Es un lenguaje muy empleado, existen muchos tutoriales en línea, libros, códigos fuentes abiertos... hay material de sobra y basta para aprender lo necesario y mucho más con este lenguaje.
- Existen muchos algoritmos cuyo pseudocódigo se encuentra ya desarrollado en C++, de manera que puedestomarlo y amoldarlo a tu solución (porque el que veas un fragmento de código no asegura que sea correcto al 100%).
DESVENTAJAS
* Recolección de basura nativa, sin embargo se encuentran a tal efecto bibliotecas como la "libgc" desarrollada por Sun Microsystems, o el Recolector de basura de Boehm.
* Soporte para programación orientada a objetos, aunque la implementación original de C++ fueun preprocesador que traducía código fuente de C++ a C.
* Encapsulación.
* Funciones anidadas, aunque GCC tiene esta característica como extensión.
* Polimorfismo en tiempo de código en forma de sobrecarga, sobrecarga de operadores y sólo dispone de un soporte rudimentario para la programación genérica.
* Soporte nativo para programación multihilo y redes decomputadores.
- Uso de DLLs (librerías dinámicas) muy complejo. Java y .Net han evolucionado estos conceptos manipulando las DLLs mediante los frameworks que proveen. En cambio, en C++ el desarrollador debe encargarse de cargar y liberar de memoria estas librerías, y correr los riesgos por el manejo de esta memoria.
- Elaborar un sistema en C++ es como construir un rascacielos: tiene buen soporte y esrobusto, pero si existen errores en los pisos inferiores toda la parte superior se viene abajo terriblemente.
- Manejo de punteros y memoria respecto a ello. Claro, esta también es una gran ventaja porque permite un mejor control de la memoria y una buena administración de recursos de computadora, pero la inexperiencia de los desarrolladores o la pérdida de costumbre con este tipo de...
Regístrate para leer el documento completo.