martes, 20 de agosto de 2013

 ACT. 1

Lenguaje JAVA 1er Parcial


¿Que es el Lenguaje Java?


El lenguaje de programación Java fue originalmente desarrollado por James Gosling de Sun Microsystems (la cual fue adquirida por la compañía Oracle) y publicado en el 1995 como un componente fundamental de la plataforma Java de Sun Microsystems. Su sintaxis deriva mucho de C y C++, pero tiene menos facilidades de bajo nivel que cualquiera de ellos. Las aplicaciones de Java son generalmente compiladas a bytecode (clase Java) que puede ejecutarse en cualquier máquina virtual Java (JVM) sin importar la arquitectura de la computadora subyacente. Java es un lenguaje de programación de propósito general, concurrente, orientado a objetos y basado en clases que fue diseñado específicamente para tener tan pocas dependencias de implementación como fuera posible. Su intención es permitir que los desarrolladores de aplicaciones escriban el programa una vez y lo ejecuten en cualquier dispositivo (conocido en inglés como WORA, o "write once, run anywhere"), lo que quiere decir que el código que es ejecutado en una plataforma no tiene que ser recompilado para correr en otra. Java es, a partir del 2012, uno de los lenguajes de programación más populares en uso, particularmente para aplicaciones de cliente-servidor de web, con unos 10 millones de usuarios reportados.1 2
La compañía Sun desarrolló la implementación de referencia original para los compiladores de Java, máquinas virtuales, y librerías de clases en 1991 y las publicó por primera vez en el 1995. A partir de mayo del 2007, en cumplimiento con las especificaciones del Proceso de la Comunidad Java, Sun volvió a licenciar la mayoría de sus tecnologías de Java bajo la Licencia Pública General de GNU. Otros también han desarrollado implementaciones alternas a estas tecnologías de Sun, tales como el Compilador de Java de GNU y el GNU Classpath.





¿Que es el Lenguaje de Programacion?

Un lenguaje de programación es un lenguaje formal diseñado para expresar procesos que pueden ser llevados a cabo por máquinas como las computadoras.
Pueden usarse para crear programas que controlen el comportamiento físico y lógico de una máquina, para expresar algoritmos con precisión, o como modo de comunicación humana.1
Está formado por un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones. Al proceso por el cual se escribe, se prueba, se depura, se compila (de ser necesario) y se mantiene el código fuente de un programa informático se le llama programación.
También la palabra programación se define como el proceso de creación de un programa de computadora, mediante la aplicación de procedimientos lógicos, a través de los siguientes pasos:
  • El desarrollo lógico del programa para resolver un problema en particular.
  • Escritura de la lógica del programa empleando un lenguaje de programación específico (codificación del programa).
  • Ensamblaje o compilación del programa hasta convertirlo en lenguaje de máquina.
  • Prueba y depuración del programa.
  • Desarrollo de la documentación.
Existe un error común que trata por sinónimos los términos 'lenguaje de programación' y 'lenguaje informático'. Los lenguajes informáticos engloban a los lenguajes de programación y a otros más, como por ejemplo HTML (lenguaje para el marcado de páginas web que no es propiamente un lenguaje de programación, sino un conjunto de instrucciones que permiten diseñar el contenido de los documentos).
Permite especificar de manera precisa sobre qué datos debe operar una computadora, cómo deben ser almacenados o transmitidos y qué acciones debe tomar bajo una variada gama de circunstancias. Todo esto, a través de un lenguaje que intenta estar relativamente próximo al lenguaje humano o natural. Una característica relevante de los lenguajes de programación es precisamente que más de un programador pueda usar un conjunto común de instrucciones que sean comprendidas.






Act. 2

LA MÁQUINA VIRTUAL JAVA
(Java virtual machine, JVM)
Es un programa ejecutable en una plataforma específica, capaz de interpretar y ejecutar instrucciones expresadas en un código binario especial (Java bytecode), el cual es generado por el compilador del lenguaje Java.
Con una máquina virtual para diferentes entorno podemos utilizar, por ejemplo, un programa .class
escrito en alguna versión de WIndows e interpretarlo en un entonrno Linux.
API Java (Application Programming interface)

La API Java es una interfaz de programación que da a los programadores un ambiente de desarrollo completo así como una infraestructura.

Provee un conjunto de clases útiles para efectuar las tareas necesarias dentro de un programa.

Está organizada enpaquetes, donde cada paquete contiene un conjunto de clases relacionadas semánticamente.

Java bytecode

El código binario de java (bytecode) es un código máquina de bajo nivel, factible incluso como lenguaje de entrada para un microprocesador físico.
En un código intermedio más abstracto que el código máquina. Es un archivo binario que contiene código maquina producido por el compilador.
Cada código de operación tiene una longitud de un byte.

