Archivo etiqueta programacion

Los mejores libros para aprender Java

Buscando libros de java me he encontrado con una lista con los mejores libros para aprender este lenguaje de programación:

Objects First With Java: A Practical Introduction Using BlueJ (2nd Edition)

1. Objects First With Java: A Practical Introduction Using BlueJ (2nd Edition)

Autor: Michael Kölling

Descripción:

Start by learning about objects, first; what a great idea! This book begins with the direct manipulation of objects. No public static void main until the 4th chapter.

Head First Java

2.  Head First Java

Autor: Kathy Sierra

Descripción:

Left brain + right brain + humor = comprehension. Written by the founder of Javaranch.com, herself.

Java in a Nutshell, Fourth Edition

3.  Java in a Nutshell, Fourth Edition

Autor:
David Flanagan

Descripción:

The only paper reference book you will need.

The Java(TM) Developer's Guide to Eclipse

4.  The Java(TM) Developer’s Guide to Eclipse

Autor: Sherry Shavor

Descripción:

You need to learn a powerful IDE, and this is one of the best. The first half deals with learning to use the IDE and the second half shows you how to write plugins for Eclipse.

Sun Certified Programmer & Developer for Java 2 Study Guide (Exam 310-035 & 310-027)

5.  Sun Certified Programmer & Developer for Java 2 Study Guide (Exam 310-035 & 310-027)

Autor: Kathy Sierra

Descripción:

Only if you want to be certifiable! This is a great companion book to Head First Java.

, , , , , ,

1 Comentario

Si los lenguajes de programación fuesen personas

¿Qué pasa si los lenguajes de programación son personas reales como tú y yo? ¿Y si eran parte de las familias y tenía relaciones y los asuntos? ¿Alguna vez has pensado en ir a un supermercado y Visual Basic era la mujer joven que esperaba en la fila delante de usted?

Así lo hicieron los de jeez.eu con su articulo de If Programming Languages Were Real Persons, una traducción aproximada la podeis encontrar aquí.

Charlie C

CC is a 70 years old man that knows a lot. Perhaps too proud to reveal what he knows and sometimes too cryptic. He is a very strict person that follows his way of doing things and nothing seems possible to change his mind. In the past he was known as one of the strictest teachers in the Devel City university.

C can make you happy or disappoint you so much that, you want go for one of his sons or daughters. It depends on how much you try to learn his ways. The more you try the more he gives you.

C has been the main builder behind large projects like the Linuxious stadium and other large scaled buildings that we all use. He still works as a freelancer engineer and has involved in many other projects. Even at his age and with a lot of competition mainly from his son C++, C is still the choice of many companies to do things in Devel City.

C has 3 daughters :

  • Perl,
  • Java and
  • C#

and one son, C++.

Vin C++

KD-Scientist-GS72C++ is 45 years old teacher at the Devel City university, following his father’s steps to become as respected as he is. He loves his father so much that tried to continue his work and knowledge. Being a younger man than C though, made him a much more friendly guy, in the means of approach, than his father. He works as a teacher in the Devel City university and his students have a love and hate affair with him.

C++ often lets his students choose their way in the learning process since he follows a different way of teaching approach than his father used to. His students love him because he lets them work in their own way but sometimes they fear his inheritance of C.

Most of his followers admire his wide range of knowledge that mixes C’s knowledge with knowledge gained through his life.

There are also a lot of people that criticise him of being so wide. Most of the time they talk about him as a direct descendant of C that has adopted all of his fathers disadvantages and added some more to it.

C++ has spent many years to get rid some of his fathers bad habits and never does things not needed. He prefers to put as much effort as needed to do the job right and never bloats things. This is why his projects are much more targeted than his fathers.

Montana Perl

perlPerl is a 37 years old young woman and works as a data analyst at the department of linguistics in Devel City. As a sexy young woman, her colleagues just love to work with her.

She is extremely clever, very strict when it comes to how people treat to her but has added great value to her carrier with her regular way of expressing things and her unique way of finding needles in haystacks. Many of her colleagues depend on Perl to fix things and they call her a “Swiss knife”.

Her father was a source of inspiration for Perl. Many of her father’s principles was inherited and many more added to her philosophy of how things should be done and why. She is a rather laconic character that speaks less but means a lot.

Perl finds it easy to work on different environments and performs well with a little help from her beloved husband Cygwin who always supports her ambitions.

