Está en la página 1de 7

Que es un lenguaje de programación?

Un lenguaje de programación consiste en todos los símbolos, caracteres y reglas de uso


que permiten a las personas "comunicarse" con las computadoras. Existen varios cientos
de lenguajes y dialectos de programación diferentes. Algunos se crean para una
aplicación especial, mientras que otros son herramientas de uso general más flexibles que
son apropiadas para muchos tipos de aplicaciones.

Son herramientas que nos permiten crear programas y software entre ellos tenemos:
Delphi , Basic, Visual Basic, Pascal, Java etc…

¿Qué es lenguaje JAVA?

Sun Microsystems desarrolló, en 1991, el lenguaje de programación orientado a objetos


que se conoce como Java. El objetivo era utilizarlo en un set-top box, un tipo de
dispositivo que se encarga de la recepción y la descodificación de la señal televisiva. El
primer nombre del lenguaje fue Oak, luego se conoció como Green y finamente adoptó la
denominación de Java.

La intención de Sun era crear un lenguaje con una estructura y una sintaxis similar a C y
C++, aunque con un modelo de objetos más simple y eliminando las herramientas de bajo
nivel.

Los pilares en los que se sustenta Java son cinco: la programación orientada a objetos, la
posibilidad de ejecutar un mismo programa en diversos sistemas operativos, la inclusión
por defecto de soporte para trabajo en red, la opción de ejecutar el código en sistemas
remotos de manera segura y la facilidad de uso.

Lo habitual es que las aplicaciones Java se encuentren compiladas en un bytecode (un


fichero binario que tiene un programa ejecutable), aunque también pueden estar
compiladas en código máquina nativo.

Sun controla las especificaciones y el desarrollo del lenguaje, los compiladores, las
máquinas virtuales y las bibliotecas de clases a través del Java Community Process. En
los últimos años, la empresa (que fue adquirida por Oracle) ha liberado gran parte de las
tecnologías Java bajo la licencia GNU GPL.

La aplicación de Java es muy amplia. El lenguaje se utiliza en una gran variedad de


dispositivos móviles, como teléfonos y pequeños electrodomésticos. Dentro del ámbito de
Internet, Java permite desarrollar pequeñas aplicaciones (conocidas con el nombre de
applets) que se incrustan en el código HTML de una página, para su directa ejecución
desde un navegador; cabe mencionar que es necesario contar con el plug-in adecuado
para su funcionamiento, pero la instalación es liviana y sencilla.

Razones para escoger Java por sobre otros lenguajes.

* Es orientado a objetos: si bien existen detractores de esta modalidad, la programación


orientada a objetos resulta muy conveniente para la mayoría de las aplicaciones, y es
esencial para los videojuegos. Entre las ventajas más evidentes que ofrece se encuentra
un gran control sobre el código y una mejor organización, dado que basta con escribir una
vez los métodos y las propiedades de un objeto, independientemente de la cantidad de
veces que se utilicen.

* Es muy flexible: Java es un lenguaje especialmente preparado para la reutilización del


código; permite a sus usuarios tomar un programa que hayan desarrollado tiempo atrás y
actualizarlo con mucha facilidad, sea que necesiten agregar funciones o adaptarlo a un
nuevo entorno.

* Funciona en cualquier plataforma: a diferencia de los programas que requieren de


versiones específicas para cada sistema operativo (tales como Windows o Mac), las
aplicaciones desarrolladas en Java funcionan en cualquier entorno, dado que no es el
sistema quien las ejecuta, sino la máquina virtual (conocida como Java Virtual Machine o
JVM).

* Su uso no acarrea inversiones económicas: programar en Java es absolutamente gratis;


no es necesario adquirir ninguna licencia, sino simplemente descargar el kit de desarrollo
(Java Development Kit o JDK) y dar riendas sueltas a la imaginación.

* Es de fuente abierta: Java ofrece el código de casi todas sus librerías nativas para que
los desarrolladores puedan conocerlas y estudiarlas en profundidad, o bien ampliar su
funcionalidad, beneficiándose a ellos mismos y a los demás.

* Es un lenguaje expandible: continuando con el punto anterior, cada programador tiene la


libertad de revisar y mejorar el código nativo de Java, y su trabajo puede convertirse en la
solución a los problemas de muchas personas en todo el mundo. Infinidad de
desarrolladores han aprovechado esta virtud del lenguaje y continúan haciéndolo.

¿Qué significa para usted Programación Orientada a Objetos?

La programación Orientada a objetos (POO) es una forma especial de programar, más


cercana a como expresaríamos las cosas en la vida real que otros tipos de programación.
Pienso que es programar cualquier utilidad que nos sirva en nuestra vida cotidiana y a esa
utilidad programarle objetos que vendrían a ser las características que deseamos que
contenga nuestro programa.

¿Cuáles son las propiedades o conceptos fundamentales de la programación


orientada a objetos? Sustente la respuesta con ejemplos.

