Apple lanzó herramientas de desarrollo para el iPhone

Marzo 8, 2008

sdk-apple.jpgEn un evento celebrado en Cupertino, California, sede central de la compañía, los ejecutivos de Apple presentaron las herramientas y tecnologías encargadas de permitir que los desarrolladores independientes de software puedan crear y vender programas para el iPhone.

Las aplicaciones para el ya famoso teléfono de Apple están basadas en las actuales herramientas de desarrollo de software para Mac, y utilizan una nueva versión de Xcode, disponible actualmente como versión beta como parte del nuevo Programa de Desarrolladores iPhone.

Además, una nueva versión de Interface Builder permitirá que los desarrolladores puedan diseñar con rapidez las interfaces de usuario para el programa dirigido al iPhone, así como adecuar el software para distintos idiomas.

Entre las herramientas disponibles para los desarrolladores estará SQlite, un sistema de base de datos empotrado, y Core Location, que utiliza las estaciones base Wi-Fi y las antenas de telefonía para determinar la posición geográfica del equipo.

Según el portal idg.es, otras utilidades permiten monitorear el uso de la memoria y otros aspectos internos del iPhone en un intento de ayudar a que los desarrolladores puedan mejorar el rendimiento de sus soluciones.

El nuevo Software Development Kit beta para el iPhone puede descargarse gratuitamente desde aquí, mientras que el iPhone Developer Program tiene un precio de U$S 99, e inicialmente estará disponible sólo en los EE.UU, aunque se ampliará a otros países durante los próximos meses.


¿Siguen siendo las bases de datos relacionales la mejor opción?

Marzo 8, 2008

¿Siguen siendo las bases de datos relacionales la mejor opción?

07/03/2008 22:37 nedjae

La solución a la persistencia de datos ha estado tradicionalmente ligada a las bases de datos relacionales. La transición a la programación orientada a objetos, que bien podríamos dar por finalizada, no ha cambiado en absoluto este hecho.

Cuando realizamos aplicaciones, la mayoría organizamos nuestro modelo en una jerarquía de clases y luego garantizamos su persistencia en una base de datos relacional. Las diferencias entre el modelo de objetos y el relacional causa algunos problemas con los que los desarrolladores estamos acostumbrados a lidiar.

Uno de ellos es la forma de acceder a los datos. Por una parte tenemos nuestros grafos de objetos, que acostumbramos a utilizar para la “navegación” a través del modelo:

employee.department().manager().salary();

Y por otro lado tenemos las consultas SQL para manejar el modelo relacional:

SELECT e2.salary FROM
   employee e1, employee e2, department,
 WHERE
   e1.id = current_employee_id
 AND
   e1.department = department.id
 AND
  department.manager = e2.id

Con el tiempo muchos desarrolladores han renegado de incrustar sentencias SQL en su código Java, pasando a emplear mapeadores objeto-relacionales como iBatis, Hibernate, TopLink, etc. Estos frameworks han permitido delegar el problema de la falta de concordancia objeto-relacional en una librería externa que nos hace casi transparente (casi) la traducción de un modelo a otro.

La mejora de productividad que aporta el mapeo objeto-relacional tiene su contrapartida en el apartado de rendimiento. Con una solución más clásica como es el uso de consultas SQL a través de JDBC obtenemos un rendimiento mayor que el que obtendremos poniendo por medio un Hibernate, por ejemplo.

Algunos críticos de este tipo de frameworks no los critican solamente por su rendimiento sino porque consideran que no es el enfoque correcto a la falta de concordancia entre el modelo de objetos y las bases de datos relacionales.

Debería considerarse la posibilidad de almacenar nuestros objetos en una base de datos orientada a objetos, librándonos del problema que pretenden solucionar los frameworks de mapeo objeto-relacional.

Estas bases de datos tienen un rendimiento mayor a las relacionales, ya que los datos se guardan de una forma muy similar a la que tienen nuestros objetos en memoria. Esto provoca que el mayor nicho de mercado para estas bases de datos sea el de dispositivos móviles, donde bajar el consumo de recursos es prioritario y no hay un DBA que pueda optimizar y mantener la base de datos.

En el lado opuesto, en el de las aplicaciones que requieren poder escalar de forma masiva, tenemos soluciones para la persistencia que tienen mucho que ver con bases de datos orientadas a objetos. A poco que indaguemos en tecnologías del ámbito del grid computing como GigaSpaces o Coherence, veremos que tienen mucha relación con las ODBMS.

Creo que sería interesante un debate sobre el tema en JavaHispano.

¿Sigue teniendo sentido hoy en día almacenar un modelo de objetos en tablas relacionales?

Os dejo un enlace a un artículo de la competencia (InfoQ) en el que se exponen distintos puntos de vista: Java Object Persistency: State of the union.

Fuente: javahispano


Microsoft inicia guerra contra Apache

Marzo 8, 2008

En el ámbito de los servidores Web, Microsoft tiene una posición inusualmente secundaria. El gigante informático se dispone a cambiar la situación.

Diario Ti: Microsoft desempeña un papel subordinado en el mercado de los servidores Web, en que ha dominado la combinación de Linux y Apache. La compañía se dispone ahora a realizar un nuevo intento por conquistar una cuota mayor del mercado, mediante una combinación de ISS 7.0 y Windows Server 2008. Microsoft se ha propuesto convencer a los usuarios a abandonar la combinación Linux /Apache.

En su blog, Microsoft escribe “parte de la explicación de la gran cuota del mercado que tiene Apache, es que fueron los primeros en ese segmento. En muchas empresas el uso de Internet comenzó con páginas Web relativamente sencillas, en que Apache era suficiente. En la medida en que han aumentado las necesidades de mayor integración con los demás equipos informáticos de las empresas, sumados a sistemas CMS (gestión de contenidos), cada vez más avanzados, Apache ha comenzado a perder relevancia”.

Según las estadísticas más recientes de Netcraft, Apache continúa siendo el servidor Web dominante con una cuota del mercado del 50,9%. Apache es un programa gratuito y basado en código abierto al igual que Linux. Microsoft ISS, por su parte, tiene una cuota del 35,5 % del mercado. Google ha comenzado a incursionar en el segmento de los servidores web y ya tiene una cuota del 5,3%.

El nuevo ISS 7.0 es considerado como una plataforma más segura, fácil de administrar y más económica en su operación, debido a que consiste de módulos que pueden ser instalados y eliminados según las necesidades de la empresa. De esa forma es posible evitar la instalación de funciones innecesarias, que recargan al servidor y abren riesgos de seguridad.

También es posible administrar el servidor desde la línea de comandos, al igual que ya es posible con Apache.

Fuente: Blog de Microsoft y Netcraft.

LEIDO EN :http://www.diarioti.com/gate/n.php?id=16786