17
INTERFACES Una interfaz define un tipo (al igual que una clase define un tipo) pero ese tipo no provee de ningún método podemos preguntarnos: ¿qué se gana con las interfaces en Java? La implementación (herencia) de una interfaz no podemos decir que evite la duplicidad de código o que favorezca la reutilización de código puesto que realmente no provee código. En cambio sí podemos decir que reúne las otras dos ventajas de la herencia: favorecer el mantenimiento y la extensión de las aplicaciones. ¿Por qué? Porque al definir interfaces permitimos la existencia de variables polimórficas y la invocación polimórfica de métodos. Para crear una interface, se utiliza la palabra clave interface en lugar de class. La interface puede definirse public o sin modificador de acceso, y tiene el mismo significado que para las clases. Todos los métodos que declara una interface son siempre public. Para indicar que una clase implementa los métodos de una interface se utiliza la palabra clave implements. El compilador se encargará de verificar que la clase efectivamente declare e implemente todos los métodos de la interface. Una clase puede implementar más de una interface. INTERFACES DE GRAFICAS DE USUARIO. (VENTAJAS Y DESVENTAJAS). La interfaz gráfica de usuario, conocida también como GUI (del inglés graphical user interface) es un programa informático que actúa de interfaz de usuario utilizando un conjunto de imágenes y objetos gráficos para representar la información y acciones disponibles en la interfaz. Su principal

Jose Samuel 1

Embed Size (px)

DESCRIPTION

programación visual java

Citation preview

INTERFACESUna interfaz define un tipo (al igual que una clase define un tipo) pero ese tipo no provee de ningn mtodo podemos preguntarnos: qu se gana con las interfaces en Java? La implementacin (herencia) de una interfaz no podemos decir que evite la duplicidad de cdigo o que favorezca la reutilizacin de cdigo puesto que realmente no provee cdigo.En cambio s podemos decir que rene las otras dos ventajas de la herencia: favorecer el mantenimiento y la extensin de las aplicaciones. Por qu? Porqueal definir interfaces permitimos la existencia de variables polimrficas y la invocacin polimrfica de mtodos.Para crear una interface, se utiliza la palabra clave interface en lugar de class. La interface puede definirse public o sin modificador de acceso, y tiene el mismo significado que para las clases. Todos los mtodos que declara una interface son siempre public.Para indicar que una clase implementa los mtodos de una interface se utiliza la palabra clave implements. El compilador se encargar de verificar que la clase efectivamente declare e implemente todos los mtodos de la interface. Una clase puede implementar ms de una interface.

INTERFACES DE GRAFICAS DE USUARIO. (VENTAJAS Y DESVENTAJAS).

Lainterfaz grfica de usuario, conocida tambin comoGUI(delinglsgraphical user interface) es unprograma informticoque acta deinterfaz de usuarioutilizando un conjunto de imgenes y objetos grficos para representar la informacin y acciones disponibles en la interfaz. Su principal uso, consiste en proporcionar un entorno visual sencillo para permitir la comunicacin con elsistema operativode una mquina o computador.En el contexto del proceso de interaccinpersona-ordenador, la interfaz grfica de usuario es el artefacto tecnolgico de un sistema interactivo que posibilita, a travs del uso y la representacin dellenguaje visual, una interaccin amigable con un sistemainformtico.

INTERFAZ GRAFICA

Ventajas:

Facilita el manejo de los procedimientos

Cada comando puede ser visualizado en pantalla mediante una imagen que lo representa

Proporciona mecanismos estndar de control como ventanas y cuadros de dialogo

Permite interactuar al usuario con el sistema de una forma ms fcil.

Desventajas

-Utiliza ms recursos del sistema - Es ms complejo realizar un sistema de este tipo

-Son ms costosos

La interfaz grfica de usuario es la evolucin de los antiguos programas de lnea de Comando hasta lo que se ve en nuestros das en los que se empieza a experimentar con el uso de interfaces en tercera dimensin. Es ms, no es aventurado sealar que Actualmente, dentro de la mente de un usuario promedio, una aplicacin de software sin Interfaz grfica o con una mala interfaz grfica est destinada a morir en el olvido.

CLASELa programacin orientada a objetos se basa en la programacin de clases; a diferencia de la programacin estructurada, que est centrada en las funciones.Una clase es un molde del que luego se pueden crear mltiples objetos, con similares caractersticas.

Una clase es una plantilla (molde), que define atributos (variables) y mtodos (funciones)La clase define los atributos y mtodos comunes a los objetos de ese tipo, pero luego, cada objeto tendr sus propios valores y compartirn las mismas funciones.Debemos crear una clase antes de poder crear objetos (instancias) de esa clase. Al crear un objeto de una clase, se dice que se crea una instancia de la clase o un objeto propiamente dicho.

