Entries Tagged 'java' ↓

Capturar la pantalla con Java

Veamos como capturar la pantalla con Java.

Existe en Java un paquete muy útil que se llama java.awt.Robot la cual nos hará el trabajo sucio.

import java.awt.AWTException;
import java.awt.Robot;
import java.awt.Rectangle;
import java.awt.Toolkit;
import java.awt.image.BufferedImage;
import java.io.*;
import javax.imageio.ImageIO;
 
class CapturarPantalla {
  public static void main(String args[])
        throws AWTException, IOException {
     // captura la pantalla completa
     BufferedImage pantalla = new Robot().createScreenCapture(
     new Rectangle(Toolkit.getDefaultToolkit().getScreenSize()) );
     // Lo guarda como un JPEG
     File file = new File("pantalla.jpg");
     ImageIO.write(pantalla, "jpg", file);
   }
}

Screen capture with Java

Como pasar argumentos desde la linea de comandos en Java

class argumentos{
	public static void main(String args[]){
		if ( args.length == 0 ){
			System.out.println("ERROR!");
			return;
		}
		for ( int i = 0 ; i < args.length ; i++ ){
			System.out.println(args[i]);
		}
	}
}

How to pass command line argument in a java program

Hola mundo con Java

class saludos{
  public static void main(String args[]){
    System.out.println("Hola mundo!!");
  }
}

Java hello world

Lenguaje de programación Java

Historia de Java

Java no fue creado originalmente para el Web. SUN Microsystems lo desarrollo con el objetivo de crear un lenguaje independiente de plataforma y del sistema operativo para el desarrollo de electrónica de consumo (televisores, videos, equipo de audio, etc.).

El proyecto original, denominado green, comenzó apoyándose en C++, pero a medido que progresaba en su desarrollo, el equipo creador fue encontrándose con dificultades, decidieron desarrollar su propio lenguaje y en agosto de 1991 nació un nuevo lenguaje orientado a objetos, este lenguaje fue bautizado con el nombre de OAK.

A mediados de 1993 se lanzó Mosaic, el primer navegador para la Web y comenzó a crecer el interés por Internet. Entonces, se rediseñó el lenguaje para desarrollar aplicaciones para Internet y en enero de 1995 OAK se convirtió en Java.

A fines del siglo XX, Java llegó a ser el lenguaje de mayor acogida para programas de servidor. Utilizando una tecnología llamada JSP (similar a ASP de Microsoft), se hizó muy fácil escribir páginas dinámicas para sitios de Internet. Sumado a ésto, la tecnología de JavaBeans, al incorporarse con JSP, permitía utilizar el patrón MVC (modelo-vista-controlador) que ya tanto se había aplicado a interfaces gráficas.

Java llegó a ser extremadamente popular cuando Sun Microsystems introdujo la plataforma y el modelo de programación J2EE (Java 2 Enterprise Edition). Este modelo permite una separación entre la presentación de los datos al usuario (JSP o Applets), el modelo de datos (EJB), y el control (Servlets). Enterprise Java Beans (EJB) que es una tecnología de objetos distribuídos que pudo lograr el sueño de muchas empresas como Microsoft e IBM de crear una plataforma de objetos distribuídos con un monitor de transacciones. Con este nuevo estándar, empresas como BEA, IBM, Sun Microsystems, Oracle y otros crearon nuevos “servidores de aplicaciones” que tuvieron gran acogida en el mercado.

Además de programas del servidor, Java permite escribir programas de interfaz gráfica o textual. Además se pueden correr programas de manera incorporada o incrustada en los navegadores web de Internet, aunque ésto nunca llegó a popularizarse como se esperaba en un principio.

Los programas en Java generalmente son compilados a un lenguaje intermedio o bytecode, y luego interpretados por una máquina virtual (JVM). Esta última sirve como una plataforma de abstracción entre la máquina y el lenguaje permitiendo que se pueda “escribir el programa una vez, y correrlo en cualquier lado”. También existen compiladores nativos de Java, tanto propietario como libre. El compilador GCC de GNU compila Java a código de máquina.

Con la evolución de las diferentes versiones, no sólo se han producido cambios en el lenguaje, sino que se han producido cambios mucho más importantes en sus bibliotecas asociadas, que han pasado de unos pocos cientos en Java 1.0 a más de tres mil en Java 5.0. En particular, se han añadido APIs completamente nuevas, tales como Swing y Java2D.

Para poder ejecutar una aplicación java se requiere la máquina virtual de java (JVM) y para desarrollar aplicaciones java se requiere el kit de desarrollo de java (JDK).

El JDK se puede descargar de la página oficial de java.

Pasos para resolver un problema con la Computadora

Resolver problema

Análisis del Problema

Es la primera fase de la resolución de un problema por computadora. Esta fase requiere una clara definición donde se contemple exactamente lo que debe hacer el programa y el resultado o solución deseada.

Para poder definir bien un problema es conveniente responder a las siguientes preguntas:

  • ¿Qué entradas se requieren?
  • ¿Qué salidas se requieren?
  • ¿Qué método produce la salida deseada?

Ejemplo:

  • Problema: Área de un Cuadrado
  • Entrada: Lado > Num
  • Salida: Área > Num
  • Método: Lado2 > Num

Diseño del Algoritmo

En la etapa de diseño se determina como hace el programa la tarea determinada. Los métodos más eficaces para el proceso de diseño se basan en el conocido “divide y vencerás”. Es decir, la resolución de un problema complejo se realiza dividiendo el problema en subproblemas, a continuación, dividir estos subproblemas en otros de nivel más bajo, hasta que pueda ser implementada una solución por computadora.

Cada subprograma es resuelto mediante un módulo, que tiene un solo punto de entrada y uno de salida; a esto se le llama diseño modular.

Solución por programación

Suele ser la parte más fácil de todo el proceso, aquí es necesario manejar un lenguaje de programación y convertir nuestra respuesta diseñada en código ejecutable por la computadora. Existen muchos lenguajes que nos servirían para implementar el programa entre los más usados están el C#, el PHP, el C++ y el Java.

Muchos algoritmos son ideados para implementarse en un programa. Sin embargo, los algoritmos pueden ser implementados en otros medios, como una red neuronal, un circuito eléctrico o un aparato mecánico.