Objeto
Los objetos son entidades que se pueden distinguir de manera clara y definida, ejemplos
de un objeto pueden ser una persona, un libro, un botón de orden.

Estructura interna de un objeto:

La estructura interna de un objeto está compuesta por tres elementos


fundamentales como son:

Propiedades: Son las características observables de un objeto. Las propiedades se


reconocen porque describen un aspecto del objeto que podemos medir con una escala
establecida previamente. A cada propiedad se le debe asignar un valor el cual permite
identificar de manera única al objeto.

Métodos: Se define como un conjunto de acciones que un objeto puede realizar para
conseguir un propósito. Los métodos representan la parte viva e interesante de un objeto
y se emplean habitualmente para modificar las propiedades del objeto. Al modificar
cualquiera de las propiedades del objeto se altera su apariencia y se genera un cambio
que el usuario de la aplicación puede percibir.

Eventos: Todos los objetos se relacionan con el mundo que los rodea, esto significa que
ningún objeto está aislado y siempre recibe el influjo de otros objetos. Los eventos son los
estímulos que un objeto ejerce sobre otro

Estado de un objeto:

El estado de un objeto es la apariencia que el objeto presenta al usuario, y depende del


valor que tenga sus propiedades. Un cambio de estado se logra alterando al menos una
de las propiedades del objeto.

Clases:

Los objetos están organizados en familias claramente delimitadas. Una familia se


reconoce porque reúne un grupo de objetos que heredan elementos entre sí. El modelo
de programación visual, al igual que la naturaleza, organiza los objetos en clases
(familias), así una clase es el conjunto de objetos que pertenecen a una misma familia.
Por ejemplo Madonna, Michael Jackson, Prince y Dire Straits son objetos de una clase
cantantes de rock, sin embargo personas específicas con nombres específicos son
miembros de esa clase si poseen ciertas características comunes. El modelo de
programación visual permite así organizar las familias de objetos en un orden jerárquico.

Herencia:
Un objeto es heredero de otro cuando posee todas sus propiedades y todos sus métodos
y reconoce todos sus eventos, aunque pueda disfrutar de propiedades, métodos y
eventos adicionales. Se define la herencia como la característica que tienen los objetos de
derivarse unos de otros. Por otra parte la herencia supone una clase base y una jerarquía
de clases que contienen las clases derivadas de la clase base, así las clases derivadas
pueden heredar las propiedades y métodos de una clase base, añadiendo sus propios
métodos y propiedades, incluso cambiar aquellos elementos de la clase base que
necesiten sean diferentes.

Tipos de Herencia:

Existen dos tipos de herencia

Herencia Simple: En esta jerarquía cada clase tiene como máximo una sola superclase.
La herencia simple permite que una clase herede las propiedades y métodos de su
superclase en una cadena jerárquica.

Herencia múltiple: Una malla o retícula consta de clases, cada una de las cuales pueden
tener dos o más superclases inmediatas. Una herencia múltiple es aquella en la que cada
clase puede heredar las propiedades y métodos de cualquier número de clases.

Encapsulamiento:

Un objeto está separado del medio que lo rodea por algún tipo de envoltura. Esta
separación es la que determina la unidad del objeto, es decir, lo convierte en algo
independiente. La envoltura oculta los detalles relacionados con la construcción interior
del objeto, esto significa que sólo conocemos del objeto aquello que es revelado por sus
métodos. Se llama encapsulamiento a la propiedad que tienen los objetos de ocultar
detalles internos, así se permite asegurar que el contenido de la información de un objeto
este oculta al mundo exterior (Por ejemplo un objeto A no conoce lo que hace un objeto B
y viceversa). Por otra parte el programador que construye un objeto tiene acceso a todas
sus partes: propiedades, métodos y definición de eventos. El programador que utiliza un
objeto solamente tiene acceso a sus propiedades y métodos (si estos son públicos) y a la
programación de los eventos que han sido definidos para el objeto.

Algunos métodos y propiedades en un objeto son privados, es decir, útiles únicamente


dentro del objeto y desconocidos por quien utiliza el objeto, los restantes métodos y
propiedades son públicos, t los programadores los emplean para cambiar el estado del
objeto.
Comunicación entre objetos (mensajes)

El mensaje es esencialmente una orden que se envía a un objeto para indicarle que
realice alguna acción. También se define mensaje como la información completa que un
objeto emisor transmite hacia un objeto receptor.

Un mensaje contiene tres elementos: el objeto receptor, el tipo de evento y los datos
necesarios para el receptor.

Mensaje

Cuando se produce un evento, el objeto receptor sabe cuál es el objeto emisor, qué
evento se produjo y el valor de los datos asociados con dicho evento.

Polimorfismo:

El polimorfismo se presenta cuando se ha creado objetos que pertenecen a clases que


han sido derivadas de otras clases. En otras palabras, el polimorfismo aparece en las
clases derivadas.

También se dice que el polimorfismo es la propiedad que indica literalmente, la posibilidad


