sábado, 19 de mayo de 2012

Tecnologías Emergentes

5.1 CONCEPTOS Y ELEMENTOS

Término usado indistintamente para señalar la emergencia y convergencia de nuevas tecnologías, con potencial de demostrarse como tecnologías disruptivas. Entre ellas, se encuentran nanotecnología, la biotecnología, las tecnologías de la información y la comunicación, la ciencia cognitiva, la robótica, y la inteligencia artificial.

También son definidas como innovaciones científicas que pueden crear una nueva industria o transformar una existente. Surguen debido a que las herramientas de gestión tradicionales no son capaces de resolver con éxito los nuevos desafíos.


5.2 HERRAMIENTAS DE DESARROLLO WEB


5.2.1 Frameworks de desarrollo


Framework: Estructura conceptual y tecnológica de soporte definido, normalmente con artefactos o módulos de software concretos, con base a la cual otro proyecto de software puede ser más fácilmente organizado y desarrollado, puede incluir soporte de programas, bibliotecas y un lenguaje interpretado.


Objetivos:

  • Desarrollo rápido
  • Desarrollo estructurado
  • Reutilización de código
  • Disminución del esfuerzo en el desarrollo

Frameworks para HTML

  • HTML5 Boilerplate

Nos proporcionan una serie de código que hace que los sitios web construidos con HTML5 Boilerplate se vean bien incluso en navegadores que aún no dan soporte a HTML5.

En su sitio web existe una amplia documentación, incluso un par de vídeos (en inglés) con unas explicaciones excelentes.

  • YAML

YAML son las iniciales de “Yet Another Multicolumn Layout”. YAML es un framework de HTML/CSS para crear layouts flexibles y flotantes. 

  • Inuit

Inuit es un framework CSS relativamente nuevo que se orienta a dispositivos móviles tal y como smartphones y tablets.

Frameworks para Java

  • Spring

Es un Framework que nos ayuda en nuestras aplicaciones java, de forma que podamos desarrollar más rápido, de forma más organizada y más eficientemente.

Está organizado por capas que pueden utilizarse conjuntamente o por separado:

DAO: Capa por encima de JDBC que facilita su uso.
ORM: Permite el uso de APIs conocidas de mapeo con base de datos, como iBatis, Hibernate,
AOP: Permite el uso de programación orientada a aspectos.
JEE: Integración con las APIs típicas de JEE
WEB: Integración con presentación de datos, como Struct, JSF, PDF, JasperReports, etc
Core: Un contenedor de beans.

  • Struts

Es una herramienta de soporte para el desarrollo de aplicaciones Web bajo el patrón MVC bajo la plataforma Java EE (Java Enterprise Edition).
Struts permite reducir el tiempo de desarrollo. Su carácter de "software libre" y su compatibilidad con todas las plataformas en las que Java Enterprise esté disponible lo convierten en una herramienta altamente disponible.

  • Java Server Faces

Es una tecnología y framework para aplicaciones Java basadas en web que simplifica el desarrollo de interfaces de usuario en aplicaciones Java EE. JSF usa JavaServer Pages (JSP) como la tecnología que permite hacer el despliegue de las páginas, pero también se puede acomodar a otras tecnologías como XUL.

Frameworks para ASP.Net

ASP.NET es un framework para aplicaciones web desarrollado y comercializado por Microsoft. Es usado por programadores para construir sitios web dinámicos, aplicaciones web y servicios webXML. Apareció en enero de 2002 con la versión 1.0 del .NET Framework, y es la tecnología sucesora de la tecnología Active Server Pages (ASP). ASP.NET esta construido sobre el Common Language Runtime, permitiendo a los programadores escribir código ASP.NET usando cualquier lenguaje admitido por el .NET Framework.


5.2.2 Tecnología AJAX

Acronimo de Asynchronous Java Script and XML es una técnica de desarrollo web para crear aplicaciones interactivas.
Éstas aplicaciones se ejecutan en el cliente, es decir, en el navegador de los usuarios mientras se mantiene la comunicación asíncrona con el servidor en el segundo plano.
Ajax es una tecnología asíncrona, en el sentido de que los datos adicionales se solicitan al servidor y se cargan en un segundo plano sin interferir con la visualización y el comportamiento de la página.

Ajax es una combinación de 4 tecnologías ya existentes:

·         XHTML y hojas de estilo en cascada (CSS).
·         Documento Object Model.
·         XML Http Request
·         XML

5    5.2.3 Utilización de librerías

      Prototype

      Facilita el desarrollo de aplicaciones web con Java Script, su autor original Sam   Stephenson y las últimas versiones incorporan códigos e ideas de muchos programadores, es la base de muchos frameworks.

     Scriptaculous

     Es una de las muchas librerías que han surgido para facilitar el desarrollo de    aplicaciones, su autor Tomas Fuch se encuentra dividida en varios módulos que son:

·      Efectos, permite añadir efectos a cada uno de los componentes de la página web.Controles, los tres controles que forman este método son: arrastrar y soltar,    autocompletar, editor de contenidos. 

       Utilidades, la utilidad principal se llama builder que se utiliza para crear nodos y fragmentos complejos de doom.

      JQuery

         Su autor original es John Resign, recibe contribuciones de decenas de programadores. Su diseño interno tiene diferencias tránsicas respecto a prototype.



martes, 15 de mayo de 2012

ENCRIPTACIÓN EN LA WEB



El increíble crecimiento de Internet ha excitado a gente de negocios y consumidores con la promesa de cambiar el modo de trabajar e incluso de vida. Sin embargo, paralelo a esta forma nueva forma de hacer transacciones comerciales, existe una preocupación sobre lo seguro que es Internet, especialmente cuando se manda información privada o sensitiva en la red.
Tenemos que reconocerlo, existe muchos tipos de información que no queremos que otros vean, como pueden ser:
  • Información de tarjetas de crédito.
  • Números de la seguridad social.
  • Correspondencia privada.
  • Datos personales.
  • Información sensitiva de una compañía o empresa.
  • Información de datos bancarios.
La seguridad en la red es ofrecida entre ordenadores por Internet mediante una variedad de métodos. Uno de los modos más básicos y simples que se han utilizado siempre, es tener esta información privilegiada en dispositivos de almacenamiento, como pueden ser disquetes, CD o más actualmente DVD. Hoy en día, este método es insuficiente y por ello los métodos de seguridad más populares utilizan la encriptación, el cual es el proceso de codificar la información de tal manera, que solo la persona (u ordenador) con una clave determinada, puede decodificarla y hacer uso de dicha información.