Hamlet, william shakespeare
La Programación Orientada a Objetos es un paradigma de programación diferente a la Programación Estructurada o a la misma Programación Procedural al que la mayoría de los programadores están acostumbrados a utilizar.
En la Programación Estructurada y la Programación Procedural lo mas importante es el procedimiento que se esta desarrollando a través de un lenguaje de programación.
En Programación Orientada a Objetos, se hace un gran énfasis a los datos, y todo gira alrededor de ellos.
Cada vez que alguien quiere hacer una aplicación, debe de pensar en los elementos (datos) que va a utilizar para programar, y la relación que existe entre estos datos, en su forma de interactuar entre si.
Cuando queremos …ver más…
El resultado es un lenguaje que se ha mostrado ideal para desarrollar aplicaciones de usuario final seguras, distribuidas y basadas en red en un amplio rango de entornos desde los dispositivos de red embebidos hasta su uso para soluciones en Internet.
Características en el Diseño de Java
- Sencillo, orientado a objetos y familiar: Sencillo, para que no requiera grandes esfuerzos de entrenamiento para los desarrolladores. Orientado a objetos, porque la tecnología de objetos se considera madura y es el enfoque más adecuado para las necesidades de los sistemas distribuidos y/o cliente/servidor. Familiar, porque aunque se rechazó C++, se mantuvo Java lo más parecido posible a C++, eliminando sus complejidades innecesarias, para facilitar la migración al nuevo lenguaje.
- Robusto y seguro: Robusto, simplificando la administración de memoria y eliminando las complejidades del uso de apuntadores y aritmética de apuntadores del C. Seguro para que pueda operar en un entorno de red.
- Independiente de la arquitertura y portable: Java está diseñado para soportar aplicaciones que serán instaladas en un entorno de red heterogéneo, con hardware y sistemas operativos diversos. Para hacer esto posible el compilador Java genera un código llamado 'bytecodes' o comúnmente conocido como código byte, un formato de código independiente de la plataforma diseñado para transportar código eficientemente a través de múltiples