PROGRAMAEl concepto deprograma(trmino derivado del latnprograma que, a su vez, tiene su origen en un vocablo griego) posee mltiples acepciones. Puede ser entendido como el anticipo de lo que seplanearealizar en algn mbito o circunstancia; el temario que se ofrece para un discurso; la presentacin y organizacin de las materias de un cierto curso o asignatura; y la descripcin de las caractersticas o etapas en que se organizan determinados actos o espectculos artsticos.Un programa tambin consiste en unaunidad temticadesarrollada durante una emisin televisiva o radial, adems de permitir nombrar al grupo de instrucciones que le posibilita a unacomputadoradesarrollar diferentes funciones.Por ltimo, cabe destacar que unprograma de desarrollo es una expresin que permite identificar al conjunto de acciones que se organizan con el propsito de mejorar las condiciones devidaen una determinada regin. Estos programas tambin son conocidos como de desarrollo econmico y social.Existen diferentes agencias de cooperacin internacional que apoyan y financian los programas de desarrollo en las naciones ms pobres del planeta.

Desde la perspectiva de lainformtica, unprograma de aplicacinconsiste en una clase desoftwareque se disea con el fin de que para el usuario sea ms sencilla la concrecin de un determinado trabajo. Esta particularidad lo distingue del resto de losprogramas, entre los cuales se pueden citar a lossistemas operativos(que son los que permiten el funcionamiento de La computadora), los lenguajes de programacin (aquellos que dan las herramientas necesarias para desarrollar los programas informticos en general) y las utilidades (pensadas para realizar acciones de mantenimiento y tareas generales.

OBJETO

Los objetos son la clave para entender la tecnologaorientada a objetos. Si mira a su alrededor ahora mismo se encontrar con muchos ejemplos de objetos del mundo real: su perro, su escritorio, su televisor, su bicicleta.Los objetos software son conceptualmente similares a los objetos del mundo real: tambin consisten de estado y comportamiento. Un objeto almacena su estado encampos(variables en algunos lenguajes de programacin) y muestra su comportamiento a travs demtodos(funciones en algunos lenguajes de programacin). Los mtodos operan sobre el estado interno del objeto y sirven como el mecanismo principal para la comunicacin entre objetos. La ocultacin del estado interno y requerir que toda interaccin se realice a travs de los mtodos de un objeto se conoce comoencapsulacin de datos un principio fundamental de la programacin orientada a objetos.HERENCIALa herencia nos permite definir una clase como extensin de otra:de esta manera decimos la clase 1.1 tiene todas las caractersticas de la clase 1 y adems sus caractersticas particulares. Todo lo que es comn a ambas clases queda comprendido en la clase superior, mientras lo que es especfico, queda restringido a las clases inferiores. En nuestro ejemplo definiramos una clase denominada Vehculo, de forma que la clase Taxi tuviera todas las propiedades de la clase Vehculo, ms algunas propiedades y mtodos especficos. Lo mismo ocurrira con la clase Autobs y otras que pudieran heredar de Vehculo. Podramos seguir creando clases con herencia en un nmero indefinido: tantas como queramos. Si piensas en el API de Java, hay cientos de clases que heredan de clases jerrquicamente superiores como la clase Object. En un proyecto propio, podremos tener varias clases que hereden de una clase comn.La primera aproximacin a la herencia en Java la plantearemos para plasmar todo lo que hemos discutido en prrafos anteriores: en vez de definir cada clase por separado con operaciones o campos duplicados en cierta medida, definiremos una clase padre que contendr todas las cosas que tengan en comn otras clases. Luego definiremos las otras clases hijo como extensin de la clase padre, especificando para ellas nicamente aquello que tienen especfico y distinto de la clase padre. Una caracterstica esencial dela herencia es que permite evitar la duplicidad de cdigo:aquello que es comn a varias clases se escribe solo una vez (en la clase padre). La duplicidad de informacin, ya sea cdigo o datos, es algo que por todos los medios hay que tratar de evitar en los sistemas informticos por ser fuente de errores y de problemas de mantenimientoLa Herenciaes uno de los 4 pilares de la programacin orientada a objetos (POO) junto con laAbstraccin,EncapsulacinyPolimorfismo.

POLIMORFISMOEl polimorfismo consiste en obtener un mismo mtodo con diferentes funciones, es decir, suponiendo que tengamos una clase Saludo con el mtodo Saludo el cual sera suconstructor, pero en este caso tendramos varios constructores pero siempre siguiendo las reglas de independencia en cuestin a los parmetros de cadaconstructorpara que as puedan diferenciarse uno de otro, sin embargo cada uno tendr diferentes procesos internos en s mismo.

El concepto de polimorfismo se puede aplicar tanto a funciones como a tipos de datos. As nacen los conceptos de funciones polimrficas y tipos polimrficos. Las primeras son aquellas funciones que pueden evaluarse o ser aplicadas a diferentes tipos de datos de forma indistinta; los tipos polimrficos, por su parte, son aquellos tipos de datos que contienen al menos un elemento cuyo tipo no est especificado. ClasificacinSe puede clasificar el polimorfismo en dos grandes clases: Polimorfismo dinmico (o polimorfismo paramtrico) es aqul en el que el cdigo no incluye ningn tipo de especificacin sobre el tipo de datos sobre el que se trabaja. As, puede ser utilizado a todo tipo de datos compatible. Polimorfismo esttico (o polimorfismo ad hoc) es aqul en el que los tipos a los que se aplica el polimorfismo deben ser explicitados y declarados uno por uno antes de poder ser utilizados. El polimorfismo dinmico unido a la herencia es lo que en ocasiones se conoce como programacin genrica.ATRIBUTOLos atributos y mtodos estticos tambin se llamanatributos de claseymtodos de clase.Se declaran comostatic.Supongamos una clase Coche sencilla que se utiliza en un programa de compra-venta de coches usados y de la que se crean 3 objetos de tipo Coche:La clase contiene 6 atributos: marca, modelo, color, matrcula, precio y descuento. Supongamos que el descuento es una cantidad que se aplica a todos los coches sobre el precio de venta. Como este dato es el mismo para todos los coches y es un valor que se puede modificar en cualquier momento no debe formar parte de cada coche sino que es un dato que deben compartir todos. Esto se consigue declarndolo comostatic.

Un Atributo static:-No es especfico de cada objeto. Solo hay una copia del mismo y su valor es compartido por todos los objetos de la clase.Podemos considerarlo como unavariable globala la que tienen acceso todos los objetos de la clase.

MTODOEn la programacin orientada a objetos, un mtodo es una subrutina cuyo cdigo es definido en una clase y puede pertenecer tanto a una clase, como es el caso de los mtodos de clase o estticos, como a un objeto, como es el caso de los mtodos de instancia. Anlogamente a los procedimientos en los lenguajes imperativos, un mtodo consiste generalmente de una serie de sentencias para llevar a cabo una accin, un juego de parmetros de entrada que regularn dicha accin o, posiblemente, un valor de salida (o valor de retorno) de algn tipo.La diferencia entre un procedimiento (generalmente llamado funcin si devuelve un valor) y un mtodo es que ste ltimo, al estar asociado con un objeto o clase en particular, puede acceder y modificar los datos privados del objeto correspondiente de forma tal que sea consistente con el comportamiento deseado para el mismo. As, es recomendable entender a un mtodo no como una secuencia de instrucciones sino como la forma en que el objeto es til (el mtodo para hacer su trabajo). Por lo tanto, podemos considerar al mtodo como el pedido a un objeto para que realice una tarea determinada o como la va para enviar un mensaje al objeto y que ste reaccione acorde a dicho mensaje.Tipos de mtodosComo ya se mencion, los mtodos de instancia estn relacionados con un objeto en particular, mientras que los mtodos estticos o de clase (tambin denominados mtodos compartidos) estn asociados a una clase en particular. En una implementacin de constructores, siendo estos mtodos de instancia especiales llamados automticamente cuando se crea una instancia de alguna clase. En Java y C++ se distinguen por tener el mismo nombre de las clases a la que estn asociados. Lenguajes como Smalltalk no requieren constructores ni destructores.Los mtodos de acceso son un tipo de mtodo normalmente pequeo y simple que se limita a proveer informacin acerca del estado de un objeto. Aunque introduce una nueva dependencia, la utilizacin de mtodos es preferida a acceder directamente a la informacin para proveer de una nueva capa de abstraccin (programacin orientada a objetos). Por ejemplo, si una clase que modela una cuenta bancaria provee de un mtodo de acceso "obtener Balance ()" en versiones posteriores de la clase se podra cambiar el cdigo de dicho mtodo substancialmente sin que el cdigo dependiente de la clase tuviese que ser modificado (un cambio sera necesario siempre que el tipo de dato devuelto por el mtodo cambie). Los mtodos de acceso que pueden cambiar el estado de un objeto son llamados, frecuentemente, mtodos de actualizacin o mtodos de mutacin; a su vez, los objetos que proveen de dichos mtodos son denominados objetos mutables.

PARADIGMAUn paradigma de programacin es una propuesta tecnolgica adoptada por una comunidad de programadores cuyo ncleo central es incuestionable en cuanto a que nicamente trata de resolver uno o varios problemas claramente delimitados.Es un estilo de programacin empleado; la resolucin de estos problemas debe suponer consecuentemente un avance significativo en al menos un parmetro que afecte a la ingeniera de software.Tiene una estrecha relacin con la formalizacin de determinados lenguajes en su momento de definicin. Un paradigma de programacin est delimitado en el tiempo en cuanto a aceptacin y uso ya que nuevos paradigmas aportan nuevas o mejores soluciones que la sustituyen parcial o totalmente.El paradigma de programacin que actualmente es el ms usado es la orientacin a objetos. El ncleo central de este paradigma es la unin de datos y procesamiento en una entidad llamada "objeto", relacionable a su vez con otras entidades "objeto".Un paradigma de programacin representa un enfoque particular o filosofa para disear soluciones. Los paradigmas difieren unos de otros, en los conceptos y la forma de abstraer los elementos involucrados en un problema, as como en los pasos que integran su solucin del problema, en otras palabras, el cmputo.

UMLUML [UML] es un lenguaje para especificar, construir, visualizar y documentar los artefactos de un sistema de software orientado a objetos (OO). Un artefacto es una informacin que es utilizada o producida mediante un proceso de desarrollo de software.

UML se quiere convertir en un lenguaje estndar con el que sea posible modelar todos los componentes del proceso de desarrollo de aplicaciones. Sin embargo, hay que tener en cuenta un aspecto importante del modelo: no pretende definir un modelo estndar de desarrollo, sino nicamente un lenguaje de modelado. Otros mtodos de modelaje como OMT (Object Modeling Technique) o Boch s definen procesos concretos. En UML los procesos de desarrollo son diferentes segn los distintos dominios de trabajo; no puede ser el mismo el proceso para crear una aplicacin en tiempo real, que el proceso de desarrollo de una aplicacin orientada a gestin, por poner un ejemplo .

Las diferencias son muy marcadas y afectan a todas las fases del proceso. El mtodo del UML recomienda utilizar los procesos que otras metodologas tienen definidos.

NETBEANSNetBeans es un entorno de desarrollo integrado libre, hecho principalmente para el lenguaje de programacin Java. Existe adems un nmero importante de mdulos para extenderlo. NetBeans IDE es un producto libre y gratuito sin restricciones de uso.NetBeans es un proyecto de cdigo abierto de gran xito con una gran base de usuarios, una comunidad en constante crecimiento, y con cerca de 100 socios en todo el mundo. Sun MicroSystems fund el proyecto de cdigo abierto NetBeans en junio de 2000 y contina siendo el patrocinador principal de los proyectos (Actualmente Sun Microsystems es administrado por Oracle Corporation).La plataforma NetBeans permite que las aplicaciones sean desarrolladas a partir de un conjunto de componentes de software llamados mdulos. Un mdulo es un archivo Java que contiene clases de java escritas para interactuar con las Apis de NetBeans y un archivo especial (manifest file) que lo identifica como mdulo. Las aplicaciones construidas a partir de mdulos pueden ser extendidas agregndole nuevos mdulos. Debido a que los mdulos pueden ser desarrollados independientemente, las aplicaciones basadas en la plataforma NetBeans pueden ser extendidas fcilmente por otros desarrolladores de software.IDEAunque las siglas IDE esconden varias acepciones, en general nos referimos a un tipo de conexin informtica de transmisin de datos entre componentes del ordenador. Las siglas responden a las palabras inglesas Integrated Drive Electronics (IDE), y como hemos dicho, fueron un estndar de conexin hasta hace bien poco, siendo ltimamente desplazado por el interfaz SATA (Serial ATA).El interfaz IDE naci debido a una necesidad imperiosa de poder conectar componentes de distintos fabricantes en un mismo ordenador. Esto antes no era posible, pues cada marca venda su producto completo y con componentes propios. Un disco duro de un IBM no servira en un ordenador COMPAQ, y eso era una tara importante. El nombre original del IDE era ATA (AT Attachment, un interfaz creado por IBM para conectar los componentes de sus equipos), y con el tiempo el cable entrelazado creado por IBM acab siendo de uso comn, al darse cuenta los fabricantes que hacer componentes universales tena grandes ventajas y ampliaba su crculo de clientes potenciales. ATA e IDE son pues trminos sinnimos.En principio se usaba para conectar discos duros, y ms tarde lectores y grabadores de CD/DVD... etc., debido a su alta velocidad de transmisin de datos. Era muy raro usarlo para componentes externos.

OPERADORES

Un operador es un smbolo o palabra que significa que se ha de realizar cierta accin entre uno o dos valores que son llamados operados.Tipos de Operadores:a) Aritmticos (su resultado es un nmero): potencia, *, /, mod, div, +, -b) Relacionales (su resultado es un valor de verdad): =, , =, c) Lgicos o Booleanos (su resultado es un valor de verdad): not, and, ord) Alfanumricos: + (concatenacin)e) Asociativos. El nico

