Bienvenidos

USAT

sábado, 29 de noviembre de 2008

Ejemplos sencillos de programación en Java con JGRASP



Aquí podras encontrar varios ejemplos de programación en JAVA




Conceptos básicos de programación orientada a objetos


Objeto
Son abstracciones del mundo real; es decir un objeto es un ente o alguna cosa del mundo real.
Los objetos se agrupan en tipos llamados clases, se dice que un objetos es una instancia de una clase.
Tienen unos atributos que representan sus características, propiedades o el estado del objeto
Tienen unos métodos que representan su comportamiento o acciones que puede realizar el objeto.
Shaer, Mellor y Yourdon definen categorías que nos pueden ayudar a identificar objetos :
- Cosas tangibles (mesa, silla, plumón, etc.)
- Roles o papeles de las personas (cliente, proveedor, alumno, medico, etc.)
- Transacción (compras, ventas, etc.)

Atributos

Representan las características, propiedades o el estado del objeto. Se dice que el estado del objeto es el valor que tienen todos sus atributos en un instante dado.
Los atributos vienen a ser las estructuras de datos que se definían en la Programación Estructurada.
En algunos libros de programación se les denomina, variables miembro, variables de instancia, o campos.
Características:
- Los atributos tienen un especificador de acceso, el cual puede ser público (+), privado (-) o protegido(#).
- Los atributos tienen un tipo de dato.
- Los atributos tendrán un nombre



Métodos

Representan el comportamiento o las acciones que pueden hacer un objeto.
Vienen a ser los procesos (funciones o procedimientos) que definíamos en la Programación Estructurada.
En algunos libros de programación se denominan métodos miembro o funciones miembro (En C++)
Características:
- Los métodos tienen un especificador de acceso, el cual puede ser público (+), privado (-) o protegido(#).
- Los métodos pueden retornar un valor.
- Los métodos tendrán un nombre.
- Los métodos pueden tener parámetros.



Clase
Las clases encapsulan o agrupan los atributos y métodos comunes a varios objetos.
Son plantillas o prototipos para crear objetos. Por eso se dice que los objetos son instancias de las clases. Un objeto no se podrá crear si es que no existe una clase.
Es un tipo de dato que describe los atributos y métodos de un determinado objeto.
Estas clases también tienen un especificador de acceso que puede ser público o de paquete.


Mensaje.
Un mensaje es la forma como se comunican los objetos entre sí. Se dice que son ordenes que se le envía a un objeto para que haga algo. Es decir es una orden que hace que un objeto ejecute algunos de sus métodos.
Ejemplo de programación en Java con eclipse


Un lenguaje de programación netamente orientada a objetos




Lenguaje Java

Es un lenguaje de programación orientada a objetos que permite desarrollar aplicaciones portables, es decir que sean independientes de la plataforma donde se corran.
Al contrario que los compiladores tradicionales, que convierten el código fuente en instrucciones a nivel de máquina, el compilador java traduce el código fuente java en un código intermedio denominado bytecode o J-code que luego serán interpretados por la máquina virtual java (JVM) para ejecutar el programa.

Proceso de compilación Java


Características de Java
  • Sencillo:
    - Sólo necesitamos conocer los conceptos y características de la POO.
    - Hereda la características de C y C++.
    - Incorpora la gestión automática de memoria.
    - Elimina el uso de punteros.
    - No soporta Herencia múltiple.
  • Orientado a objetos:
    - Podemos crear objetos.
    - Podemos construir clases.
    - Las clases pueden tener relación de Herencia
  • Distribuido:
    - Podemos crear aplicaciones distribuidos, que son aplicaciones que pueden funcionar en red.
    - Java maneja protocolos TCP/IP
  • Interpretado:
    - Para ejecutar el programa necesitamos de la JVM que se encargará de interpretar los bytecodes.
  • Robusto:
    - Busca que un programa sea fiable (no tenga errores).
    - incorpora el manejo de excepciones (errores).
  • Seguro:
    Incorpora mecanismos de seguridad que garantice que el programa no afecte al sistema donde se esta ejecutando.
  • Independiente de la plataforma o arquitectura neutra:
    Un mismo programa en java podemos ejecutarla en diferentes sistemas operativos, sólo necesitamos tener la JVM para esa plataforma. Este es una de las características más importantes de java.
  • Portable:
    - La misma aplicación java se puede ejecutar en diferentes computadora y funciona de la misma manera. Ejemplo un applet..
    - Java en sus tipos de datos tiene un mayor tamaño para soportar más rango de valores. Ejemplo. El Char tiene 2bytes
  • Alto rendimiento:
    La máquina virtual Java trabaja con JIT (Just In Time) de tal forma que lo que interpreta lo almacena en la caché del computador para poder reutilizarlo.
  • Multihilo (multiprocesos):
    Incorpora clases para construir aplicaciones que ejecuten tareas de manera simultánea.
  • Dinámico:
    En tiempo de ejecución java carga sus clases a medida que se necesitan.

Tipos de metolodogías de programación





Paradigma Imperativo
Paradigma Funcional
Paradigma Lógico
Paradigma con Restricciones
Paradigma Orientado a Eventos
Paradigma Estructurado
Paradigma Orientado a Objetos
Paradigma Orientado a Aspectos



Paradigma Imperativo

Es un paradigma que utiliza dos términos como elementos fundamentales en la construcción de la solución:

  • Estado del programa: Es el valor que tiene una variable la cual se encuentra almacenada en memoria.
  • Instrucciones que cambien ese estado

http://es.wikipedia.org/wiki/Paradigma_imperativo


Paradigma Funcional

Es una paradigma que utiliza funciones matemáticas como elementos fundamentales en la construcción de una solución. Una función matemática asegura transparencia referencial y de esta forma evitar efectos laterales que se pueden presentar en las funciones o procedimientos.

  • Función: Conjunto de instrucciones que realizan una tarea y se caracteriza porque retorna un valor.
  • Procedimiento: Conjunto de instrucciones que realizan una tarea y a diferencia de las funciones, no retorna valores.
  • Efecto lateral: Se produce cuando usamos variables globales en una función o procedimiento, causando problemas para entenderlo y dificulta la depuración ya que necesitamos de todo el programa para poder hacer el seguimiento y determinar que valores va tomando la variable global. Se recomienda que se evite esto, en su lugar podemos pasarle el valor como parámetro.

http://es.wikipedia.org/wiki/Paradigma_funcional


Paradigma Lógico

Es un paradigma que utiliza el conocimiento lógico como elemento fundamental en la construcción de la solución. Se usan en:

  • Sistemas expertos: En base a cierta información puede imitar las recomendaciones dadas por un especialista.
  • Demostración de teoremas o hipótesis: “Las aves vuelan”, “Los loros son aves” ® ¿Los loros vuelan?
  • Sistemas de semáforo.

http://es.wikipedia.org/wiki/Programaci%C3%B3n_l%C3%B3gica



Paradigma con Restricciones

Es un paradigma que utiliza restricciones como elemento fundamental en la construcción de la solución. Es una variación del Paradigma Lógico, consiste en definir unas restricciones (ecuaciones) y al final los valores que cumplen estas restricciones serán la solución del problema

http://es.wikipedia.org/wiki/Programaci%C3%B3n_con_restricciones

Paradigma Orientado a Eventos

Es un paradigma que utiliza eventos como elementos funcionales en la construcción de la solución.
El control del flujo del programa lo asume el usuario en función de las acciones que realice, ya no el programador, como en las aplicaciones de consola.

http://es.wikipedia.org/wiki/Programaci%C3%B3n_dirigida_por_eventos




Paradigma Estructurado

Paradigma que utiliza tres estructuras básicas como elementos fundamentales en la construcción de una solución. Surge en los años 60. Dijkstra manifiesta que todo programa puede ser escrito utilizando solo tres estructuras básicas. Estructuras Básicas: Secuenciales, Condicionales o selectivas (simples: if, dobles: if-else, múltiples: switch), Repetitivas (for, while, do-while).

http://es.wikipedia.org/wiki/Programaci%C3%B3n_estructurada




Paradigma Orientado a Objetos

Es un paradigma que utiliza objetos como elementos fundamentales en la construcción de la solución.
Surge en los años 70. Un objeto es una abstracción de algún hecho o cosa del mundo real que tiene atributos que representan sus características o propiedades y métodos que representan su comportamiento o acciones que realizan. Todas las propiedades y métodos comunes a los objetos se encapsulan o se agrupan en clases. ¨Una clase es una plantilla o un prototipo para crear objetos, por eso se dice que los objetos son instancias de clases.
Lenguaje de programación: C++, Java, C#, VB.Net, etc

http://es.wikipedia.org/wiki/Programaci%C3%B3n_orientada_a_objetos

Introducción a las Metodologías de Programación

¿Qué es una metodologías de Programación?

Las metodologías de programación, también conocidas como paradigmas de programación, son reglas, marcos de referencia, modelos, directrices o patrones que definen la forma como solucionar un problema. Es decir influyen en la manera como diseñamos una solución y como escribimos un programa de computadora.




Importancia

Resolución de un problema con computadora





¿Qué sucedería si no utilizaramos una metodología de programación?
  • El programador programa libremente, definiendo sus propias reglas.
  • Se genera un programa desordenado.
  • Difícil entenderlo.
  • Difícil depurarlo.
  • El programa pierde fiabilidad (propenso a errores).
  • Difícil mantenimiento del programa.
  • Difícil trabajar en equipo.
  • Genera dependencia del programador

Universidad Técnica Particular de Loja Carrera: Ciencias de la Computación Materia: Metodología y Tecnología de la Programación





Para más información puedes visitar:



Ver mapa más grande