Cada instrucción tiene un código de operación entre 0 y 225 seguido de parámetros tales como registros, direcciones de memoria, etc.
Algunos sistemas, llamados traductores dinámicos o compiladores Just-in-time traducen el bytacode a código máquina inmediatamente antes de su ejecución para mejorar la velocidad de ejecución.
Su ventaja es su portabilidad: el mismo código binario puede ser ejecutado en diferentes plataformas y arquitecturas.
Los archivos del código fuente de Java (archivos con extensión. java) son compilados en un formato llamado bytecode (archivos con extensión.class),que puede ser ejecutado entonces por el interprete de java conocido como Máquina virtual (JVM).JVM existe para casi todos los sistemas operativos como Windows, Macintosh OS, UNIX, etc.
1.-CODIGO FUENTE =========> 2.- código binario de =========> 3.- código cliente
(nombre1.java) JAVA- BYECODE entendible para una
(nombre2.class) computadora especifica


HISTORIA DEL LENGUAJE JAVA

Java es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principio de los años 90´s.
En Diciembre de 1950 Patrick Naughton, ingeniero de Sun Microsystems, reclutó a varios colegas entre ellos James Gosling y Mike Sheridan para trabajar sobre un nuevo proyecto conocido como "El proyecto verde".
Con la ayuda de otros ingenieros, empezaron a trabajar en una pequeña oficina en Sand Hill Road en Menlo Park, California.
Y así interrumpió todas las comunicaciones regulares con Sun y trabajó sin descanso durante 18 meses.
Intentaban desarrollar una nueva tecnología para programar la siguiente generación de dispositivos inteligentes, en los que Sun veía un campo nuevo a explorar.
Crear un lenguaje de programación fácil de aprender y de usar.
En un principio se consideraba C++ como lenguaje a utilizar, pero tanto Gosling como Bill Joy lo encontraron inadecuado. Gosling intentó primero extender y modificar C++ resultando el lenguaje C++ ++ - (++ - porque se añadían y eliminaban características a C++), pero lo abandonó para crear un nuevo lenguaje desde cero al que llamo Oak (roble en inglés, según la versión mas aceptada, por el roble que veía através de la ventana de su despacho).
El resultado fue un lenguaje que tenía similitudes con C, C++ y Objetive C y que no estaba ligado a un tipo de CPU concreta.
Mas tarde, se cambiaría el nombre de Oak a Java, por cuestiones de propiedad intelectural, al existir ya un lenguaje con el nombre de Oak.
Se supone que le pusieron ese nombre mientras tomaban café (Java es nombre de un tipo de café, originario de Asia), aunque otros afirman que el nombre deriva de las siglas de James Gosling, Arthur Van Hoff, y Andy Bechtolsheim.
En Agosto de 1991 Oak ya corría sus primeros programas.
Para 1992, el equipo ya había desarrollado un sistema en un prototipo llamado Star7 (*7), dispositivo parecido a una PDA, cuyo nombre venía de la combinación de teclas del teléfono de la oficina del Proyecto Green que permitía a los usuarios responder al teléfono desde cualquier lugar.
Por su parte, el presidente de la compañía Sun, Scott McNealy, se dio cuenta de forma oportuna y estableció el Proyecto Verde como una subsidiaria de Sun.
Después de mostrar a Scott McNealy y Bill Joy los prototipos de bajo nivel del sistema, continuán con el desarrollo, incluyendo sistema operativo, Green OS; el lenguaje Oak, las librerías, alguna aplicación básica y el hardware, hasta que el 3 de septiembre de 1992 se termina el desarrollo y con ello el Proyecto Verde.
De 1993 a 1994, el equipo de Naughton se lanzó en busca de nuevas oportunidades en el mercado, mismas que se fueron dando mediante el sistema operativo base.
La incipiente subsidiaria fracasó en sus intentos de ganar una oferta con Time-Warner, sin embargo el equipo concluyó que el mercado para consumidores electrónicos smart y las cajas Set-Up en particular, no eran del todo eficaces.
La subsidiaria Proyecto verde fue amortizada por la compañía Sun a mediados de 1994.
Afortunadamente, el cese del Proyecto Verde coincidió con el nacimiento del fenómeno mundial WEB.
Al examinar las dinámicas de Internet, lo realizado por el ex equipo verde se adecuaba a este nuevo ambiente.
Patrick Naughton procedió a la construcción del lenguaje de programación Java que se accionaba con un browser prototipo.
El 29 de septiembre de 1994 se termina el desarrollo del prototipo de HotJava.
Cuando se hace la demostración a los ejecutivos de Sun, esta vez, se reconoce el potencial de Java y se acepta el proyecto.
Con el paso del tiempo HotJava se convirtió en un concepto práctico dentro del lenguaje Java y demostró que podría proporcionar multiplataformas para que el código pueda ser bajado y corrido del Host del World Wide Web y que de otra forma no son seguros.
Una de las características de HotJava fue su soporte para los
"applets", que son las partes de Java que pueden ser cargadas mediante una red de trabajo para después ejecutarlo localmente y así lograr soluciones dinámicas en computación acordes al rápido crecimiento del ambiente WEB.