Perl loves to travel. Each summer she goes around the world, most of the time she will be riding a camel in Africa and many times you might find her playing Golf in the State of the union stadium.

She also loves poetry and runs her own amusement company named Acme which aids in teaching young kids the way to do things the funny way.

Bianca Java

javaJava is a 35 years old sexy young woman and a mother also. Being so young and mature, Java is one of the most popular women in Devel City. She is very adoptable and can work everywhere. Her name comes as a feature in many projects and a lot of companies want their projects to carry her “Java powered” signature of quality.

Being C++’s sister, does not stop Java to be one of the biggest competitors of her brother. As a woman, Java is clean and manages to keep garbage out of her place, clean and clear. She works at JVM, a company specialized in ports creation.

Java loves sun. Each summer is Java’s favorite season and she loves playing with Duke in the beach.

Java has created her own legacy, just like her father did and has 2 daughters that promise to be as competitive as she is. Her daughters also work at JVM and stand out from the crowd of talented persons in Devel City. Their names are:

  • Groovy and
  • Scala

Jessica Groovy

groovyGroovy is 21. Young but her impact in Devel City is bigger than just big. She was greatly inspired by her aunt Perl and her best friend Ruby.

Groovy is laconic and very expressive like her aunt, got any possible knowledge of her mother and added some cool ways to do her job in JVM. Most of the time she guides her colleagues in a rather strange way… by adding question marks (?) wherever she thinks something should be checked again.

Jane Scala

scalaScala is 22 years old.She is sweet and quite friendly but many of her friends in Devel City feel a little thread when it comes to job opportunities. The case of Twittorix, where the managers of the project asked Scala to do the job, made Ruby upset.

Scala like her little sister Groovy, got all of her mother’s knowledge and took it to a newer level. Not only Scala can work the same way as her mother does, she can also make new ways of working and doing things for a specific job which makes her a valuable part of JVM. Scala gets a lot of suggestions to work for NET (another ports creation company) but she is too busy with JVM at the moment that makes this a little hard to accomplish.

Pierson PHP

phpPHP is 29 years old and Java’s bitter friend. PHP runs her own company in Devel City called Zendix and has become one of the worlds well known ladies because of her easy way of doing things, her adoption of new technologies and a large fun club that make her desirable and efficient.

PHP was a student of C, Java’s father and used to work with Perl where she got her expressive character and power. Being a very beautiful woman, PHP has a lot of admirers that range from newcomers to Devel city, to old residents. She might seem easy but she needs a lot of attention to master her ways.

Sometimes her affairs are too strong and sometimes people seem to glance at Java and Ruby which makes her trying to add some of Java’s charm into her character. This, makes a lot of people say that PHP tries to become Java in some way.

Recently, PHP was voted as the 3rd most popular person in Devel’s city Object’s awards.

Mary JavaScript

javascriptJavaScript is often confused with Java in Devel City especially from newcomers… but you know what they say that: “where no smoke without fire”. Many rumors say that JavaScript is Java’s half sister but she denies it, so does Java.

JavaScript is 32 and her close friends call her “JS”. She is very strict but relaxed also. This, makes her a wonderful companion for most of Devel’s residents and she is very popular since a large part of the city has used her services at least once.

JS is one of the most successful women in Devel City. She runs a network of more than 20 companies some of which are unique.  jQuerysius, Mootool and Dojodic, to name a few are popping out each and every day.

She works silently and a lot of people think that she spents most of her time to make her job look glamourus. Most of her competitors say that she is good only for that but, to be honest, all of them know that there are some things that only she can accomplish.

She believes that to become successful, you have to keep your friends close and, your enemies closer. So, she tries to cooperate and coexist with all other businessman and businesswoman in Devel City. Everybody loves her even if she breaks things up sometimes.

Angelina Ruby

rubyRuby is a good friend of Groovy. She is 20 years old and she is one of the upcoming names in Devel City mainly because of her professional maturity and the way she manages to do a job cleanly and fast. Although Scala, Groovy’s sister, got a big job from Ruby’s hands (case of Twittorix), Ruby is still considered as one of the best professionals out there.

Ruby, became one of the most successful women in City of Devel, after the creation of her Rails company  and got a lot of fame. She also inspired many other famous women in Devel City to start their own Rails-like companies with PHP being one of them with Symfoniac LTD.

