<script type="text/javascript" href="myscript.js">
<script href="myscript.js">
<script href="myscript.js" async>
<script type="text/javascript" href="myscript.js">
<script href="myscript.js">
<script href="myscript.js" async>
<link rel="stylesheet" type="text/css" href="theme.css" media ="screen">
<link rel="stylesheet" href="theme.css">
<link rel="stylesheet" href="theme.css" media="print">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!DOCTYPE html>
Muchos tal vez creen que HTML5 es una simple mejora del lenguaje de marcado HTML, pero en realidad es una versión completamente renovada del lenguaje, que es el resultado natural del proceso evolutivo de la web.
HTML5 integra 8 elementos, que hacen parte de la nueva especificación.
Semántica: Busca dotar al lenguaje de una estructura y una semántica que de sentido a la información, ampliando así la funcionalidad de la web. Esto es de vital importancia para los nuevos conceptos de la web, en donde se busca que la información contenida en un sitio se pueda organizar e identificar de manera que pueda ser indexada de forma más eficiente.
A simple vista puede parecer que esto no reviste mayor importancia, mas aun si se tiene en cuenta que las etiquetas que entran dentro de esta categoría no tienen incidencia alguna en la forma como se ve una pagina, pero teniendo en cuenta el volumen de información contenida en la web y la velocidad a la que esta aumenta, se hizo necesario la implementación de mecanismos que permitan manejar la información de formas más eficientes.
Modo offline y almacenamiento: se busca hacer más eficiente el acceso a la web, de modo que una aplicación web podría empezar a funcionar aun cuando no se esté en línea mediante mecanismos de cache y almacenamiento permanente de la información, que permitiría al usuario interactuar con la aplicación mientras no tenga conexión. Este es un factor importante, mas aun en el caso de los dispositivos móviles, donde la velocidad de conexión y la disponibilidad de la misma no siempre se puede garantizar.
Acceso a dispositivos: este tema está orientado principalmente al soporte a diferentes tipos de dispositivos móviles, los cuales como ya sabemos han empezado a formar parte activa de nuestras vidas, como es el caso de las tabletas, Smartphone, GPS, e incluso las cámaras fotográficas profesionales, las cuales ya cuentan con mecanismos de navegación web y geo localización entre otras funcionalidades . Así mismo comprende el mecanismo por el cual se puede acceder al hardware que estos dispositivos traen incluidos, tales como el GPS, acelerómetro, cámara, entre otros, con el fin de dotar a las paginas web de un dinamismo nunca antes visto.
Conectividad: en este aspecto se busca mejorar los mecanismos de conectividad, permitiendo que las aplicaciones puedan funcionar en tiempo real, como sucede por ejemplo con los chats. Este tema es de gran importancia para el mercado actual, porque como muchos ya habrán visto, se están empezando a popularizar todo tipo de juegos basados en HTML5.
Multimedia: este es tal vez uno de los elementos que más impacto ha causado a muchos, pues persigue integrar el manejo de audio y video de una forma más eficiente, evitando los problemas que hasta el momento se venían experimentando de la mano de tecnologías como Flash. Mediante la integración en HTML 5 de api’s para la reproducción de audio y video, los famosos plugins de Flash y Silverlight han pasado a ser solo un mal recuerdo, al punto que ya sitios como YouTube están migrando de su antiguo modelo y adoptando el nuevo estándar con excelentes resultados.
3D, gráficos y efectos: este es un elemento novedoso en verdad, y comprende la inclusión de soporte para el manejo de archivos gráficos, tales como SVG, así como el soporte para 3D de la mano de JavaScript como es el caso de WebGL, y múltiples efectos que permitirán disfrutar la web como nunca antes había sido posible.
Performance e integración: este es un punto interesante, y es el poder integrar tecnologías que permitan interactuar de forma mas efectiva con el servidor, lo que mejora notablemente el rendimiento de una web, al poder comunicar de forma efectiva sus necesidades y ser atendidas en el momento preciso.
CSS3: este elemento es conocido por muchos, pero tal vez no todos tengan una idea real del alcance e impacto que esto puede tener. La integración con Css3 abre un sinfín de posibilidades, una de las más esperadas por muchos diseñadores gráficos es sin duda el poder usar tipos de letras personalizadas en su web, pero hay más, incluye muchas facilidades para incorporar efectos geniales en la web al punto de hacer de una simple pagina una autentica obra de arte.
Como podemos ver HTML5 nos ofrece un amplio abanico de funcionalidades, y nos brinda grandes oportunidades de innovar en cuanto a los ambientes web hace referencia, si bien es cierto que aun no esta del todo soportado, y que como estándar aun esta sujeto a revisiones y mejoras, a este momento ya se encuentra muy avanzado, de hecho Firefox y Chrome están prácticamente a la cabeza en cuanto a funcionalidades soportadas, si desean pueden obtener mas información sobre las funcionalidades soportadas por los navegadores actuales aquí.
Ahora bien, aprovecho este espacio para anunciar la creación de una serie de post sobre HTML5 que contendrán una serie de tips sobre diferentes aspectos del lenguaje.
1: TxtBoxUser.Text = login + " / " + firstName + " " + lastName;
1: TxtBoxUser.Text = String.Format("{0} / {1} {2}", login , firstName, lastName);
Esta es la primera entrega de la serie de post que tratara el tema de Enterprise Library, en este caso cubriremos lo relacionado a la capa de datos.
En este primer post nos atañe preparar los requisitos previos para nuestra aplicación, que en este caso hacen referencia a la creación de la base de datos que vamos a utilizar en esta serie de post, así como los demás componentes que vamos a necesitar.
Manos a la obra
En este caso vamos a trabajar inicialmente con una base de datos en SQLServer, mas adelante usaremos una base de datos en Oracle. Para nuestro ejercicio, vamos a usar la base de datos Northwind, la cual puede ser descargada desde la página de la comunidad.
Por otra parte vamos a necesitar la última versión de Enterprise Library que a este momento es la 5, la cual podemos obtener en la página oficial.
Una vez descargado el script, debemos inicia sesión en la base de datos con privilegios de administrador con el fin de crear nuestra base de datos, una vez allí, abrimos el script y lo ejecutamos.
Aquellos que como en mi caso usan SqlServer 2012, van a encontrarse con el siguiente error:
Esto es debido a que en la versión SQLServer 2012 no esta soportado el uso de sp_dboption, según se puede ver en la página oficial, se debe optar por el uso de ALTER DATABASE.
Entonces, debemos remplazar las líneas:
exec sp_dboption 'Northwind','trunc. log on chkpt.','true'
exec sp_dboption 'Northwind','select into/bulkcopy','true'
por las siguientes:
ALTER DATABASE Northwind SET AUTO_SHRINK ON
ALTER DATABASE Northwind SET RECOVERY SIMPLE
Una vez se realiza el cambio y se ejecuta el script ya tenemos la base de datos creada, solo resta crear un usuario para trabajar con nuestra base de datos.
Como vemos ya contamos con una base de datos apta para nuestras pruebas. Con esto, mas la instalación de Enterprise Library 5, ya tenemos las bases para realizar los ejemplos propuestos en esta serie de post.
Microsoft Enterprise Library es una biblioteca compuesta por un conjunto de componentes de software reutilizables, que se encargan de las tareas mas comunes en lo que a temas transversales concierne.
Estos bloques de aplicación son una especie de guía que nos indica la forma mas adecuada de realizar dichas tareas, estos bloques están acompañados por respectivos ejemplos de uso, y pueden ser fácilmente ampliados para utilizarlos en proyectos complejos de nivel empresarial o en proyectos de línea de negocio.
Dicho de una forma más simple, son componentes que han sido desarrollados basándose en los mejores patrones y en las mejores prácticas de desarrollo de software, y que ofrecen las soluciones más adecuadas para situaciones tan comunes como un log, o un componente de acceso a datos.
Esta pensado con el fin de hacer las cosas mas fáciles a las personas envueltas en labores de desarrollo ya que estos componentes ya encapsulan dentro de si todas las funcionalidades necesarias, lo que se traduce en un ahorro significativo de tiempo y esfuerzo, permite la reutilización de componentes y al mismo tiempo garantiza un buen nivel de estandarización en los desarrollos.
Actualmente Enterprise Library en su versión 5 cuenta con los siguientes bloques de aplicación.
Como pueden ver, es una biblioteca muy completa e interesante, y aporta gran cantidad de funcionalidades que nos van a permitir llevar nuestros desarrollos a otro nivel.
Con esta premisa en mente, se da inicio a una serie de post en los cuales se trataran los diferentes bloques en mas detalle, de la mano de un pequeño proyecto, en el cual se espera hacer uso de estos con el fin de demostrar como podemos aprovechar esta maravillosa herramienta.
Para aquellos que deseen profundizar mas en el tema les recomiendo visitar la pagina de Patterns & Practices de Microsoft.