de que una entidad tome muchas formas, en términos prácticos el polimorfismo permite
referirse a objetos de clases distintas mediante el mismo elemento de programa y realizar
la misma operación de diferentes formas, según sea el objeto que se referencia en ese
momento. Por ejemplo cuando se describe la clase mamíferos se puede observar que la
operación comer es una operación fundamental en la vida de los mamíferos, de modo que
cada tipo de mamíferos debe poder realizar la operación o función comer. Por otra parte,
una vaca o una cabra que pasta en el campo, un niño que se come un bombón o
caramelo y un león que devora a otro animal, son diferentes formas que utilizan los
distintos mamíferos para realizar la misma función (comer).

Objetos compuestos:

Una de las características que hacen a los objetos ser muy potentes es que pueden
contener otros objetos. Los objetos que contienen otros objetos se denominan objetos
compuestos. Esta característica ofrece dos ventajas importantes:

Los objetos contenidos pueden cambiar en tamaño y composición, sin afectar al objeto
compuesto que los contiene, esto hace que el mantenimiento de sistemas complejos de
objetos anidados sea más sencillo.

Los objetos contenidos están libres para participar en cualquier número de objetos
compuestos, en lugar de estar bloqueados en un único objeto compuesto.
Reutilización con orientación a objetos:

Reutilización o reutilizabilidad es la propiedad por la que software desarrollado puede ser


utilizado cuantas veces sea necesario en más de un programa. Así por ejemplo, si se
necesita una función que calcule el cuadrado o el cubo de un número, se puede crear una
función que realice la tarea que el programa necesite. Las ventajas de la reutilización son
evidentes, el ahorro de tiempo es sin duda una de las ventajas más considerables y otra
es la facilidad para intercambiar software desarrollado por diferentes programadores.

Objetos y reutilización:

La programación orientada a objeto proporciona el marco idóneo para la reutilización de


las clases. Los conceptos de encapsulamiento y herencia son las bases que facilitan la
reutilización. Un programador puede utilizar una clase existente y sin modificarla, añadirle
nuevas características y datos. Esta operación se consigue derivando una clase a partir
de la clase base existente, la nueva clase hereda las propiedades de la antigua, pero se
pueden añadir nuevas propiedades. Por ejemplo, suponga que se escribe una clase Menú
que crea una sistema menú (barras de desplazamiento, cuadros de diálogos, botones,
etc.), con el tiempo, aunque la clase funciona bien, se observa que sería interesante que
las leyendas de las opciones de los menús parpadearán o cambiarán el color. Para
realizar esta tarea se diseña una clase derivada de menú que añada las nuevas
propiedades de parpadeo o cambio de color

La facilidad para reutilizar clases y en consecuencia objetos es una de las propiedades


fundamentales que justifican el uso de la programación orientada a objeto. Por esta razón
los sistemas y en particular los lenguajes orientados a objetos suelen venir provistos de
un conjunto (biblioteca) de clases predefinidas que permiten ahorrar tiempo y esfuerzo en
el desarrollo de cualquier aplicación.

Constructor:

Los constructores son métodos o funciones que existen dentro de todos los objetos, y que
se activan solamente en el momento de la creación del objeto. Los constructores sirven
para definir los valores iniciales de las propiedades del objeto. También se dice que un
constructor es una operación que crea un objeto y/o inicializa su estado.

Destructor:

El destructor es un método que se activa cuando el objeto desaparece. El destructor es


único y sirve para que un objeto ejecute una acción (o grupo de acciones) antes de
terminar su ciclo vital. Normalmente loa objetos dejan de existir cuando salen de su
ámbito (entorno) en donde fueron creados. Los destructores son importantes porque se
activas automáticamente, y eximen al programador de la tarea de liberar los recursos
tomados por el objeto, ya que normalmente esta es la tarea ejecutada por el destructor.

EJEMPLO
Crearemos una clase Videojuego con las siguientes características:

Sus atributos son titulo, horas estimadas, entregado, genero y compañia.

Por defecto, las horas estimadas serán de 10 horas y entregado false. El resto de
atributos serán valores por defecto según el tipo del atributo.

Los constructores que se implementaran serán:

Un constructor por defecto.

Un constructor con el titulo y horas estimadas. El resto por defecto.

Un constructor con todos los atributos, excepto de entregado.

Los métodos que se implementara serán:

Métodos get de todos los atributos, excepto de entregado.

Métodos set de todos los atributos, excepto de entregado.

Sobrescribe los métodos toString.

REFERENCIAS

fdi.ucm.es (2015). Objetos y Clases. Recuperado el 10 de Septiembre de 2016, a las 9:30 pm del
sitio web:

https://www.fdi.ucm.es/profesor/jpavon/poo/1.1.Objetos%20y%20Clases.pdf

Definicion.De .Definición de java Autores: Julián Pérez Porto y Ana Gardey. Publicado: 2010.
Actualizado: 2013.

http://definicion.de/java/

También podría gustarte