She is a very calm person and not fond of surprises. When she works, she wants to have everything there as helpful as it can be for her and her co-workers. Most of the time she applies the POLS principle to her job.

Some Devel City residents state that, if Perl goes away one day, Ruby will do the job as good as she does and with more freedom than with Perl.

Ruby believes in one principle: “Divide and Conquer”, this is why she has divided all of her company groups into Gems. Ruby just needs to use a gem to do a particular job.

Jack Python

pythonOne of the most known and respected persons in Devel City, is Python. A 54 years old construction builder. Some people believe that he can use the power of his brain to do magic. Python works in a rather modern way that his age implies and here is where he amazes Devel’s residents.

Python always finds new ways of doing things. If a tool is good to work with, Python will use it with no particular disadvantages. Python is one of the best man in Devel to work with since he allows anyone to work the way he thinks is better.

His favorite words are spam and eggs and his projects are named after his nickname. For example PyGameing station and PyS6000 which was a futuristic TV series.

Python as his name implies, is a snakes lover and has a lot of them as pets. His favorite pet is an Anaconda.

His work has been approved by some of the biggest companies in Devel City like 10^10, Yohaaa and DERN.

bre indica, es un gran amante de las serpientes. Su mascota preferida es una serpiente de nombre Anaconda.

Visto en | Jeez
Visto en | MundoGeek

, , , , , , , , , ,

No hay Comentarios

Comparación entre algoritmos de ordenación

Los algoritmos de ordenación son funciones o métodos que se encargan de ordenar un “array” de datos. Existen varios tipos de métodos de ordenación, pero hoy solo vamos a comentar algunos de los más potentes:

  • QuickSort
  • MergeSort
  • SelectionSort
  • BubbleSort

QuickSort

El ordenamiento rápido (quicksort en inglés) es un algoritmo basado en la técnica de “divide y vencerás”, que permite, en promedio, ordenar n elementos en un tiempo proporcional a n log n.

Quizás este sea el algoritmo de ordenación más rápido que existe.

Representación del algoritmo en pseudo-código:

 function quicksort(array)
     var list less, greater
     if length(array) ≤ 1
         return array
     select and remove a pivot value pivot from array
     for each x in array
         if x ≤ pivot then append x to less
         else append x to greater
     return concatenate(quicksort(less), pivot, quicksort(greater))

Representación del algoritmo en Java:

private static void quickSort(int[] x, int a, int b) {
	int i = a, j = b;
	int p = x[(a+b)/2];
	int v;
	do{
		while(x[i] < p) i++;
		while(x[j] > p) j--;
		if( i <= j ){
			v = x[j];
			x[j] = x[i];
			x[i] = v;
			i++;
			j--;
		}
	} while (i <= j);
	if( a < j ) quickSort(x,a, j);
	if( b > i ) quickSort(x,i, b);
}

Representación del algoritmo gráficamente:

MergeSort

El algoritmo de MergeSort se basa en la misma técnica que QuickSort de “divide y vencerás”, y su tiempo de ordenación es proporcional a n log n.

Representación del algoritmo en pseudo-código:

function mergesort(array A[x..y])
begin
  if (x-y > 1)):
    array A1 := mergesort(A[x..(int( x+y / 2))])
    array A2 := mergesort(A[int(1+(x+y / 2))..y])
    return merge(A1, A2)
  else:
    return A
end

function merge(array A1[0..n1], array A2[0..n2])
begin
  integer p1 := 0
  integer p2 := 0
  array R[0..(n1 + n2 + 1)]
  while (p1 <= n1 or p2 <= n2):
    if (p1 <= n1 and A1[p1] <= A2[p2]):
      R[p1 + p2] := A1[p1]
      p1 := p1 + 1
    if (p2 <= n2 and A1[p1] > A2[p2]):
      R[p1 + p2] := A2[p2]
      p2 := p2 + 1
  return R
end

Representación del algoritmo en Java:

private static void mergeSort( int[ ] x, int[ ] tmpArray, int left, int right ) {
	if( left < right ) {
		int center = ( left + right ) / 2;
		mergeSort( x, tmpArray, left, center );
		mergeSort( x, tmpArray, center + 1, right );
		merge( x, tmpArray, left, center + 1, right );
	}
}

