You are on page 1of 4

Adrin Almenar Anadn.

multiplataforma.

Desarrollo de aplicaciones

JAVA
Caractersticas:
- Simple
- Orientado a objetos.
- Tipado estticamente.
- Distribuido.
- Robusto.
- Seguro.
- De alto rendimiento.
- Portable.
Ventajas:
- Manejo automtico de la memoria. Esto ahorra SIGNIFICANTE tiempo
de programacin.
- Lenguaje Multi-plataforma: El cdigo que escrito en java es ledo por
un intrprete, por lo que su programa andar en cualquier
plataforma.
- Programacin Orientada a Objetos: Paradigma muy utilizado hoy en
dia que facilita y organiza mucho la programacin.
- Puede correr en el explorador y en dispositivos mviles.
- Sintaxis similar a C/C++, pero ms simple.
- Fcil de aprender.
- GRATIS
Desventajas:
- Menos Eficiente, comparado a C/C++.
- Requiere un intrprete.
- Algunas implementaciones y libreras pueden tener cdigo rebuscado.
- Una mala implementacin de un programa en java, puede resultar en
algo muy lento.
- Algunas herramientas tienen un costo adicional.

C ++

Adrin Almenar Anadn.


multiplataforma.

Desarrollo de aplicaciones

Caractersticas:
- Tiene un conjunto completo de instrucciones de control.
- Permite la agrupacin de instrucciones.
- Incluye el concepto de puntero (variable que contiene la direccin de
otra variable).
- Los argumentos de las funciones se transfieren por su valor.
- Permite la separacin de un programa en mdulos que admiten
compilacin independiente.
- Programacin de bajo nivel (nivel bit).
Ventajas:
- Lenguaje de programacin orientado a objetos.
- Lenguaje muy didctico, gracias a este lenguaje puedes aprender
muchos otros lenguajes con gran facilidad.
- Es muy potente en lo que se refiere a creacin de sistemas
complejos, un lenguaje muy robusto.
- Permite elaborar aplicaciones sencillas.
- Actualmente, puede compilar y ejecutar cdigo de C, ya viene con
libreras para realizar esta labor.
- Es un lenguaje muy empleado.
- Existen muchos algoritmos cuyo pseudocdigo se encuentra ya
desarrollado en C++, de manera que puedes tomarlo y amoldarlo a
tu solucin.
Desventajas:
- Uso de DLLs (libreras dinmicas) muy complejo.
- Manejo de punteros y memoria respecto a ello. Claro, esta tambin es
una gran ventaja porque permite un mejor control de la memoria y
una buena administracin de recursos de computadora, pero la
inexperiencia de los desarrolladores o la prdida de costumbre con
este tipo de variables (sobre todo cuando son dobles o triples
punteros, inclusive de mayor orden) los lleva al desastre.
- No es recomendable para desarrollo de pginas Web.
- Existen muchos entornos de programacin para C++. No existen
estndares para ello.

Adrin Almenar Anadn.


multiplataforma.

Desarrollo de aplicaciones

Python
Caractersticas:
-

Python es un lenguaje de programacin multiparadigma. Esto


significa que ms que forzar a los programadores a adoptar un estilo
particular de programacin, permite varios estilos: programacin
orientada a objetos, programacin imperativa y programacin
funcional. Otros paradigmas estn soportados mediante el uso de
extensiones.

Python usa tipado dinmico y conteo de referencias para la


administracin de memoria.

Una caracterstica importante de Python es la resolucin dinmica de


nombres; es decir, lo que enlaza un mtodo y un nombre de variable
durante la ejecucin del programa (tambin llamado enlace dinmico
de mtodos).

Otro objetivo del diseo del lenguaje es la facilidad de extensin. Se


pueden escribir nuevos mdulos fcilmente en C o C++. Python
puede incluirse en aplicaciones que necesitan una interfaz
programable.

Aunque la programacin en Python podra considerarse en algunas


situaciones hostiles a la programacin funcional tradicional del Lisp,
existen bastantes analogas entre Python y los lenguajes minimalistas
de la familia Lisp como puede ser Scheme.

Ventajas:
- Bsicamente "toda expresin es un programa"; por ejemplo, 3+4 es
un programa en Python
- Es un lenguaje de programacin altamente portable (salvo con
algunas libreras especficas); por ejemplo, un programa se puede
escribir en una plataforma Linux y ser ejecutado en cualquier otra
plataforma como Mac, Windows, RasperryPi, etc.
- La documentacin oficial es muy completa y la "otra" se encuentra a
lo largo y ancho en internet
- Su sintaxis es sencilla y fcil de recordar
- Cuenta con tipos aritmticos de precisin arbitraria, es decir, al hacer
operaciones aritmticas no nos debemos preocupar de desborde de
tipos
- Tambin cuenta con un sinnmero de libreras estndar (que vienen
con cualquier distribucin) y otras ms desarrolladas por la
comunidad
- Cuenta con un manejador de mdulos (libreras) fcil de usar
- Pueden existir varias instancias de Python (incluso de la misma
versin), cada una con configuraciones de mdulos distintos

Adrin Almenar Anadn.


multiplataforma.

Desarrollo de aplicaciones

Desventajas
- A pesar de ser relativamente rpido, difcilmente compite en este
departamento con lenguajes de programacin como C o Java; esto se
debe, principalmente, al hecho de ser interpretado (no hay un
proceso de compilacin y por ende no existen optimizaciones a este
nivel)
- Actualmente hay dos versiones, la versin 2 y la versin 3; en
principio, la versin 2 deber desaparecer en un par de aos y la
versin 3 se convertir en la versin de facto de Python
- Algunas libreras no son compatibles entre versiones y algunas de
ellas no han sido portadas a la versin 3 del lenguaje

De los tres lenguajes de programacin orientado a objetos citados


anteriormente el que ms me gusta es JAVA, adems de ser uno de los
ms usados, es robusto, se emplea para utilizar aplicaciones en cualquier
plataforma (Windows, android). Disponemos de miles de manuales,
libros igual que en otros lenguajes de programacin, pero su principal
caracterstica por la cual me decanto por l es que es GRATIS.
Adems de estos tres lenguajes de programacin orientado a objetos
tenemos muchos mas como pueden ser Perl, Ruby, PHP, etc.