Aquí podras encontrar varios ejemplos de programación en JAVA
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
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
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 lenguaje de programación netamente orientada a objetos
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.
- 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 Lógico
Paradigma con Restricciones
Paradigma Orientado a Eventos
Paradigma Estructurado
Paradigma Orientado a Objetos
Paradigma Orientado a Aspectos
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
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.
- 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:
- Informática para ingenieros - ITOP, 2003-2004. Metodologías y lenguajes de programación. http://webpages.ull.es/users/mbmelian/TEMA6.pdf