private static void merge( int[ ] x, int[ ] tmpArray, int leftPos, int rightPos, int rightEnd ) {
	int leftEnd = rightPos - 1;
	int tmpPos = leftPos;
	int numElements = rightEnd - leftPos + 1;
	while( leftPos <= leftEnd && rightPos <= rightEnd )
		if( x[ leftPos ] <= x[ rightPos ] )
			tmpArray[ tmpPos++ ] = x[ leftPos++ ];
		else
			tmpArray[ tmpPos++ ] = x[ rightPos++ ];
	while( leftPos <= leftEnd )
		tmpArray[ tmpPos++ ] = x[ leftPos++ ];
	while( rightPos <= rightEnd )
		tmpArray[ tmpPos++ ] = x[ rightPos++ ];
	for( int i = 0; i < numElements; i++, rightEnd-- )
		x[ rightEnd ] = tmpArray[ rightEnd ];
}

Representación del algoritmo gráficamente:

SelectionSort:

El ordenamiento por selección (Selection Sort en inglés) es un algoritmo de ordenamiento que requiere O(n2) operaciones para ordenar una lista de n elementos.

Su funcionamiento es el siguiente:

  • Buscar el mínimo elemento de la lísta
  • Intercambiarlo con el primero
  • Buscar el mínimo en el resto de la lista
  • Intercambiarlo con el segundo

Representación del algoritmo en pseudo-código:

para i=1 hasta n-1
    minimo = i;
    para j=i+1 hasta n
        si lista[j] < lista[minimo] entonces
            minimo = j /* (!) */
        fin si
    fin para
    intercambiar(lista[i], lista[minimo])
fin para

Representación del algoritmo en Java:

public static void selectionSort(int[] x) {
	int n = x.length;
	for (int i=0; i<n-1; i++) {
		for (int j=i+1; j<n; j++) {
			if (x[i] > x[j]) {
				int temp = x[i];
				x[i] = x[j];
				x[j] = temp;
			}
		}
	}
}

Representación del algoritmo gráficamente:

BubbleSort

El Ordenamiento de Burbuja (Bubble Sort en inglés) es un sencillo algoritmo de ordenamiento. Funciona revisando cada elemento de la lista que va a ser ordenada con el siguiente, intercambiándolos de posición si están en el orden equivocado. Es necesario revisar varias veces toda la lista hasta que no se necesiten más intercambios, lo cual significa que la lista está ordenada. Este algoritmo obtiene su nombre de la forma con la que suben por la lista los elementos durante los intercambios, como si fueran pequeñas “burbujas”. También es conocido como el método del intercambio directo. Dado que solo usa comparaciones para operar elementos, se lo considera un algoritmo de comparación, siendo el más sencillo de implementar.

Representación del algoritmo en pseudo-código:

procedure bubbleSort( A : list of sortable items ) defined as:
  do
    swapped := false
    for each i in 0 to length(A) - 2 inclusive do:
      if A[i] > A[i+1] then
        swap( A[i], A[i+1] )
        swapped := true
      end if
    end for
  while swapped
end procedure

Representación del algoritmo en Java:

public static void bubbleSort(int[] x) {
	int n = x.length;
	for (int pass=1; pass < n; pass++) {
		for (int i=0; i < n-pass; i++) {
			if (x[i] > x[i+1]) {
				int temp = x[i];  x[i] = x[i+1];  x[i+1] = temp;
			}
		}
	}
}

Representación del algoritmo gráficamente:

Comparación de los Algoritmos

Después de explicar los algoritmos, he procedido a cronometrarlos uno a uno ordenando una lista de 10.000 elementos mediante una maquina de Java.

Los resultados fueron los siguientes:

  1. QuickSort: 1.29 ms de media.
  2. MergeSort: 1.57 ms de media.
  3. BubbleSort: 49.08 ms de media.
  4. SelectionSort: 103.77 ms de media.

Los archivos utilizados para este procedimiento están aquí.

Enlaces | Wikipedia

Los resultados fueron los siguientes:

, , , , , , , , , ,

No hay Comentarios

Algo de historia de Java…

Prehistoria

En Diciembre de 1990 un ingeniero de Sun Microsystems llamado Patrick Naughton enviaba un correo electrónico a Scott McNealy, CEO de Sun Microsystems, explicándole las razones de su marcha para trabajar en NeXT, una empresa fundada por Steve Jobs después de “renunciar” en Apple, cuyo objetivo era crear el computador perfecto, y que mas tarde sería comprada por Apple junto con el sistema operativo desarrollado, NeXT Step, para crear su nuevo sistema operativo.