El 23 de mayo de 1995, en la conferencia SunWorld `95, John Gage, de Sun Microsystems, y Marc Andreessen, cofundador y vicepresidente de Netscape, anunciaban la versión alpha de Java, que en ese momento solo corría en Solaris, y el hecho de que Java iba a ser incorporado en Netscape Navigator, el navegador mas utilizado de Internet.
Con la segunda alpha de Java en Julio, se añade el soporte para Windows NT y en la tercera, en Agosto, para Windows 95.
En enero de 1995 Sun formá la empresa Java Soft para dedicarse al desarrollo de productos basados en la tecnologías Java, y así trabajar con terceras partes para crear aplicaciones, herramientas, sistemas de plataforma y servicios para aumentar las capacidades del lenguaje. Ese mismo mes aparece la versión 1.0 del JDK.

Netscape Communications decide apoyar a Java applets en Netscape Navigator 2.0.
Ese fue el factor clave que lanzó a Java a ser conocido y famoso.
Y como parte de su estrategia de crecimiento mundial y para favorecer la promoción de la nueva tecnología, Java Soft otorgó permisos para otras compañías para que pudieran tener acceso al código fuente y al mismo tiempo mejorar sus navegadores.
También les permitía crear herramientas de desarrollo para programación Java y los facultaba para acondicionar máquinas virtuales Java (JVM), a varios sistemas operativos.
Muy pronto las licencias o permisos contemplaban prestigiosas firmas como: IBM, Microsoft, Symantec, Silicon Graphics, Oracle, Toshiba y Novell.
Los apples Java (basados en JDK 1.02) son apoyados por los dos más populares navegadores web (Nestcape Navigator 3.0 y Microsoft Internet Explorer 3.0. I.B.M./Lotus, Computer Asociates, Symantec, Informix, Oracle, Sybase y otras poderosas empresas de software están construyendo Software 100% puro JAVA, por ejemplo el Corel Office que actualmente está en versión Beta.
Los nuevos proyectos de Java son co-patrocinados por cientos de millones de dólares en capital disponible de recursos tales como la Fundación Java, un fondo común de capital formado el verano pasado por 11 compañías, incluyendo Cisco Systems, IBM, Netscape y Oracle.
Hoy en día, puede encontrar la tecnología Java en redes y dispositivos que comprenden desde Internet y superordenadores cientifícos hasta portátiles y teléfonos móviles; desde simuladores de mercado en Wall Street hasta juegos de uso doméstico y tarjetas de crédito: Java está en todas partes.
CARACTERISTICAS PRINCIPALES DEL LENGUAJE JAVA
Y ¿POR QUE SE UTILIZA?
VENTAJAS Y CARACTERISTICAS
Java fue diseñado enfocandose en la seguridad y portabilidad, teniendo esto en cuenta los rasgos bajos como tipos de datos especificos de hardware y punteros a la memoria parcial fueron itencionalmente omitidos.
Un Apllet no puede leer o escribir en los archivos de los clientes, así que no hay como traspasar un virus.
También un Applet no puede enviar informació de regreso del cliente al servidor, lo que aumenta la seguridad en la red y en internet.
1.- Usar la metodológia de programación orientada al objeto.
2.- Tener plataforma independiente - permitir que el mismo programa sea ejecutado en plataformas múltiples de computadoras (o portable)
3.- Contener el apoyo incorporado a uso en las redes de computadoras
4.- Ser diseñado para ejecutar en forma segura códigos de fuentes remotas que pasan muchas pruebas antes de ejecutarse.
5.- Ser facil de usar y tomar prestadas las partes buenas de los lenguajes orientados a objetos anteriores como por ejemplo C ++

SIMPLE
DISTRIBUIDO
FUERTE
DINÁMICO


ACT. 3


Desventajas de Java

-Java puede ser considerablemente más lento y puede tomar más espacio en memoria que otros lenguajes compilados, como C y C + + de desarrollo, aplicaciones Java
-Java es principalmente un lenguaje único paradigma e incluso la apariencia de las aplicaciones de interfaz gráfica de usuario es muy diferente de otras aplicaciones.

- Hay diferentes tipos de soporte técnico para la misma herramienta, por lo que el análisis de la mejor opción se dificulta
-Para manejo a bajo nivel deben usarse métodos nativos, lo que limita la portabilidad.
- El diseño de interfaces gráficas con awt y swing no es simple.o Existen herramientas como el JBuilder que permiten generar interfaces gráficas de manera sencilla, pero tienen un costo adicional.
- Puede ser que no haya JDBC para bases de datos poco comerciales.
- Algunas herramientas tienen un costo adicion.
http://es.prmob.net/java/sun-microsystems/java-virtual-machine-2461459.html



¿Que es una Clase?

Una clase de Java es una plantilla donde se definen los atributos y los metodos para los objetos que se van a crear a partir de esa clase.

1) ¿Que es un atributo? un atributo es una propiedad que tiene la clase, ejemplo: la clase calculadora, los atributos de la clase calculadora serian numero1 y numero2.

2) ¿Que es un metodo? un metodo define una funcion de la clase, lo que hace una clase, ejemplo los metodos que podria tener la clase calculadora serian sumar, restar, multiplicar y dividir. Sencillamente los metodos definen las tareas o las acciones de la clase.

Las Clases comprenden el estilo de diseño e implementación más utilizado en el modelado por objetos, aunque no es el único.
Para empezar a utilizar Clases, entender su funcionamiento y como consecuencia, su utilización e importancia, es necesario recordar algunos principios básico de la Programación en Java.
En el lenguaje Java existen distintos Tipos. Un Tipo es, como su nombre lo indica un "tipo" de elemento programable ya definido dentro del lenguaje.
Los principales Tipos Primitivos de Java son: boolean (falso o verdadero), byte, short, int, float, double, long y char.
Ahora pensemos un momento: ¿qué sucede si necesitamos representar o utilizar en nuestros programas "Tipos" no definidos? ¿qué sucedería si lo que necesito guardar o manipular es la información de una persona? ¿cómo manejo fechas? ¿cómo declaro horarios? ¿cómo represento un auto? Son muchas las preguntas que se responden mediante la implementación de la programación de Clases.
Una Clase puede considerarse como la representación programada de un objeto o situación real y existente del mundo cotidiano. Las Clases son la forma abstracta de manejar la información de manera computacional.
http://es.wikibooks.org/wiki/Programaci%C3%B3n_en_Java/Clases

¿Que es un objeto?

Los objetos son la clave para entender la tecnología orientada 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 del mundo real comparten dos características: Todos tienen estado y comportamiento. Los perros tienen estado (nombre, color, raza, hambriento) y comportamiento (ladrando, buscando, meneando la cola). Las bicicletas también tienen un estado (marcha actual, cadencia de pedaleo actual, velocidad actual) y comportamiento (cambio de marcha, cambio de cadencia de pedaleo, frenar). Identificar el estado y el comportamiento de los objetos del mundo real es una gran ayuda para empezar a pensar en términos de programación orientada a objetos.
Tómese un momento ahora mismo para observar los objetos del mundo real que hay a su alrededor. Para cada uno de los objetos que ve, hágase dos preguntas: «¿En qué posibles estados puede estar este objeto?» y «¿Qué posibles comportamientos puede realizar?»". Asegúrese de escribir sus observaciones. Mientras lo haga, verá que los objetos del mundo real varían en complejidad, su lámpara de escritorio puede tener solo dos estados (encendido y apagado) y dos posibles comportamientos (encender y apagar), pero su radio tendrá más estados (encendido, apagado, volumen actual, emisora actual) y comportamientos (encender, apagar, subir volumen, bajar volumen, buscar y sintonizar). También observará que algunos objetos, a su vez, también contendrán otros objetos. Todas estas observaciones del mundo real son reproducibles en el mundo de la programación orientada a objetos.
http://www.codexion.com/tutorialesjava/java/concepts/object.html



¿Que es un modelo de objeto?

En computación, un modelo de objeto tiene dos significados relacionados pero distintos:
  1. Las propiedades de objetos en general, en un lenguaje de programación específico, la tecnología, la notación o la metodología que los usa. Por ejemplo, el modelo de objetos Java, el modelo de objetos COM, o el modelo de objetos de OMT. Tales modelos de objetos por lo general se definen usando conceptos como clase, mensaje, herencia, polimorfismo y encapsulación. Hay una extensa literatura sobre modelos de objetos formalizados como un subconjunto de la semántica formal de los lenguajes de programación.
  2. Una colección de objetos o clases por las cuales un programa puede examinar y manipular algunas partes específicas de su mundo. En otras palabras, la interfaz orientadao a objetos a algún servicio o sistema. Tal interfaz se dice que es el modelo de objetos del servicio o sistema representado. Por ejemplo, el Document Object Model (DOM) es una colección de objetos que representan una página en un navegador web, usada por programas script para examinar y cambiar dinámicamente la página. Hay un modelo de objetos de Microsoft Excel para controlarlo desde de otro programa, y el ASCOM Telescope Driver es un modelo de objetos para controlar un telescopio astronómico.
http://es.wikipedia.org/wiki/Modelo_de_objeto


¿Que es un Mensaje?

La API Java Message Service (en español servicio de mensajes Java), también conocida por sus siglas JMS, es la solución creada por Sun Microsystems para el uso de colas de mensajes. Este es un estándar de mensajería que permite a los componentes de aplicaciones basados en la plataforma Java2 crear, enviar, recibir y leer mensajes. También hace posible la comunicación confiable de manera síncrona y asíncrona.
El servicio de mensajería instantánea también es conocido como Middleware Orientado a Mensajes (MOM por sus siglas en inglés) y es una herramienta universalmente reconocida para la construcción de aplicaciones empresariales.
Dicha API es parte integral de la versión 2 de Java.
Existen dos modelos de la API JMS, los cuales son:
Modelo Punto a Punto (point to point): Este modelo cuenta con solo dos clientes, uno que envía el mensaje y otro que lo recibe. Este modelo asegura la llegada del mensaje ya que si el receptor no esta disponible para aceptar el mensaje o atenderlo, de cualquier forma se le envía el mensaje y este se agrega en una cola del tipo FIFO para luego ser recibido según haya entrado.
Modelo Publicador/Suscriptor (Publish/subscribe): Este modelo cuenta con varios clientes, unos que publican temas o eventos, y los que ven estos temas, a diferencia del modelo punto a punto este modelo tiende a tener más de un consumidor.
Ambos modelos pueden ser síncronos mediante el método receive y asíncronos por medio de un MessageListener.
http://es.wikipedia.org/wiki/Java_Message_Service



¿Que es la Jerarquia de Clases?


Durante la generación de código en Java ,es recomendable y casi necesariotener siempre a la vista la documentación on-line del API deJava . En dichadocumentación es posible ver tanto la jerarquía de clases, es decir la relaciónde herencia entre clases, como la información de los distintos packages quecomponen las librerías base de Java .Es importante distinguir entre lo que significa herencia  y package . Un package  es una agrupación arbitraria de clases, una forma de organizar lasclases. La herencia sin embargo consiste en crear nuevas clases en base a otrasya existentes. Las clases incluidas en un package no derivan en general de lamisma clase.En la documentación on-line se presentan ambas visiones:
“Package Index”
y
“Class Hierarchy”
. La primera presenta la estructura del API de Java  agrupada por packages, mientras que en la segunda aparece la jerarquía de clases.Hay que resaltar el hecho de que todas las clases en
Java  son derivadas de laclase java.lang. Object, por lo que heredan todos los métodos y variables deésta.Si se selecciona una clase en particular, la documentación muestra unadescripción detallada de todos los métodos y variables de la clase. A su vezmuestra su herencia completa (partiendo de la clase java.lang.Object).
 http://es.scribd.com/doc/53047380/38/La-Jerarquia-de-Clases-de-Java-API



¿Que es un Paquete?  

Un paquete es un espacio de nombre que organiza un conjunto de clases e interfaces relacionadas. Puede pensar en los paquetes como algo similar a las diferentes carpetas de su ordenador. Puede tener guardadas páginas HTML en una carpeta, imágenes en otra y scripts y aplicaciones en otra distinta. Puesto que un software escrito en el lenguaje de programación Java puede llegar a consistir de cientos o miles de clases individuales, tiene sentido que se organicen las clases e interfaces relacionadas en paquetes.
La plataforma Java proporciona una enorme biblioteca de clases (un conjunto de paquetes) adecuado para usar en sus propias aplicaciones. A esta biblioteca se la conoce como la «Interfaz de Programación de Aplicaciones» («Application Programming Interface» en inglés) o por su abreviatura «API». Sus paquetes representan las tareas más comunes asociadas a la programación en general. Por ejemplo, un objeto String contiene estado y comportamiento para cadenas de caracteres («character strings»); un objeto File permite a un programador crear, eliminar, inspeccionar, comparar o modificar un archivo en un sistema de archivos; un objeto Socket permite la creación y uso de sockets de red; otros objetos de interfaz gráfica («GUI») controlan botones, cajas de selección y cualquier otra cosa relacionada con las interfaces gráficas de usuario. Literalmente hay miles de clases de las que elegir. Esto le permite al programador enfocar sus esfuerzos en el diseño de la aplicación, más que en la infraestructura requerida para hacerla funcionar.
La Java Platform API Specification contiene el listado completo de todos los paquetes, interfaces, clases, campos y métodos proporcionados por la Plataforma Java 6, edición estándar («Java Platform 6, Standard Edition»). Cargue esta página en su navegador y añádala a sus marcadores o favoritos. Siendo programador se convertirá en su documentación de referencia más importante.
http://www.codexion.com/tutorialesjava/java/concepts/package.html


¿Que es relaciones de objetos?

Relación entre objetos
Es posible crear objetos de diferentes clases y establecer una relación entre ellos. Cuando los objetos son relacionados es posible acceder a los miembros de un objeto desde otro objeto.
Esto supone una ventaja cuando un objeto debe comenzar el procesamiento de información justo en donde otro objeto habría terminado el procesamiento.
Adicionalmente nos permite pasar información de un objeto a otro y de ahí a otro objeto de forma encadenada.
Existen 3 formas de realizar la relación entre objetos:
*Usando referencia
*Concepto de la clase interna
*Herencia

Relacionando objetos usando referencia
¿Cómo creo una referencia a un objeto de la clase Empleado?
Empleado e1 = new Empleado();
Empleado refE1 = e1; //creamos una referencia a el objeto e1

Para crear una referencia entre 2 objetos, simplemente es necesario hacer una referencia de una clase dentro de otra. Esta referencia será declarada como una variable de instancia dentro de la clase en donde deseamos realizar la relación.
http://www.buenastareas.com/ensayos/Relaci%C3%B3n-Entre-Objetos-Java/3643403.html




¿Que lenguaje de programacion utiliza oop?

La programación orientada a objetos no es un concepto nuevo, sus inicios y técnicas de programación se iniciaron a principios de los 70. Se puede definir programación orientada a objetos (OOPS) como una técnica de programación que utiliza objetos como bloque esencial de construcción. La OOPS, es un tipo de programación más cercana al razonamiento humano. La OOPS surge como una solución a la programación de grandes programas, y para solventar el mantenimiento de dichas aplicaciones, ya que en la programación estructura el más mínimo cambio supone la modificación de muchas funciones relacionadas, en cambio con la OOPS solo es cuestión de añadir o modificar métodos de una clase o mejor, crear una nueva clase a partir de otra (Herencia). Dos lenguajes destacan sobre el resto para programar de esta forma, Smalltalk y C++.
Concepto de Objeto: Desde un punto de vista general un Objeto es una estructura de datos de mayor o menor complejidad con las funciones que procesan estos datos.
Dicho de otra forma, sería Datos más un Código que procesa estos datos. A los datos se les denomina miembros dato y a la función miembro o miembro funciones. Los datos están ocultos y sólo se puede acceder a ellos mediante la función miembro.


¿Que es Constructor JAVA?

Un constructor es un método especial de una clase que se llama automáticamente siempre que se declara un objeto de esa clase.

Su función es inicializar el objeto y sirve para asegurarnos que los objetos siempre contengan valores válidos.

Cuando se crea un objeto en Java se realizan las siguientes operaciones de forma automática:

1.  Se asigna memoria para el objeto.

2. Se inicializan los atributos de ese objeto con los valores predeterminados por el sistema.

3. Se llama al constructor de la clase que puede ser uno entre varios.


El constructor de una clase tiene las siguientes características:

Tiene el mismo nombre que la clase a la que pertenece.

En una clase puede haber varios constructores con el mismo nombre y distinto número de argumentos (se puede sobrecargar)

No se hereda.

No puede devolver ningún valor (incluyendo void).

Debe declararse público (salvo casos excepcionales) para que pueda ser invocado desde cualquier parte donde se desee crear un objeto de su clase.

MÉTODO CONSTRUCTOR POR DEFECTO

Si para una clase no se define ningún método constructor se crea uno automáticamente por defecto.

El constructor por defecto es un constructor sin parámetros que no hace nada. Los atributos del objeto son iniciados con los valores predeterminados por el sistema.
http://puntocomnoesunlenguaje.blogspot.mx/2012/07/normal-0-21-false-false-false_103.html 



¿Que es un proyecto en JAVA?

 Un proyecto Java podemos considerarlo como una serie de carpetas ordenadas y organizadas de acuerdo con una lógica para mantener organizado el código. Un proyecto suele constar de archivos .java, archivos .class y documentación.
Los archivos .java contienen el código fuente (entendible por humanos) que en un momento dado podemos modificar con un editor de textos y suelen encontrarse en carpetas de nombre src (source). Los archivos .class contienen el bytecode (no entendible por humanos pero sí por la máquina virtual Java) y suelen encontrarse en carpetas de nombre bin (binary).
La organización de los archivos en carpetas y la presencia de otros adicionales depende del entorno de desarrollo que utilicemos. Además, Java introduce un esquema organizativo a través de paquetes (packages) que comentaremos más adelante.
Para trabajar con proyectos en la mayoría de entornos, incluido BlueJ, debemos tenerlos en un soporte grabable accesible (por ejemplo en una carpeta de nuestro disco duro). No es válido por tanto un cd, dvd, unidad remota restringida o carpeta del disco duro con restricciones. El motivo es que los entornos de desarrollo trabajan grabando información en la carpeta del proyecto que se encuentre activo. Por tanto un soporte no escribible no es adecuado. Si queremos trabajar con un proyecto contenido en un cd o dvd, primero lo copiaremos a nuestro disco duro y después lo abriremos para trabajar con él.


 ACT. 4

Pasos para crear un programa en JAVA
  1. Crear el código fuente. Un archivo de código fuente contiene texto escrito en el lenguaje de programación Java. Se puede utilizar un simple editor de texto para crear y editar el código.
  2. Compilar el código fuente. El compilador translada el código fuente en instrucciones que la máquina virtual de Java pueda entender. El compilador crea esas instrucciones en un archivo bytecode.
  3. Ejecutar el programa. El intérprete Java, instalado en el sistema operativo, implementa la máquina virtual de Java. Este intérprete transforma el bytecode en instrucciones que pueda entender el sistema operativo.

PASOS PARA CREAR UN PROGRAMA

1.- ELABORA UN PLAN DE LO DEBE HACER TU PROCESO Y QUE PROBLEMAS DEBE RESOLVER

2.- ANALIZA LOS REQUERIMIENTOS Y LAS ESPECIFICACIONES,  QUE DEBE HACER EL PROGRAMA PARA CUMPLIR LOS REQUERIMIENTOS

3.- CREA LA CLASE, DETERMINA SUS RESPONSABILIDADES (QUE DEBE HACER) Y SU COLABORACION CON LAS OTRAS CLASES.

DEFINE LOS OBJETOS.

4.- CREA EL CODIGO DEL PROGRAMA, COMPILADO Y DEPURA LOS ERRORES

5.- Agrega diferentes posibilidades deL USO PARA AUMENTAR  SU FUNCIONABILIDAD (ITERACIÓN DE LOS CASOS DE USO).S DEPENDIENDO DE LAS NECESIDADES.

6.- MANTENIMIENTO:  SE AGREGAN NUEVAS POIBILIDADES DEPENDIENDO DE LAS NECESIDAD




ESTRUCTURA GENERAL DE UN PROGRAMA EN JAVA

EN LA ESTRUCTURA NORMAL DE UN PROGRAMA EN JAVA APARECE UNA CLASE QUE CONTIENE EL PROGRAMA PRINCIPAL (CONTIENE LA FUNCIÓN 

( main() ) Y ALGUNAS CLASES DE USUARIO (ESPECIFICAS DE LA APLICACIÓN QUE SE ESTA DESARROLLANDO) QUE SON UTILIZADAS POR EL PROGRAMA PRINCIPAL.

EL ARCHIVO FUENTE ( *.java) puede contener más de una clase. Su nombre debe coincidir con él de la clase public  (agregando la extensión *.java)

ES IMPORTANTE QUE COINCIDAN MAYÚSCULAS Y MINÚSCULAS.




Actividad  5
RESOLVER EJERCICIO 1: (IDENTIFICAR CLASE, SUBCLASE Y OBJETOS)
EJECICIO 2: (REALIZA DIAGRAMA DE JERARQUIA DE CLASES)
EJERCICIO 1:Identifica los objetos y sus clases y atributos segun el caso siguiente.
Se encuentran muchos pacientes en el hospital, cada paciente tiene su nombre, dirección, reporte de enfermedad. Los pacientes programan una cita con el doctor para un examen medico previo. Tambien se hace el examen de laboratorio.
EJERCICIO 2:Crea un diagrama de clases, como primer objeto un estudiante con atributos nombres, fecha de nacimiento, año, grupo, teléfono.
Segundo objeto un curso con atributos, código de curso, titulo y  horas.



Actividad 6: 

Crear una carpeta con tu nombre ejemplo: Rosaura-Java Dentro de esta carpeta crear otras 3 con los siguientes nombres:
Parcial 1
Parcial 2
Parcial 3

Actividad 7: 

EJEMPLO DE UN ALGORITMO,  DIAGRAMA DE FLUJO y PROGRAMA EN C++
QUE LEEN COMO DATO DE ENTRADA LAS VARIABLES A y B DE TIPO ENTERO E INTERCAMBIAN  LOS VALORES DE LAS VARIABLES A Y B, ESCRIBIENDO COMO RESULTADO LAS VARIABLES A y B.



#include
using namespace std;
int main()
{
int a,b,c;
cout<<"ingresa el valor de A ",a;
cout<<"ingresa el valor de B ",b;
c=a;
a=b;
b=c;
cout<<"el valor de A es : ",a;
cout<<"el valor de B es : ",b;

system("pause");
return 0;
}
.


#include<iostream>
using namespace std;
int main()
{
int a,b,c;
cout<<("cuál es valor de A ");
cin>>a;
cout<<("cuál es valor de B ");
cin>>b;
cout<<("cuál es valor de C ");
cin>>c;
if(a>b&& a>c)
{if (b<c)
{cout<<("MAYOR ES A")<<endl;
cout<<("MENOR ES B")<<endl;}
else
{cout<<("MAYOR ES A")<<endl;
cout<<("MENOR ES C")<<endl;}}
else
{ if (b>c)
{if (a<c)
{cout<<("MAYOR ES B")<<endl;
cout<<("MENOR ES A")<<endl; }
else
{cout<<("MAYOR ES B")<<endl;
cout<<("MENOR ES C")<<endl;}}
else
{if (a<b)
{cout<<("MAYOR ES C")<<endl;
cout<<("MENOR ES A")<<endl;}
else
{cout<<("MAYOR ES C")<<endl;
cout<<("MENOR ES B")<<endl;}}}
system("pause");
return 0;          
}

    1.- INICIO          
        2.- ESCRIBIR "DAME EL VALOR DE A"
        3.- LEER A
        4.- ESCRIBIR "DAME EL VALOR DE B"
        5.- LEER B
        6.- ESCRIBIR "DAME EL VALOR DE C"
        7.- LEER C
        8.- SI (A>B y A>C)
             SI
        9.- SI (B<C)
             SI
      10.- ESCRIBIR "MAYOR ES A", A
      11.- ESCRIBIR "MENOR ES B", B
             NO
      12.- ESCRIBIR "MAYOR ES A", A
      13.- ESCRIBIR "MENOR ES C", C
             NO
      14.- SI (B>C)
             SI
      15.- SI (A<C)
             SI
        16.- ESCRIBIR “MAYOR ES B”, B
        17.- ESCRIBIR “MENOR ES A”, A
               NO
        18.- ESCRIBIR “MAYOR ES B”, B
      19.- ESCRIBIR “MENOR ES C”, C
             NO
      20.- SI (A<B)
      21.- ESCRIBIR “MAYOR ES C”, C
      22.- ESCRIBIR “MENOR ES A “, A
             NO
         23.- ESCRIBIR “MAYOR ES C”, C
         24.- ESCRIBIR “MENOR ES B”, B
       25.- FIN

Act.9


 
 
 
Programa 2:
 
 

 
 
Act. 10
 
 
 
 
Act. 11


4. Programa que lee por teclado el valor del radio de una circunferencia y calcula y muestra por pantalla la longitud y el área de la circunferencia.

Longitud de la circunferencia = 2*PI*Radio, Area de la circunferencia = PI*Radio^2

import java.util.*;
public class Main {
public static void main(String [ ] args) {
Scanner sc = new Scanner(System.in);
double radio, longitud, area;
System.out.println("Introduce radio de la circunferencia:");
radio = sc.nextDouble();
longitud = 2 * Math.PI * radio;
area = Math.PI * Math.pow(radio, radio);
System.out.println("Longitud de la circunferencia -> " + longitud);
System.out.println("Area de la circunferencia -> " + area);
}
}







Programas JAVA
 
 
Este Programa te permite convertir Toneladas a Kilos
 
Este programa te permite convertir Kilos a Toneladas
 
 
 
Este programa te permite convertir Años a Dias
 
Este programa te permite convertir Dias a Años
 

Este programa te permite convertir Segundos a Minutos


Este programa te permite convertir Minutos a Segundos


Este programa te permite convertir Segundos a Horas




Este programa te permite convertir Horas a Segundos


Este programa te prmite convertir Minutos a Horas


Este programe te permite convertir Horas a Minutos


Este programa te permite convertir Pesos a Dolares+


Este programa te permite convertir Dolares a Pesos







 
 

Este programa te permite convertir Mililitros a Litros
 

Este programa te permite convertir Litros a Mililitros