>Disponible android 2.3


Enlace: android.com

Anuncios

Fundamentos de POO con Java.

Programación Orientada a objetos. (Luis Joyanes Aguilar) (E-book)

Finalmente disponible la versión 2.8 de Scala.


A pesar de lo lejos que ha llegado, de ser el lenguaje más utilizado en el mercado y aún siendo GPL, Java es víctima de gran cantidad de críticas, algunas de las cuales están más enfocadas en el modo de trabajo actual que en el lenguaje en sí. Pero que tiene problemas, los tiene y no parece dar señas de avance en un mundo cada vez más competitivo. Se ha vuelto a demorar el lanzamiento de su nueva versión para inicios del próximo año y, si bien presentará algunas innovaciones ineteresantes, tampoco es revolucionario -ni muchísimo menos. Sin embargo, aún los críticos más acérrimos del lenguaje destacan la importancia de la JVM, aunque sea como “curiosidad tecnológica”. En realidad mucho más que eso, la Java Virtual Machine nos permite trabajar con enorme cantidad de lenguajes (por sí mismos o en conjunto con Java), contando con todas las ventajas que ofrece la máquina virtual.

Por ejemplo, IBM utiliza Jython (implementación de sobre la JVM) para realizar scripts sobre WebSphere. Y con el aletargamiento de Java, no sólo se están usando cada vez más otros lenguajes en conjunto con las librerías nativas, sino que se habla directamente del “nuevos Java”, es decir lenguajes que trabajan sobre la máquina virtual que terminarán por imponerse sobre el lenguaje mismo. Entre estos, son tres los más utilizados: Groovy,Clojure (interesantísimo dialecto de Lisp) y Scala. Scala es un lenguaje multiparadigma, un híbrido entre orientación a objetos y funcional que, con una sintaxis no del todo lejana a la de Java, es recomendada para los usuarios del popular lenguaje que quieran aventurarse en nuevos terrenos. Además, con un buen par de años de recorrido, es el que cuenta con mayor proyectos y comunidad, algo importante a la hora de elegir un lenguaje y tampoco está demás recordar que últimamente se está redescubriendo el valor de los lenguajes funcionales a la hora de escribir aplicaciones en las que la concurrencia tenga una importancia crítica. Después de todo, Scala es utilizado por sitios como Twitter yFoursquare.

El asunto que me hace escribir estas líneas es que finalmente, después de una espera bastante grande, acaba de ser anunciado el lanzamiento de la versión 2.8 del lenguaje. Y a pesar de lo que pueda parecer, se trata de un cambio enorme, una actualización importante como la que representó la versión 3.0 de Python. De todos modos, una importante característica de Scala, heredada de Java, es que a pesar de todos los cambios efectuados mantienen prácticamente al 100% la compatibilidad con el código fuente de versiones anteriores. Algunos de los cambios más importantes son:

  • La biblioteca de colecciones fue rediseñada por completo.
  • Se ha simplificado el manejo de arrays.
  • Argumentos nombrados y por defecto.
  • Anotaciones anidadas.
  • Se ha mejorado a los actores (para concurrencia).
  • Fueron solucionados gran cantidad de bugs.
  • Los paquetes, además de clases y objetos, ahora pueden contener métodos, campos y alias.
  • Se ha mejorado notablemente tanto el REPL como el IDE oficial de Scala para el Eclipse.


Esperado lanzamiento con cambios que, espero, cumplan todas las expectativas generadas. Y para quienes no estén familiarizados para nada con la sintaxis del lenguaje, termino la entrada con el clásico “Hola mundo” escrito en Scala:

object HolaMundo {   def main(args: Array[String]) =     
println("Hola, mundo") }
Fuente | bitelia.com

Diseño Ágil con TDD (Desarrollo guiado por pruebas).

disenoAgilConTDD

Fuentes | wiki |.net TDD | TDD | Foro

Webkit Inspector.

DevLab: WebKit inspector from Mario A Chavez on Vimeo.

En el videocast se muestra el uso de la herramienta WebKit Inspector, la cual es de gran ayuda tanto para los diseñadores web, así como para los programadores web.

La herramienta permite inspeccionar el código html de una pagina web, realizar cambios a la misma “en vivo”, también es posible inspeccionar el CSS de la pagina y de igual forma realizar cambios al momento.

También cuenta con una opción para medir el tiempo de carga y tamaño de nuestra pagina, dandonos un detalle, de cuales son los elementos que tardan mas en descargarse o cuales son los mas “pesados” en términos de bytes.

Por último también se muestra la herramienta para depurar javascript e inspeccionar los valores de las variables del código que se este ejecutando, ademas de incorporar una herramienta de “profile” para analizar que partes de nuestros javascript son las más lentas en su ejecución.

Fuente | mario-chavez
Enlaces | webkit | wiki | Blog

El compilador GCC soportará el lenguaje Go de Google.

Con este brevísimo mensaje se anunció que el “Steering Committee” del GCC (GNU Compiler Collection) aceptó el frontend gccgo para su inclusión en su versión 4.5 o posterior, el que agregará soporte para el lenguaje de programacón Go de Google en la imprescindible colección de compiladores del proyecto GNU.

Esta noticia llega sólo días después de que en el último el índice de TIOBE, empresa que publica mensualmente un ránking de la popularidad de los lenguajes a nivel mundial, Go apareciera por primera vez en el puesto número 13 convirtiéndose en el escalador más rápido de todos y ubicándose sólo detrás de Objective-C (el del iPhone y Mac OS X) a pesar de haber sido lanzado oficialmente hace menos de 3 meses.

Además de C y C++, GCC incluye actualmente frontends para lenguajes como Ada, Fortran, Java, Objective-C y Objective-C++; otros frontends disponibles pero que todavía no son parte oficial de GCC incluyen a Cobol, D, Pascal y Modula-2/3, entre otros.

  • Artículo completo en LWN.