Naughton era jefe de proyecto de la sección gráfica en un grupo dedicado a unir NeWS (Networked/extensible Window System), un sistema de ventanas de Sun inventado por James Gosling y basado en PostScript, con X11 (X window System versión 11), lo cual significaba que tenían que soportar “tres toolkits, tres sistemas de ventanas, tres arquitecturas hardware diferentes, dos interfaces de usuario y dos versiones de sistemas operativos diferentes”.

Como respuesta, Bill Joy le ofrece continuar en Sun trabajando en algo nuevo, uniéndose a un nuevo grupo para desarrollar una nueva tecnología. Un grupo con total autonomía respecto de la línea directiva de Sun y completamente secreto. Así nace el llamado Proyecto Stealth.

El 15 de Enero de 1991 Bill Joy, Andy Bechtolsheim, Wayne Rosing, Mike Sheridan, James Gosling y Patrick Naughton se reunen en Aspen, Colorado. El grupo quiere anticipar hacia donde se dirijirá la computación. Discuten sobre que les gusta y que no les gusta de varias tecnologias y al final llegan a la conclusión de que al menos una de las tendencias futuras será el acercamiento de sistemas digitales y electrónica de consumo. Se marcan como objetivo desarrollar un entorno único que pudiera ser utilizado por todos los dispositivos de electrónica de consumo.

Con el objetivo marcado, los miembros del Proyecto Stealth, que mas tarde se pasaría a llamar Proyecto Green, comienzan a trabajar el 1 de Febrero de 1991 en una pequeña oficina de Sand Hill Road en Menlo Park. Se divide el trabajo con Naughton dedicado al sistema gráfico “Aspen”, Gosling dedicado a identificar el lenguaje de programación a utilizar en el proyecto y Sheridan dedicado al desarrollo de negocio.

En un principio se considera 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), según la versión mas aceptada, por el roble que veía através de la ventana de su despacho.

Oak debía ser independiente de la plataforma, dado el gran número de modelos en el mercado, por lo cual se optó por un lenguaje interpretado. Además el nuevo lenguaje debía ser robusto y a la vez sencillo para evitar errores por parte del programador que pudieran llevar al cuelgue del sistema. Esto motivó que se eliminaran las características que hacían el código mas propenso a errores, como la herencia múltiple.

El resultado fue un lenguaje que tenía similitudes con C, C++ y Objective C y que no estaba ligado a un tipo de CPU concreta. Mas tarde se le cambiaría el nombre de Oak a Java, por cuestiones de propiedad intelectual, al existir ya un lenguaje con el nombre Oak. Se supone que le pusieron ese nombre mientras tomaban café (Java es también el nombre de un tipo de café, originario del este de Asia, de la isla del mismo nombre), aunque hay algunos que afirman que el nombre deriva de las siglas de James Gosling, Arthur Van Hoff, y Andy Bechtolsheim.

FirstPerson

En Agosto del 91 Oak ya corría sus primeros programas. El equipo trabajaba en un prototipo llamado Star7 (*7), un 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.

Después de mostrar a Scott McNealy y Bill Joy los prototipos de bajo nivel del sistema, continúan con el desarrollo, incluyendo su sistema operativo, Green OS; el lenguaje Oak, las librerias, 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 Green.

En la demostración para McNealy y Joy, aparecía un personaje creado por Joe Palrang que terminaría por convertirse en la mascota de Java, Duke.

Después de la demostración se decide crear una nueva empresa filial de Sun, FirstPerson, con sede en Palo Alto, para comercializar la nueva tecnología. Wayne Rosing, ex-jefe de Naughton en el grupo de trabajo de NeWs se une al proyecto desde SunLabs, asumiendo la dirección del equipo y de la nueva empresa.

Ahora que ya habían creado *7, quedaba la cuestión de qué hacer con él. El que había sido el mercado objetivo durante la concepción de *7, la electrónica de consumo, resultó no querer saber nada del nuevo producto porque disparaba los precios de los nuevos dispositivos. FirstPerson pasa de un desastre a otro sin encontrar un verdadero plan de negocio. El 15 de Marzo de 1993 Time Warner lanza un RFP (Request for Proposal) buscando una tecnologia para televisión por cable interactiva. FirstPerson se fija como nuevo objetivo el desarrollo de un sistema operativo para Time-Warner, pero cuando llega la hora de la verdad Time-Warner se decantanta por GDI, aún reconociendo que la tecnología de Sun era superior.

