Logo de Torre de Babel
Portada Libros Diseño web Artículos Glosario RSS
Buscar

Aires de cambio en los móviles

Logo AndroidÉste es el título del último artículo que he publicado en PC Actual, dedicado a analizar lo que ofrece el nuevo Android SDK, un desarrolllo de la Open Handset Alliance respaldado por Google y cuyo objetivo es competir con los actuales líderes del segmento.

El artículo está disponible libremente, se compone de seis páginas en las que se detalla la estructura de Android, las herramientas que componen este SDK y su integración con los entornos de desarrollo de uso más habitual.


Publicado el 10/3/2008

Cómo distinguir en JavaScript variables inexistentes de aquellas que no tienen valor

Como la mayoría de los lenguajes interpretados, JavaScript no exige la declaración previa de las variables que van a utilizarse en un programa, sino que éstas van creándose y destruyéndose dinámicamente a medida que es necesario. Es un mecanismo cómodo y que permite implementar una cierta funcionalidad de manera muy rápida, sin tener que preocuparse de detalles como la declaración o el tipo de las variables. A cambio, sin embargo, puede convertirse también en la fuente de muchos problemas, ya que la lectura de una variable no definida, por ejemplo en el interior de un condicional o al componer una expresión de tipo aritmético, puede pasarse por alto y llevar a un resultado inesperado.

En principio, utilizando el operador de igualdad ==, una variable sin definir pasará por ser una variable sin contenido, es decir, una variable null. Sin embargo, el operador typeof de JavaScript devuelve null para una variable definida pero a la que aún no se ha asignado un valor, mientras que para una variable sin definir devuelve undefined. Esta diferencia puede comprobarse, antes de utilizar la variable en cuestión, recurriendo al operador identidad ===, en lugar de al operador de igualdad.

Desde el momento en que una variable se define, con la palabra clave var, o bien se le asigna un valor sin que estuviese previamente definida, ya no volverá a ser undefined. Las variables declaradas con var no dejarán de existir hasta que se cierre el ámbito al que pertenecen. Las definidas de manera implícita, sin embargo, pueden ser eliminadas mediante la instrucción delete. A partir de esa eliminación, el identificador volverá a ser undefined.


Publicado el 8/3/2008

Quién es Anders Hejlsberg

Durante una visita que hice a finales de 2000 al campus de Microsoft, en Redmond, tuve la oportunidad de conocer personalmente a Anders Hejlsberg, una persona sobre la que había leído infinidad de cosas desde mediados de los ochenta, por la sentía una cierta admiración y que me sorprendió por su gran sencillez en el trato. Pero, ¿quién es Anders Hejlsberg?

Foto de AndersDetrás del lenguaje C#, casi un recién llegado al campo de los lenguajes de programación, y en calidad de arquitecto jefe está el nombre de una persona muy reconocida en el campo del desarrollo de software: Anders Hejlsberg. Desde el año 1996 en la plantilla de Microsoft, Anders pasó los quince años previos en otra de las firmas afamadas por sus herramientas de desarrollo. En esa firma, la conocida Borland (hoy conocida como CodeGear), Anders contribuyó de manera decisiva en la creación y evolución de dos de los productos más exitosos de dicha empresa: Turbo Pascal y Delphi.

Anders Hejlsberg, danés de procedencia, desarrolló a principios de los años 80 un compilador de Pascal llamado Poly Pascal. Dicho compilador despertó el interés de la por entonces joven empresa Borland, quién obtuvo una licencia de aquella herramienta y, tras complementarla con una interfaz de usuario y un editor bastante básicos, la puso en el mercado, a finales de 1983, con el nombre Turbo Pascal.

A diferencia de otros compiladores de la época, Turbo Pascal resultaba una herramienta realmente eficiente y cómoda de usar. Podía editarse el código, compilarse en memoria y ejecutarse desde el mismo entorno, sin necesidad de recurrir a la línea de comandos. Muchos aprendimos Pascal con este producto en ordenadores hoy desaparecidos, como los míticos MSX, ya que Turbo Pascal, todo el entorno, editor y compilador, cabía en un solo disquete y necesitaba muy pocos recursos para funcionar gracias a que Anders lo había desarrollado enteramente en ensamblador.

Anders se fue a California y durante casi una década trabajó en la evolución de su compilador de Pascal. Éste pasó de la denominación Turbo Pascal a llamarse posteriormente Borland Pascal. En sus últimas versiones se incorporaron posibilidades de orientación a objetos, naciendo el hoy conocido como Object Pascal. Finalmente, en lo que a su andadura en Borland respecta, Anders fue el principal responsable del equipo de desarrollo de Delphi, equipo en el que permaneció hasta poco antes de la liberación de la versión 4.

Tras muchos años en la misma empresa y, básicamente, trabajando sobre el mismo producto, Anders deseaba cambiar y evolucionar, de ahí que aceptase una oferta por parte de Microsoft para formar parte del equipo de Visual J++. Como arquitecto, y con un gran peso en ese equipo, Anders contribuyó al desarrollo de las WFC (Windows Foundation Classes), una biblioteca de clases Java pensadas específicamente para facilitar el desarrollo de aplicaciones Windows. También influyó considerablemente en la arquitectura de la última versión de Visual J++.

Desde el año 1998 Anders se ocupó, como ingeniero jefe, del desarrollo del nuevo lenguaje C#, participando también en el grupo de diseño de la plataforma .NET, particularmente en todo lo relativo al CLR (Common Language Runtime) o entorno común de ejecución. En la actualidad, Anders es Distinguished Engineer de la división de desarrollo de Microsoft. Hace unos años la prestigiosa revista Dr. Dobb's le distinguió con el premio Excellence in Programming, recibido en años previos por personas como Larry Wall, James Gosling o Linus Torvalds. Sigue trabajando en el lenguaje C# y, de vez en cuando, participa en algunos eventos y concede entrevistas a los medios para tratar sobre lo que más le gusta: el desarrollo de herramientas de programación.


Publicado el 3/3/2008

Curso de shaders

Torre de Babel - Francisco Charte Ojeda - Desde 1997 en la Web