Max Hernandez

Laberinto - Ejemplo de Canvas en HTML5

martes, 31 de agosto de 2010

World Wide Web


[Imagen obtenida de:

En informática, la World Wide Web, cuya traducción podría ser Red global mundial o Red de amplitud mundial, es un sistema de documentos de hipertexto enlazados y accesibles a través de Internet. Con un navegador web, un usuario es capaz de visualizar sitios Web compuestos de páginas Web o documentos de hipertexto, que básicamente son documentos de texto que además pueden contener imágenes, vídeos u otros contenidos multimedia. Otra caracteristica de las páginas web es que tienen hipervinculos, los cuales son vinculos que apuntan y permiten acceder a otras páginas en la red.

Hipertexto

El hipertexto se puede conceptualizar como un enfoque para manejar y organizar información, en el cual los datos se almacenan en una red de nodos conectados por enlaces, es decir herramientas para formar un cúmulo de información a partir pequeñas unidades de información asociadas unas con otras. El hipertexto es la herramienta con la cual obtenemos información de Internet y puede tomar varias formas, la forma más básica es un hipervínculo, el cual permite navegar entre unidades de información que podrían ser un archivo HTML o bloques de información dentro del mismo archivo HTML.

Los nodos en la red no solo contienen texto, también pueden contener gráficos, imágenes, audio, animaciones, vídeo, así como código ejecutable u otra forma de datos. A estos datos también se les da el nombre de hipermedios, con lo cual se puede inferir que un hipermedio es una generalización del hipertexto.

Hipermedia

Es el término con que se designa al conjunto de métodos o procedimientos para escribir, diseñar o componer contenidos que tengan texto, vídeo, audio, mapas u otros medios, y que además tenga la posibilidad de interactuar con los usuarios.

Una imagen es un ejemplo de un elemento de hipermedia.


Hiperenlace o Hipervínculo 

Es un elemento de un documento electrónico que hace referencia a otro recurso, por ejemplo, otro documento, un punto específico del mismo o de otro documento. Combinado con una red de datos y un protocolo de acceso, un hiperenlace permite acceder al recurso referenciado en diferentes formas, como visitarlo con un navegador, mostrarlo como parte del documento referenciador o guardarlo localmente.

Ejemplo de Hipervinculo:
Este texto es un ejemplo de hipervínculo pues permite acceder a un tipo diferente de información, la cual es la página Web de la universidad a la que pertenezco: www.fime.uanl.mx.


Funcionamiento de la Web

El primer paso consiste en traducir la parte nombre del servidor de la URL en una dirección IP usando la base de datos distribuida de Internet conocida como DNS. Esta dirección IP es necesaria para contactar con el servidor web y poder enviarle paquetes de datos.
Imagen obtenida de:
http://ubuntuarte.com/wordpress/wp-content/uploads/2008/07/dns.gif

El siguiente paso es enviar una petición HTTP al servidor Web solicitando el recurso. En el caso de una página web típica, primero se solicita el texto HTML y luego es inmediatamente analizado por el navegador, el cual, después, hace peticiones adicionales para los gráficos y otros ficheros que formen parte de la página. Las estadísticas de popularidad de un sitio web normalmente están basadas en el número de páginas vistas o las peticiones de servidor asociadas, o peticiones de fichero, que tienen lugar.
Al recibir los ficheros solicitados desde el servidor web, el navegador renderiza la página tal y como se describe en el código HTML, el CSS y otros lenguajes web. Al final se incorporan las imágenes y otros recursos para producir la página que ve el usuario en su pantalla.
La mayoría de las páginas web contienen hiperenlaces a otras páginas relacionadas y algunas también contienen descargas, documentos fuente, definiciones y otros recursos web.
Esta colección de recursos útiles y relacionados, interconectados a través de enlaces de hipertexto, es lo que ha sido denominado como 'red' (web, en inglés) de información. Al trasladar esta idea a Internet, se creó lo que Tim Berners-Lee( creador del HTML) llamó WorldWideWeb (un término escrito en CamelCase, posteriormente desechado) en 1990.


Caché

Si un usuario accede de nuevo a una página después de un pequeño intervalo, es probable que no se vuelvan a recuperar los datos del servidor web de la forma en que se explicó en el apartado anterior. Por defecto, los navegadores almacenan en una caché del disco duro local todos los recursos web a los que el usuario va accediendo. El navegador enviará una petición HTTP sólo si la página ha sido actualizada desde la última carga, en otro caso, la versión almacenada se reutilizará en el paso de renderizado para agilizar la visualización de la página.
Esto es particularmente importante para reducir la cantidad de tráfico web en Internet. La decisión sobre la caducidad de la página se hace de forma independiente para cada recurso (imagen, hoja de estilo, ficheros JavaScript, etc, además de para el propio código HTML). Sin embargo en sitios de contenido muy dinámico, muchos de los recursos básicos sólo se envían una vez por sesión. A los diseñadores de sitios web les interesa reunir todo el código CSS y JavaScript en unos pocos ficheros asociados a todo el sitio web, de forma que pueden ser descargados en las cachés de los usuarios y reducir así el tiempo de carga de las páginas y las peticiones al servidor.



Fuentes

http://www.ldc.usb.ve/~abianc/hipertexto.html
http://es.wikipedia.org/wiki/World_Wide_Web
http://es.wikipedia.org/wiki/Hipertexto
http://es.wikipedia.org/wiki/Hipermedia
http://es.wikipedia.org/wiki/Hiperenlaces

lunes, 16 de agosto de 2010

Aprendiendo java

Durante los últimos días he estado leyendo algunas paginas en Internet y tratando de entender algunos conceptos de este lenguaje nuevo para mí.  Para entender mejor esto hice un código simple, considero que si alguien más esta empezando a aprender Java podría ayudarle a entender un poco más acerca de este lenguaje.

Hola mundo!

En el siguiente ejemplo, me centré en experimentar con las dos formas diferentes de usar las variables: con el método común (instanciando variables primitivas) o con clases (utilizando apuntadores). Ademas añadí una pequeña explicación de la diferencia entre los modificadores de la variable: Static y Public. Por último el código de un clásico "Hola Mundo" para mostrar una bienvenida en una terminal.


/* Todo esto se encuentra en el archivo HolaMundo.java */


// TIPOS DE VARIABLES

import java.lang.Byte; // byte - 1 byte de longitud, Rango: -128..127
import java.lang.Short; // short - 2 bytes de longitud, Rango: -32,768...32,767
import java.lang.Integer; // int - 4 bytes de longitud, Rango: -2;147.483,648 ... 2;147.483,647
import java.lang.Long; // long - 8 bytes de longitud, Rango: -9.223.372.036.854,775.808 ... 9.223.372.036.854,775.807
import java.lang.Float; // float - 32 bits, Rango: +-3,4*10^-38 ... +-3,4*10^38
import java.lang.Double;// double - 64 bits, Rango: +-1,7*10^-308 ... +-1,7*10^308
import java.lang.Character;// char - 2 bytes, Rango: 0 ... 65.535
import java.lang.Boolean; // boolean - 1 bit, Rango: true/false

/* En este punto se declara un objeto público, solo puede haber un solo objeto publico por cada archivo con terminación ".java". El archivo en el disco duro tiene que ser nombrado igual que esta clase, que en este caso sera: "HolaMundo.java". Al interpretarse el código del programa va a buscar el método "main" en esta clase, va a ejecutar el método automáticamente.*/

public class HolaMundo { 

    /* Un método público es análogo a una función ala cual es posible acceder desde otros bloques del programa, como otros archivos ".java" o otras clases.*/
    public static void imprime(){
        System.out.println("blablabla"); // Método que sirve para imprimir texto en pantalla.
    }

    /* Método principal del programa, al interpretar el programa la maquina virtual buscará este método. se declara "public" para que pueda ser encontrado por el interprete y "static" para que pueda ser ejecutado sin tener que construir una instancia de la clase. */
    public static void main( String[] SoyUnMetodo){ 

        System.out.println("Hola Mundo");

        /* Llamada al método de la clase "HolaMundo", gracias a que es un método estático solo tuvo que llamarse a este sin necesidad de construir una instancia de la clase "HolaMundo".*/
        HolaMundo.imprime(); 

        
        Printer.estatico();
        /* En este caso, por otro lado tuvo que ser inicializada la Clase "Printer", una vez inicializada la clase se guarda en una variable del tipo "Print" con el nombre "ejemplo". Esto se hace para poder llamar al método "ejemplo.noestatico();", dado a que el método no es estático, es decir que no se comparte este método entre todos los objetos "Printer", al no ser estático se construye un método para cada objeto instanciado por la clase.*/
        Printer ejemplo = new Printer();
        ejemplo.noestatico();


        // Ahora como declarar variables simples

        /*En este apartado, por medio de la clase java.lang.integer se declara la variable utilizando su forma de objeto y se le manda el valor. Cabe destacar que para generar un objeto "Integer" se llama al constructor de la clase de la siguiente manera "Integer();", pero para que se construya un objeto es necesario utilizar la palabra "new" antes del constructor. */
        Integer numero1 = new Integer(23);
        int numero2 = 24; // Se declara la clase utilizando la variable primitiva.

        System.out.println(numero1);
        System.out.println(numero2);
        System.out.println(numero1+" + 1 = "+numero2);
    }       
};


class Printer {

    static void estatico(){ // Método estático.
        System.out.println("Soy un método estático ;).");
    }

    public void noestatico(){ // Método no estático como ejemplo.
        System.out.println("No soy un método estático.");
    }
};



Por último regularmente voy a agregar una sección de fuentes, las cuales son algunas de las páginas donde he estado aprendiendo, tienen conceptos muy útiles y básicos.

Saludos!!!! :)

Fuentes

http://www.adrformacion.com/curso/java/leccion2/tipos_variables.htm.
Mateu, L. (Noviembre 7, 1996). Obtenido de: http://www.dcc.uchile.cl/~lmateu/Java/Apuntes/subclase.htm.

miércoles, 11 de agosto de 2010

Presentación

Buen día.
Mi nombre es Max Hernandez e inauguro este sitio para aquí poder compartir tareas, trabajos y demás información relacionada con el curso de Programación Web impartida por la doctora Dra. Elisa Schaeffer impartida en la FIME( Facultad de Ingeniería Mecánica y eléctrica) los jueves de M1-M3. Un saludo cordial a la doctora, todos mis compañeros en este curso y lectores en general.