Tras el varapalo de Time-Warner se intenta vender *7 a 3DO pero después de meses de reuniones las negociaciones no llegan a buen puerto al exigir 3DO los derechos exclusivos de la tecnología. Como último recurso se presenta como alternativa a los ejecutivos de Sun el desarrollo de una plataforma de CD-ROMs multimedia basada en Oak pero la respuesta de estos no es favorable y se desmantela FirstPerson.

El nacimiento de Java

Mientras tanto, NCSA (National Center for Supercomputing Applications) liberaba Mosaic, una aplicación que permitía a los usuarios acceder a Internet de forma gráfica, pudiendo acceder a cientos de sitios de Internet en la World Wide Web. El número de sitios web crecía día a día e Internet comenzaba a convertirse en un fenómeno.

En Junio de 94 Joy comienza el proyecto “Live Oak” con el objetivo de usar Oak para construir un “pequeño gran sistema operativo” y estudiar las posibilidades de negocio de Internet. Mientras Arthur van Hoff implementa el compilador de Oak en lenguaje Oak, reemplazando la versión de Gosling que se había escrito en C, Naughton y Jonathon Payne comienzan a escribir un navegador web similar a Mosaic escrito en Java, “WebRunner” (por la película Blade Runner) al que después se llamaría “HotJava”.

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.

El 23 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 1996, Sun crea JavaSoft para desarrollar la nueva tecnología y ese mismo mes aparece la versión 1.0 del JDK.

El resto, es historia.

Versiones de Java

  • Java 1
    • Java 1.0 (Enero 1996) – 8 paquetes, 212 clases – Primera versión pública. La presión hizo que se hiciera pública demasiado pronto, lo cual significa que el diseño del lenguaje no es demasiado bueno y hay montones de errores. Respecto a seguridad, es restrictivo por defecto, no dejando hacer demasiado al código no fiable.
    • Java 1.1 (Marzo 1997) – 23 paquetes, 504 clases – mejoras de rendimiento en la JVM, nuevo modelo de eventos en AWT, clases anidadas, serialización de objetos, API de JavaBeans, archivos jar, internacionalización, API Reflection (Reflexión), JDBC (Java Data base Connectivity), RMI (Remote Method Invocation). Se añade la firma del código y la autentificación. Es la primera versión lo suficientemente estable y robusta.
  • Java 2
    • Java 1.2 (Diciembre 1998 ) – 59 paquetes, 1520 clases – JFC (Swing), Drag and Drop, Java2D, Corba, API Collections. Se producen notables mejoras a todos los niveles. Para enfatizar esto Sun lo renombra como “Java 2″. El JDK (Java Development Kit) se renombra como SDK (Software Development Kit). Se divide en J2SE, J2EE y J2ME.
    • Java 1.3 (Abril 2000) – 77 paquetes, 1595 clases – Orientada sobre todo a la resolución de errores y a la mejora del rendimiento; se producen algunos cambios menores como la inclusión de JNDI (Java Naming and Directory Interface) y la API Java Sound. También incluye un nuevo compilador de alto rendimiento JIT (Just In Time).
    • Java 1.4 (2002) – 103 paquetes, 2175 clases – También conocido como Merlin, es la versión actual. Mejora notablemente el rendimiento y añade entre otros soporte de expresiones regulares, una nueva API de entrada/salida de bajo nivel (NIO, New I/O), clases para el trabajo con Collections, procesado de XML; y mejoras de seguridad como el soporte para la criptografía mediante las Java Cryptography Extension (JCE), la inclusión de la Java Secure Socket Extension (JSSE) y el Java Authentication and Authorization Service (JAAS).
    • Java 1.5 (Octubre 2004) – 131 paquetes, 2656 clases – También conocido como Tiger, renombrado por motivos de marketing como Java 5.0. Incluye como principales novedades:
      • tipos genéricos (generics)
      • autoboxing/unboxing conversiones impliticas entre tipos primitivos y los wrappers correspondientes.
      • Enumerados
      • Bucles simplificados
      • printf
      • Funciones con número de parámetros variable
      • Metadatos en clases y métodos.

Para saber mas sobre las novedades de Java 5.0 se puede consultar las release notes o el documento J2SE 5.0 in a Nutshell.

Visto en | MundoGeek

, , , , , , , , , , , ,

1 Comentario