Operador asociativo es el parntesis ( ), el cual permite indicar en qu orden deben realizarse las operaciones. Cuando una expresin se encuentra entre parntesis, indica que las operaciones que estn dentro de ellos deben realizarse primero. Si en una expresin se utilizan ms de un parntesis se deber proceder primero con los que se encuentren ms hacia el centro de la expresin.Jerarqua de Operaciones:

TIPOS DE DATOS

Los primeros lenguajes de programacin no usaban objetos, solo variables. Una variable podramos decir que es un espacio de la memoria del ordenador a la que asignamos un contenido que puede ser un valor numrico (slo nmeros, con su valor de clculo) o de tipo carcter o cadena de caracteres (valor alfanumrico que constar slo de texto o de texto mezclado con nmeros).Como ejemplo podemos definir una variable a que contenga 32 y esto lo escribimos como a = 32. Posteriormente podemos cambiar el valor de a y hacer a = 78. O hacer a equivalente al valor de otra variable b as: a = b.

Esquema de sntesis de tipos de datos en Java

VARIABLESUna variable en Java es un identificador que representa una palabra de memoria que contiene informacin. El tipo de informacin almacenado en una variable slo puede ser del tipo con que se declar esa variable. Una variable se declara usando la misma sintaxis de C. Por ejemplo la siguiente tabla indica una declaracin, el nombre de la variable introducida y el tipo de informacin que almacena la variable: Declaracin identificador tipo

