FEBE es una extensión para Firefox de uso muy popular e inmensamente útil porque nos permite hacer un backup de todos los datos y configuraciones de nuestro navegador, desde el historial, hasta las extensiones y temas que tenemos instalados. Una de las características que lo destacan es que hace la salva de estos datos de manera automática a una hora preestablecida, así podemos olvidarnos de esta tarea ya que el plug-in se encargará de esto de forma segura.
Hasta la versión 5 los datos de las salvas se almacenaban en nuestro disco duro. A partir de la versión 6 podremos guardarlos de manera opcional, en el servicio online de almacenamiento Box.net que nos brinda la posibilidad de mantener nuestros datos en servidores seguros; para recuperarlos en el momento necesario y desde cualquier parte del planeta.
Los que instalamos la versión 3 de Firefox no pudimos seguir utilizando la extensión porque la versión 5 de FEBE sólo da soporte hasta la beta 2 de Firefox 3, por lo que tuvimos que resignarnos a esperar, porque en el sitio de addons de Mozilla no aparece otro complemento que implemente de forma tan bien lograda las salvas. La solución al problema es instalar FEBE desde el sitio oficial de la extensión, que se mantienen desarrollando en fase beta la nueva versión 6.0 y funciona perfectamente en la última entrega de Firefox.
Continuar leyendo
Archivado en: Desarrollo Web, Google Gears, Internet, Maestros del Web, Mis Artículos, Navegadores Web
Google Gears crea una caché del sitio en nuestro ordenador que nos da la posibilidad de seguir trabajando sobre nuestras aplicaciones web mientras estamos desconectados de la red. Con esta extensión actualmente disponible para los navegadores Internet Explorer y Firefox podremos seguir navegando por la web cuando no estemos conectados a Internet y además tiene su propia API que brinda mayores opciones a los desarrolladores y usuarios. Lea el artículo completo Continuar leyendo
En el día de hoy, Mozilla ha hecho pública la fecha del Download Day de Firefox. El día del lanzamiento de la versión 3 del popular navegador será oficialmente el:


Archivado en: Desarrollo Web, DHTML, Internet Explorer, Javascript, Navegadores Web, VBScript
VBScript (abreviatura de Visual Basic Script) es un lenguaje interpretado por el Windows Scripting Host de Microsoft. Su sintaxis refleja su origen como variación del lenguaje de programación Visual Basic. Ha logrado un apoyo significativo por parte de los administradores de Windows como herramienta de automatización, ya que, conjunta y paralelamente a las mejoras introducidas en los sistemas operativos windows donde opera fundamentalmente, permite gran margen de actuación y flexibilidad. VBScript es interpretado por el motor de scripting vbscript.dll, que puede ser invocado por el motor ASP asp.dll en un entorno web, por wscript.exe en un entorno Windows de interfase gráfica, por cscript.exe es un entorno de línea de comandos y por iexplorer.exe cuando se trata de scripts a nivel de cliente (similar al javascript). Cuando el código fuente VBScript se guarda en ficheros independientes, éstos tienen típicamente la extensión .vbs. Cuando se emplea en Internet Explorer, VBScript funciona de forma muy similar a JavaScript, procesando código contenido en el documento HTML. VBScript también puede usarse para crear aplicaciones HTML independientes (extensión .hta), que necesitan Internet Explorer 5.0 o superior para poder ser ejecutados. Los desarrolladores de aplicaciones en web suelen preferir JavaScript debido a su mayor compatibilidad con otros navegadores de Internet, ya que VBScript sólo está disponible para el navegador de Microsoft Internet Explorer, y no en otros como Firefox o Opera. VBScript es el lenguaje usado para escribir algunos famosos gusanos de red, como I Love You. Esto se debe a varias razones. Primero, el icono parecido a un pergamino que representa a los ficheros .vbs puede llevar a pensar a los usuarios inexpertos que se trata de un fichero de texto. Segundo, es fácil escribir un gusano informático en VBScript que se propague por correo electrónico (se necesitan pocas líneas de código) aunque en la actualidad Microsoft ha solucionado los agujeros de seguridad explotados por dichos programas maliciosos. Este solucionado no significa erradicado, solo ha complicado el proceso; pues si por ejemplo el I Love You se propagaba a traves del Outlook, ahora si se utiliza el mismo método sale un mensaje de advertencia, por lo que se suele emplear métodos como el envío mediante un servidor smtp (bastante más complejo de programar que por el otro método). Las variables en VBScript no necesitan ser declaradas para usarlas, pero es una buena costumbre hacerlo, pues en todos los demás lenguajes es necesario. Option Explicit sirve para que las variables deban ser declaradas si o si. Al no declarar las variables se deja el código a libre albedrío del intérprete. Al declarar las variables se Deja de Manera Explicita la única manera de proceder. Ejemplos A continuación vamos a ver un ejemplo de script en una página web. El objetivo de este script es mostrar la fecha de la última modificación del documento.
<html> <head> <title> La última modificación del documento</title> </head> <body> <h1>Script de la última modificación de un documento</h1> <script language="VBScript"> document.write "Este documento fue actualizado por última vez en: " document.write document.lastmodified </script> </body> </html>La sentencia document.write es un procedimiento que escribe en la página web el texto que recibe por parámetro, el texto que esta después de la sentencia. La variable document.lastmodified almacena la fecha y la hora de la última actualización. Este script dará como resultado que el documento informe de su última actualización. Continuar leyendo
Archivado en: Desarrollo Web, DHTML, Javascript, Navegadores Web
Javascript es un lenguaje de programación utilizado para crear pequeños programas encargados de realizar acciones dentro del ámbito de una página web. Se trata de un lenguaje de programación del lado del cliente, porque es el navegador el que soporta la carga de procesamiento. Gracias a su compatibilidad con la mayoría de los navegadores modernos, es el lenguaje de programación del lado del cliente más utilizado. Con Javascript podemos crear efectos especiales en las páginas y definir interactividades con el usuario. El navegador del cliente es el encargado de interpretar las instrucciones Javascript y ejecutarlas para realizar estos efectos e interactividades, de modo que el mayor recurso, y tal vez el único, con que cuenta este lenguaje es el propio navegador. Javascript es el siguiente paso, después del HTML, que puede dar un programador de la web que decida mejorar sus páginas y la potencia de sus proyectos. Es un lenguaje de programación bastante sencillo y pensado para hacer las cosas con rapidez, a veces con ligereza. Incluso las personas que no tengan una experiencia previa en la programación podrán aprender este lenguaje con facilidad y utilizarlo en toda su potencia con sólo un poco de práctica. Entre las acciones típicas que se pueden realizar en Javascript tenemos dos vertientes. Por un lado los efectos especiales sobre páginas web, para crear contenidos dinámicos y elementos de la página que tengan movimiento, cambien de color o cualquier otro dinamismo. Por el otro, javascript nos permite ejecutar instrucciones como respuesta a las acciones del usuario, con lo que podemos crear páginas interactivas con programas como calculadoras, agendas, o tablas de cálculo. Javascript es un lenguaje con muchas posibilidades, permite la programación de pequeños scripts, pero también de programas más grandes, orientados a objetos, con funciones, estructuras de datos complejas, etc. Además, Javascript pone a disposición del programador todos los elementos que forman la página web, para que éste pueda acceder a ellos y modificarlos dinámicamente. Con Javascript el programador, que se convierte en el verdadero dueño y controlador de cada cosa que ocurre en la página cuando la está visualizando el cliente. Ejempos A continuación veremos unos ejemplos que nos pueden dar una idea más clara de las capacidades y potencia del lenguaje que nos vendrán bien para tener una noción más exacta de lo que es JavaScript.
<script> window.open("http://www.google.com","","width=550,height=420,menubar=no") </script>Con una línea de Javascript podemos hacer cosas bastante atractivas. En el ejemplo anterior podemos ver cómo abrir una ventana secundaria sin barras de menús que muestre el buscador Google.
<script> document.write(new Date()) </script>Con el script anterior podemos mostrar la fecha de hoy. A veces es muy interesante mostrarla en las webs para dar un efecto de que la página está al "al día", es decir, está actualizada. Estas líneas deberían introducirse dentro del cuerpo de la página en el lugar donde queramos que aparezca la fecha. Otro ejemplo rápido se puede ver a continuación. Se trata de un botón para volver hacia atrás, como el que tenemos en la barra de herramientas del navegador. Ahora veremos una línea de código que mezcla HTML y Javascript para crear este botón que muestra la página anterior en el historial, si es que la hubiera.
<input type=”button” value=”Atrás” onclick="history.go(-1)">Como diferencia con los ejemplos anteriores, hay que destacar que en este caso la instrucción Javascript se encuentra dentro de un atributo de HTML, onclick, que indica que esa instrucción se tiene que ejecutar como respuesta a la pulsación del botón. Applet vs. JavaScript
JavaScript | Applet |
Interpretado por el cliente (No compilado) | Cargado en el servidor antes de ejecutarse en el cliente |
Basado en objetos | El código consiste en clases con herencia |
Código integrado e incrustado en HTML | Los applets son llamados desde una página HTML |
Tipos de variables no declaradas | Los argumentos deben ser de un tipo específico |
Archivado en: CSS, Desarrollo Web, DHTML, HTML, Javascript, Navegadores Web
A medida que vamos avanzando en la programación de páginas web nos vamos fijando nuevos objetivos para crear cada día webs más excitantes. Siguiendo este camino, llega un momento que el lenguaje HTML se nos queda corto y tenemos que servirnos de alguna tecnología superior, que nos permita realizar esos desarrollos más complejos y dinámicos.
DHTML no es precisamente un lenguaje de programación. Más bien se trata de una nueva capacidad de la que disponen los navegadores modernos, por la cual se puede tener un mayor control sobre la página que antes.
Cualquier página que responde a las actividades del usuario y realiza efectos y funcionalidades se puede englobar dentro del DHTML, pero en este caso nos referimos más a efectos en el navegador por los cuales se pueden mostrar y ocultar elementos de la página, se puede modificar su posición, dimensiones, color, etc.
DHTML nos da más control sobre la página, gracias a que los navegadores modernos incluyen una nueva estructura para visualizar en páginas web denominada capa. Las capas se pueden ocultar, mostrar, desplazar, etc.
Para realizar las acciones sobre la página, como modificar la apariencia de una capa, seguimos necesitando un lenguaje de programación del lado del cliente como Javascript o VBScript.
Estos lenguajes no permiten el desarrollo de cualquier proyecto en Internet, ya que al ser ejecutados en el navegador del cliente, no tienen acceso a todos los recursos del sistema del usuario, para evitar agujeros de seguridad, ni a los recursos del servidor donde están alojadas las páginas. Esta limitación, añadida a la ya comentada de su dependencia del navegador, los hace insuficientes para desarrollos avanzados, siendo más bien un complemento de programación que el núcleo de verdaderas aplicaciones en el web.
Hojas de estilo (CSS)
Dentro del concepto de DHTML se engloban también las Hojas de Estilo en Cascada o CSS (Cascade Style Sheets)
CSS, es una tecnología que nos permite crear páginas web de una manera más exacta. Gracias a las CSS somos mucho más dueños de los resultados finales de la página, pudiendo hacer muchas cosas que no se podía hacer utilizando solamente HTML, como incluir márgenes, tipos de letra, fondos, colores, etc.
Las Hojas de Estilo en Cascada se escriben dentro del código HTML de la página web, en algunos casos avanzados se pueden escribir en un archivo a parte y enlazar la página con ese archivo. Una de las características más potentes de la programación con hojas de estilo consiste en definir los estilos de todo un sitio web. De este modo, todas las páginas comparten una misma declaración de estilos y, por tanto, si la cambiamos, cambiarán todas las páginas.
Ejemplos
Podemos ver un ejemplo a continuación:
P { font-size : 12pt; font-family : arial,helvetica; font-weight : normal; } H1 { font-size : 36pt; font-family : verdana,arial; text-decoration : underline; text-align : center; background-color : Teal; } BODY { background-color : #006600; font-family : arial; color : White; }Veamos una página web entera que enlaza con la declaración de estilos anterior
<html> <head> <link rel="STYLESHEET" type="text/css" href="estilos.css"> <title>Página que lee estilos</title> </head> <body> <h1>Página que lee estilos</h1> <p> Esta página tiene en la cabecera la etiqueta necesaria para enlazar con la hoja de estilos. </p> </body> </html>Las Hojas de Estilo en Cascada son un estándar muy amplio, con unas especificaciones y posibilidades muy grandes. Sin embargo, lo mejor para trabajar con esta tecnología es conocerla bien, gracias a ello, los resultados serán mucho más sorprendentes. No podemos hablar de DHTML sin tocar el tema de los lenguajes de script que veremos en el próximo capítulo. Continuar leyendo
Archivado en: Cursos, Desarrollo Web, Java, Navegadores Web, NetBeans
Un applet es un componente de una aplicación que se ejecuta en el contexto de otro programa, por ejemplo un navegador web. El applet debe ejecutarse en un contenedor, que lo proporciona un programa anfitrión, mediante un plugin, o en aplicaciones como teléfonos móviles que soportan el modelo de programación por applets. A diferencia de un programa, un applet no puede ejecutarse de manera independiente, ofrece información gráfica y a veces interactúa con el usuario, típicamente carece de sesión y tiene privilegios de seguridad restringidos. Un applet normalmente lleva a cabo una función muy específica que carece de uso independiente. Cuando un Navegador carga una página Web que contiene un Applet, este se descarga en el navegador Web y comienza a ejecutarse esto nos permite crear programas que cualquier usuario puede ejecutar con tan solo cargar la página Web en su navegador. Ejemplos comunes de applets son las Java applets y las animaciones Flash. Otro ejemplo es el Windows Media Player utilizado para desplegar archivos de video incrustados en los navegadores como el Internet Explorer. Otros plugins permiten mostrar modelos 3D que funcionan con un applet. Applet de Java Un Java applet es un código Java que carece de un método main, por eso se utiliza principalmente para el trabajo de páginas web, ya que es un subprograma o pequeño programa que es utilizado en una página HTML y representado por una pequeña pantalla gráfica dentro de ésta. Por otra parte, la diferencia entre una aplicación Java y un applet radica en cómo se ejecutan. Para cargar una aplicación Java se utiliza el intérprete de Java. En cambio, un applet se puede cargar y ejecutar desde cualquier explorador que soporte Java (Nescape, Internet Explorer de Windows, Mozilla Firefox, etc.). Entre sus características podemos mencionar un esquema de seguridad que permite que los applets que se ejecutan en el equipo no tengan acceso a partes sensibles, por ejemplo no pueden escribir archivos, a menos que uno mismo le dé los permisos necesarios en el sistema; la desventaja de este enfoque es que la entrega de permisos es engorrosa para el usuario común, lo cual juega en contra de uno de los objetivos de los Java applets: proporcionar una forma fácil de ejecutar aplicaciones desde el navegador web. Ventajas de los applet de Java • Funcionan en Linux, Windows y Mac OS, son multiplataforma • El mismo applet pueden trabajar en "todas" las versiones de Java, y no sólo la última versión del plug-in. Sin embargo, si un applet requiere una versión posterior de la JRE, el cliente se verá obligado a esperar durante la gran descarga. • Es soportado por la mayoría de los navegadores Web • Puede ser almacenado en la memoria cache de la mayoría de los navegadores Web, de modo que se cargará rápidamente cuando se vuelva a cargar la página Web, aunque puede quedar atascado en la caché, causando problemas cuando se liberan nuevas versiones. • Puede tener acceso completo a la máquina en la que se está ejecutando, si el usuario lo permite • Puede ejecutarse con velocidades comparables (pero en general más lento) a la de otros lenguajes compilados, como C + +, pero muchas veces más rápida que la de JavaScript • Puede trasladar el trabajo del servidor al cliente, haciendo una solución Web más escalable tomando en cuenta el número de usuarios / clientes Desventajas de los applet de Java • Requiere el plug-in de Java, que no está disponible por defecto en todos los navegadores web. • Sun no ha creado una implementación del plug-in para los procesadores de 64 bits • No puede iniciar la ejecución hasta que la Máquina virtual de Java está en funcionamiento, y esto puede tomar tiempo la primera vez que se ejecuta un applet. • Si no esta firmado como confiable, tiene un acceso limitado al sistema del usuario - en particular no tiene acceso directo al disco duro del cliente o al portapapeles. • Algunas organizaciones sólo permiten la instalación de software a los administradores. Como resultado, muchos usuarios (sin privilegios para instalar el plug-in en su navegador) no pueden ver los applets. • Un Applet podría exigir una versión específica del JRE. Cómo crear un applet de java Para crear un applet necesitamos escribir una clase que herede de la clase Applet del paquete java.applet.*;
import java.applet.*; public class MiApplet extends Applet { //Cuerpo del ''applet''. }El código anterior declara una nueva clase MiApplet que hereda todas las capacidades de la clase Applet de Java. El resultado es un fichero MiApplet.java. Una vez creada la clase que compone el applet, escribimos el resto del código y después lo compilamos, obteniendo el fichero MiApplet.class. Para poder crear el applet se necesita compilar el código Java en un intérprete.
import java.applet.*; import java.awt.*; import java.util.*; import java.text.DateFormat; public class MiApplet extends Applet implements Runnable { private Thread hilo = null; private Font fuente; private String horaActual = "00:00:00"; public void init() { fuente = new Font("Verdana", Font.BOLD, 24); } public void start() { if (hilo == null) { hilo = new Thread(this, "Reloj"); hilo.start(); } } public void run() { Thread hiloActual = Thread.currentThread(); while (hilo == hiloActual) { //obtener la hora actual Calendar cal = Calendar.getInstance(); Date hora = cal.getTime(); DateFormat df = DateFormat.getTimeInstance(); horaActual = df.format(hora); repaint(); try { Thread.sleep(1000); } catch (InterruptedException e){} } } public void paint(Graphics g) { //Dibujar un rectangulo alrededor del contenedor g.draw3DRect(1, 1, getSize().width-3, getSize().height-3, false); //Establecer la Fuente g.setFont(fuente); //mostrar la Hora g.drawString(horaActual,14,40); } public void stop() { hilo = null; } }Finalmente, para ejecutar el applet hay que crear una página Web que haga referencia al mismo. La etiqueta HTML que permite hacer eso es <applet>:
<html> <applet code="MiApplet.class" width="370" height="270"> </applet> </html>Los parámetros "MiApplet.class", "370" y "270" correspondientes a la ubicación del archivo que contiene la clase, el ancho y el alto del applet, se pueden modificar. Continuar leyendo
Archivado en: Desarrollo Web, Java, Navegadores Web, NetBeans
Una Máquina virtual Java (en inglés Java Virtual Machine, JVM) es un programa nativo, es decir, ejecutable en una plataforma específica, capaz de interpretar y ejecutar instrucciones expresadas en un código binario especial (el Java bytecode), el cual es generado por el compilador del lenguaje Java.
El código binario de Java no es un lenguaje de alto nivel, sino un verdadero código máquina de bajo nivel, viable incluso como lenguaje de entrada para un microprocesador físico. Como todas las piezas del rompecabezas Java, fue desarrollado originalmente por Sun Microsystems.
La JVM es una de las piezas fundamentales de la plataforma Java. Básicamente se sitúa en un nivel superior al Hardware del sistema sobre el que se pretende ejecutar la aplicación, y este actúa como un puente que entiende tanto el bytecode, como el sistema sobre el que se pretende ejecutar. Así, cuando se escribe una aplicación Java, se hace pensando que será ejecutada en una máquina virtual Java en concreto, siendo ésta la que en última instancia convierte de código bytecode a código nativo del dispositivo final.
La gran ventaja de la máquina virtual java es aportar portabilidad al lenguaje de manera que desde Sun Microsystems se han creado diferentes máquinas virtuales java para diferentes arquitecturas y así un programa .class escrito en un Windows puede ser interpretado en un entorno Linux. Tan solo es necesario disponer de dicha máquina virtual para dichos entornos. De ahí el famoso axioma que sigue a Java, "escríbelo una vez, ejecútalo en cualquier parte", o "Write once, run anywhere".
La máquina virtual de Java puede estar implementada en software, hardware, una herramienta de desarrollo o un Web browser; lee y ejecuta código precompilado bytecode que es independiente de la plataforma multiplataforma. La JVM provee definiciones para un conjunto de instrucciones, un conjunto de registros, un formato para archivos de clases, la pila, un heap con recolector de basura y un área de memoria. Cualquier implementación de la JVM que sea aprobada por SUN debe ser capaz de ejecutar cualquier clase que cumpla con la especificación.
Existen varias versiones, en orden cronológico, de la máquina virtual de Java. En general la definición del Java bytecode no cambia significativamente entre versiones, y si lo hacen, los desarrolladores del lenguaje procuran que exista compatibilidad hacia atrás con los productos anteriores.
En un sentido amplio, la Máquina Virtual de Java actúa como un puente entre el resultado de la compilación (el bytecode) y el sistema sobre el que se ejecuta la aplicación. Para cada dispositivo debe haber una JVM específica, ya sea un teléfono móvil, un PC con Windows XP, o un microondas. En cualquier caso, cada máquina virtual conoce el conjunto de instrucciones de la plataforma destino, y traduce un código escrito en lenguaje Java (común para todas) al código nativo que es capaz de entender el Hardware de la plataforma.
Una arquitectura de maquina virtual permite un control granular fino sobre las acciones que el código puede hacer dentro de la máquina. Esto está diseñado para permitir ejecución segura de código no confiable desde fuentes remotas, un modelo usado muy famoso son las Java applets. Applets se ejecutan dentro de una VM incorporada en el navegador del usuario, ejecutando código descargado desde un servidor HTTP remoto. El código remoto se ejecuta en un entorno cerrado y altamente restringido, llamado también sandbox, el cual está diseñado para proteger al usuario de código erróneo o malicioso. Los Publicadores con recursos financieros suficientes pueden conseguir un certificado con el cual hacer applets con firma digital que las caractericen como seguras ("safe"), dándoles entonces permisos para salir de la sandbox y acceder al sistema de ficheros local y sistema de red, presumiblemente bajo el control del usuario.
Continuar leyendo
Adobe Shockwave es un plugin para navegadores web que permite la reproducción de contenidos interactivos como juegos, presentaciones, aplicaciones de formación, etc, anteriormente llamado Macromedia Shockwave, por la empresa que lo creó y que luego fue absorbida por Adobe.
A menudo es confundido con el plugin de la misma casa Adobe Flash Player. Esto se debe a una agresiva campaña publicitaria lanzada al final de los noventa. Shockwave es el primer plugin desarrollado por Macromedia y el que, relativamente, ha obtenido menos éxito. En un intento por aumentar su presencia en el mercado y ayudar a promover otros formatos multimedia, todos los players de Macromedia empezaron a utilizar 'Shockwave' en sus nombres, como en Shockwave Flash. Esto llevó a que la línea de cada producto se confundiera.
Aunque Flash Player es ahora mismo el más extendido, popular y sobre el que más se desarrolla, Shockwave mantiene una fuerte posición por el número de ordenadores donde está instalado. El motor 3D de Shockwave es todavía el líder indiscutible en su mercado, y hacen que este plugin sea muy popular con un gran número de desarrolladores de juegos online y de jugadores. Los archivos Flash (SWF) pueden ser ejecutados en Shockwave, pero no a la inversa. Otras características no incorporadas por Flash incluyen un motor de render mucho más rápido, junto con aceleración 3D por hardware, acceso directo a píxel en imágenes de mapa de bits, diferentes modos de filtrado para composiciones en capas de los gráficos y soporte para diversos protocolos de red, incluido Internet Relay Chat. Además, a través de los Xtras, los desarrolladores pueden ampliar la funcionalidad de Shockwave con aplicaciones hechas a medida.
Adobe Shockwave Player actualmente está instalado en un 50% de los navegadores. Sus ficheros tienen extensión ".DCR" desarrollados con Macromedia Director.
Adobe Flash Player, instalado en un 98% de los navegadores. Utiliza ficheros con extensión ".SWF" desarrollados con Macromedia Flash, Macromedia FreeHand, Generator y otras aplicaciones.
Continuar leyendo
Archivado en: Cursos, Desarrollo Web, Flash, Navegadores Web
En un principio esta fue una tecnología más, con la necesidad de instalar un plug-in para poder visualizarse. Cualquier webmaster es reacio a incorporar a una página web contenidos para los que sea necesario utilizar plug-ins, pues es de suponer que no todos los tendrán y que se va a marginar a una serie de usuarios. Con el tiempo, flash se ha convertido en un estandar, viene en la instalación básica de los exploradores, se instala automáticamente si el navegador no lo tiene y muchas páginas lo utilizan. Como resultado tenemos que los webmasters o diseñadores del web lo vienen utilizando para crear todo tipo de efectos, en la página principal del sitio o diseñando todas las páginas con Flash.
La clave de Flash es que es un programa de animación vectorial. Esto significa que se pueden crear animaciones complejas: aumentar y reducir elementos de la animación, mover de posición estos objetos, y otras cosas sin que la animación ocupe mucho espacio en el disco. Los vectores con los que trabaja Flash sólo son, por decirlo de alguna manera, siluetas que casi no ocupan espacio y se pueden modificar fácilmente y sin gasto de memoria en disco.
Desde hace tiempo, proliferan los trabajos hechos en Flash y se pueden ver muchas páginas que incorporan animaciones, sonido y efectos realmente interesantes. Flash es un programa que nos permite aplicar toda nuestra creatividad en la web y fulmina muchos de los límites con los que teníamos que enfrentarnos anteriormente en el diseño de webs.
Flash Player usa un modelo de seguridad sandbox, lo cual significa que las aplicaciones Flash que están reproduciéndose en un navegador disponen de recursos muy estrictos y limitados disponibles para ellos. Las aplicaciones, por ejemplo, no pueden leer archivos del disco duro (excepto los datos como cookies que ellos mismos hayan escrito, denominadas SharedObjects). A partir del lanzamiento de Flash Player 7, sólo pueden comunicarse con el dominio del que ellos se originaron, a menos que sea permitido explícitamente por otro dominio.
ActionScript
Es cierto que la interfaz de programación de Flash está basada en JavaScript, pero con base en este lenguaje, fue creado ActionScript. Puede parecer a simple vista que JavaScript y ActionScript son iguales, pero no lo son. Por una parte, JavaScript es un lenguaje de programación estructurada (también llamada programación modular, debido a la característica de poder armar por partes el script) y además se utiliza principalmente para agregarle interactividad a páginas web. Por otra parte, ActionScript, desde su versión 2.0, pasa de ser de programación estructurada a programación orientada a objetos, que trata de ver el entorno de programación como el mundo real, donde cada objeto tiene propiedades como el color, la forma y su ubicación, y métodos (borrar un texto, parar la línea de tiempo, cargar variables u hojas de estilo), y además nos encontramos con un lenguaje más estricto y más amplio donde usted puede crear sus propias clases.
Ejemplo de Flash
En el ejemplo podemos apreciar el sitio web del canta autor Ricardo Arjona, hecho completamente con Flash. Gracias a las ventajas que nos ofrece esta tecnología se pueden ver fragmentos de sus videos clip directamente en la página, escuchar como fondo musical trozos de su último éxito e interactuar con el contenido del sitio apreciando numerosos efectos visuales.
Continuar leyendo
Archivado en: Desarrollo Web, Flash, Java, Navegadores Web
Un plugin o plug-in (en inglés "enchufar", también conocido como addin, add-in, addon o add-on) es una aplicación informática que interactúa con otra aplicación para aportarle una función o utilidad específica, generalmente muy específica, como por ejemplo servir como driver (controlador) en una aplicación, para hacer así funcionar un dispositivo en otro programa. Ésta aplicación adicional es ejecutada por la aplicación principal. Los plugins típicos tienen la función de reproducir determinados formatos de gráficos, reproducir datos multimedia, codificar/decodificar emails, filtrar imágenes de programas gráficos, etc.
Se utilizan como una forma de expandir programas de forma modular, de manera que se puedan añadir nuevas funcionalidades sin afectar a las ya existentes ni complicar el desarrollo del programa principal.
En los navegadores web esto se refleja al intentar abrir un archivo que no posee un plugin en el sistema, como los documentos en PDF o las animaciones en Flash, lo que generará un error y se entrega, generalmente, un enlace para conseguir el plugin que no existe en el navegador.
Algunos de los plugins más populares que se ejecutan en las aplicaciones web de lado del cliente son Adobe Flash Player, para ejecutar aplicaciones Flash dentro de las páginas; Adobe Shockwave Player para aplicaciones Shockwave y Java Virtual Machine para la ejecución de los Applet de Java.
Continuar leyendo
Archivado en: Desarrollo Web, Internet Explorer, Navegadores Web, Windows
Antes de la tecnología ActiveX, dos estándares eran los más utilizados en Microsoft Windows. Uno de ellos era OLE (Object Linking and Embedding), y el otro era COM (Component Object Model). Ambos regímenes fueron diseñados para interoperabilidad de software, el primero se centra en la comunicación y la segunda se centra en la aplicación. En 1996, Microsoft combina las tecnologías y el resultado toma el nombre de ActiveX. Microsoft Office Web Components es un ejemplo de software ActiveX del lado del cliente. Usando determinados lenguajes, un programador puede manipular hojas de cálculo y documentos desde el código como si estuviera usando las aplicaciones directamente. ActiveX tiene presencia en la programación del lado del servidor y del lado del cliente, aunque existan diferencias en el uso en cada uno de esos dos casos. ActiveX en el lado del cliente Son pequeños programas que se pueden incluir dentro de páginas web y sirven para realizar acciones de diversa índole. Por ejemplo hay controles ActiveX para mostrar un calendario, para implementar un sistema de FTP, etc. Son un poco parecidos a los Applets de Java en su funcionamiento, aunque una diferencia fundamental es la seguridad, pues un Applet de Java no podrá tomar privilegios para realizar acciones malignas (como borrarnos el disco duro) y los controles ActiveX sí que pueden otorgarse permisos para hacer cualquier cosa. Los controles ActiveX son particulares de Internet Explorer. Otros navegadores como Mozilla Firefox han rechazado completamente la compatibilidad de estos por el riesgo de seguridad que implican para el usuario final de la aplicación; aunque desarrolladores externos a esta empresa ya han liberado un plugin que permite el soporte de este tipo de controles al Zorro de Fuego. Los controles ActiveX se desarrollan con entornos de Microsoft para la creación de aplicaciones Windows, como pueden ser Visual Basic Script o Visual C. Cabe señalar es que existen muchos controles ActiveX tanto del lado del servidor como del cliente, que están ya desarrollados y podemos incluirlos fácilmente en nuestras creaciones. Con ActiveX, los sitios web se pueden animar usando efectos multimedia, objetos interactivos, y aplicaciones sofisticadas que crean una experiencia agradable para el usuario. Los mismos efectos se pueden experimentar con Java, Shockwave, Flash, y otras aplicaciones o programas. La diferencia entre ActiveX y las otras opciones es que ActiveX es un producto exclusivo de Microsoft que hace uso de los controles ActiveX. ActiveX y Java ActiveX provee un mecanismo estándar para extender cualquier lenguaje de programación, incluyendo Java. ActiveX extiende las capacidades del lenguaje Java permitiendo a los programadores de este lenguaje integrar sus applets con la riqueza de ActiveX. ActiveX une los applets con objetos creados en otros lenguajes, de manera que los programadores de Java pueden linkear con controles ActiveX directamente desde sus programas en Java. En el mismo token, los objetos escritos en otros lenguajes pueden linkea a los applets de Java. ActiveX es la soga que ata todo junto, dando a luz a la más alta tecnología en una plataforma abierta e integrada. Provee una forma común de extender y vincular lenguajes de programación, incluyendo Java. ActiveX maximiza los recursos para el desarrollo de sitios interactivos. Continuar leyendo
Archivado en: Desarrollo Web, Javascript, Navegadores Web
El Modelo de Objetos de Documento, frecuentemente abreviado DOM, es una forma de representar los elementos de un documento estructurado (tal como una página web HTML o un documento XML) como objetos que tienen sus propios métodos y propiedades. El responsable del DOM es el World Wide Web Consortium (W3C). En efecto, el DOM es una API para acceder, añadir y cambiar dinámicamente contenido estructurado en documentos con lenguajes como Javascript. El DOM se ha diseñado para ser utilizado en cualquier lenguaje de programación. Por ejemplo, considérese esta tabla, tomada de un documento HTML:
<TABLE> <TBODY> <TR> <TD>Shady Grove</TD> <TD>Aeolian</TD> </TR> <TR> <TD>Over the River, Charlie</TD> <TD>Dorian</TD> </TR> </TBODY> </TABLE>El DOM representa esta tabla de este modo:

Archivado en: Cursos, Desarrollo Web, HTML, Javascript, Navegadores Web
Las tecnologías del lado del cliente, es decir, las que se ejecutan en el navegador del usuario son las páginas dinámicas que se procesan en el cliente. En estas páginas toda la carga de procesamiento de los efectos y funcionalidades la soporta el navegador. Usos típicos de las páginas de cliente son efectos especiales para webs como rollovers o control de ventanas, presentaciones en las que se pueden mover objetos por la página, control y validación de formularios, cálculos, etc. El código necesario para crear los efectos y funcionalidades se incluye dentro del mismo archivo HTML y generalmente son scripts, activex o plugins. Cuando una página HTML contiene alguna de las tecnologías de cliente, el navegador se encarga de interpretarlas y ejecutarlas para realizar los efectos y funcionalidades. Las páginas del cliente son muy dependientes del sistema donde se están ejecutando y esa es su principal desventaja, ya que cada navegador tiene sus propias características, incluso cada versión, y lo que puede funcionar en un navegador puede no funcionar en otro. Como ventaja se puede decir que estas páginas descargan al servidor algunos trabajos, ofrecen respuestas inmediatas a las acciones del usuario y permiten la utilización de algunos recursos de la máquina local. Las páginas dinámicas de cliente principalmente se escriben en dos lenguajes de programación: Javascript y Visual Basic Script (VBScript). También se puede hacer uso de las CSS o XML para tecnologías como DHTML o AJAX. Existen tecnologías de cliente que se ejecutan a través plugins instalados en el navegador. Algunas de las más conocidas son Flash y los Applet de Java. Continuar leyendo
Archivado en: CSS, Desarrollo Web, HTML, Internet Explorer, Javascript, Maestros del Web, Mis Artículos, Navegadores Web, Optimización
Debido a la diversidad de navegadores y las diferencias entre versiones es muy útil hacer uso de algunos hacks si queremos que la apariencia de nuestras páginas en Internet Explorer, sea igual que en el resto de los navegadores que soportan los estándares.
A continuación mostramos algunos hacks útiles, que podremos utilizar en nuestros archivos CSS para solucionar problemas que nos suceden a diario con nuestros diseños web cuando se muestran con Internet Explorer.
Lea el artículo completo publicado en Maestros del Web Continuar leyendo