int i; i entero

String s; s referencia a string

int a[]; a referencia a arreglo de enteros

int[] b; b referencia a arreglo de enteros

METODS EN JAVAUn mtodo en Java es un conjunto de instrucciones definidas dentro de una clase, que realizan una determinada tarea y a las que podemos invocar mediante un nombre.Cuando se llama a un mtodo, la ejecucin del programa pasa al mtodo y cuando ste acaba, la ejecucin contina a partir del punto donde se produjo la llamada.Utilizando mtodos:- Podemos construir programas modulares. -Se consigue la reutilizacin de cdigo. En lugar de escribir el mismo cdigo repetido cuando se necesite, por ejemplo para validar una fecha, se hace una llamada al mtodo que lo realiza. En Java un mtodo siempre pertenece a una clase.Todo programa java tiene un mtodo llamado main. Este mtodo es el punto de entrada al programa y tambin el punto de salida. Estructura general de un mtodo java

La estructura general de un mtodo Java es la siguiente:

METODS TIPO PROCEDIMIENTO

Mtodos tipo procedimiento: son mtodos que realizan ciertas operaciones sin devolver un valor u objeto concreto. Un mtodo es tipo procedimientosi comienza con la palabra clave void(que traducido del ingls viene siendo vaco o nulo). En estos casos podemos decir que el tipo de retorno es void. De forma genrica:

/* Ejemplo - aprenderaprogramar.com *///Comentario descriptivo de qu hace el mtodo public void nombre Del Mtodo (tipo parmetro1, tipo parmetro2) {Cdigo del mtodo}

En general un mtodo con tipo de retorno void no llevar sentencia return, aunque en Java se permite que un mtodo de este tipo incluya la sentencia return. Si ocurre esto, la sentencia da lugar a que el mtodo finalice en ese punto sin ejecutar ninguna lnea ms de cdigo. Solo tiene sentido su uso asociado a que se cumplan ciertas condiciones.CODIFICACINCodificacin en Java permite a los desarrolladores crear muchos tipos diferentes de aplicacin. Proyectos Java aparecen ampliamente en contextos de escritorio y Web. Las ventajas del lenguaje Java de una serie de bibliotecas dedicadas a la realizacin de tareas comunes, como la conexin a fuentes de datos. Esto significa que los programadores pueden acceder a esta funcionalidad sin tener que poner en prctica de forma manual. Java codificacin sigue algunas reglas bsicas y es accesible incluso a los principiantes. Sintaxis bsica de .