Este artículo será el primero de una seguidilla de entradas que te ayudarán a introducirte al desarrollo web.
Si estás leyendo este artículo es muy probable que aún no tengas experiencia en cuanto a la materia y por lo tanto muchas preguntas están rondando tu cabeza como por ejemplo
- ¿Cómo funciona una página web?
- ¿Qué necesito para hacer un sitio web?
Y aún podriamos citar muchas otras pero estas son suficientes para nuestro propósito.
¿Cómo funciona una página web?
Una página web es el resultado de una petición del navegador a un servidor web.
Cuando abrimos nuestro navegador web (por favor que sea el
Mozilla Firefox :P) y tenemos la intención de visitar un sitio lo que normalmente hacemos es ingresar en la barra de direcciones una URL, es decir, la dirección de un sitio web. Es allí cuando se produce una
petición HTTP la cual contiene información que nosotros ingresamos.
Tomemos un ejemplo! Introducimos el link de este blog al navegador
http://linux-web-py.blogspot.com/
ENTER! Lo que normalmente no vemos (al menos si no tenemos instalado el
Live HTTP Headers) y muchas veces ni sabemos es que está pasando lo siguiente:
- Se abre una conexión al host correspondiente
- Se envía un mensaje en el estilo siguiente:
GET / HTTP/1.1
Host: linux-web-py.blogspot.com
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; es-ES; rv:1.9.1) Gecko/20090624 Firefox/3.5
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: es-es,es;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Cookie: FWE_3bdeca4de23a17d415fab00231961686=0.15327743636597868; _csuid=4a218d4b16d53785; __utma=20- La respuesta del servidor está formada por encabezados seguidos del recurso solicitado:
HTTP/1.x 200 OK
Content-Type: text/html; charset=UTF-8
Expires: Wed, 08 Jul 2009 04:42:09 GMT
Date: Wed, 08 Jul 2009 04:42:09 GMT
Cache-Control: public, max-age=0, proxy-revalidate, must-revalidate
Last-Modified: Wed, 08 Jul 2009 04:35:21 GMT
Etag: "b4819da2-fb44-4071-8af5-485af12b270a"
Content-Encoding: gzip
X-Content-Type-Options: nosniff
Content-Length: 27730
Age: 0
Server: GFE/2.0No voy a entrar en detalles acerca de qué significa cada linea tanto de petición como de respuesta porque no es nuestro tema asi que básicamente lo que sucede es que el
servidor web (
Ej: Apache) recibe nuestra petición y busca el archivo correspondiente para obtener los resultados.
El archivo (en la gráfica
Archivo PHP que es nuestra página en sí) procesa todo el código que tiene con un intérprete de lenguaje (
Intérprete de PHP) el cual de ser necesario
interacciona con otros programas, como por ejemplo una base de datos o bien un servidor de correo electrónico, y luego de finalizar con todos los procesos el servidor web devuelve la respuesta final en un
documento HTML. Por último, nuestro navegador se encarga de traducir visualmente el documento de respuesta final a lo que tenemos ante nuestros ojos!
¿Nunca pensaste que hacía todo eso mientras te quejabas de cuanto tardaba en "
cargar" toda la página?
:)¿Qué necesito para hacer un sitio web?
Muy probablemente tienes todo lo que necesitas y ni te imaginabas que se necesitaba tan poquito.Y en realidad son tan pocos que los vamos a citar:
- Ganas de aprender
- Editor de textos
- Navegador web
Ganas de aprender
Ya sé que suena cursi y todo pero es una simple realidad que si uno no tiene las suficientes ganas y sobre todo paciencia cuando las cosas no salen en ningún objetivo te irá bien y personalmente creo que mucho menos en el desarrollo web porque requiere de mucha lectura y entre pruebas y errores ir ganando conocimiento práctico.
Googlear[1] te ayudará en cualquier duda puntual que tengas (aunque sé que
Mr. Bing se está esforzando por sacar ese término lo utilizo).
Editor de texto
Cualquier editor de textos te será útil para escribir HTML. Ya tienes el
Bloc de notas (si utlizas Windows) o el
gedit (si utilizas Linux en ambiente Gnome)
por darte ejemplos.
Otra opinión personal: Es muy recomendable que empieces con un editor de textos sencillo no con un IDE
[2] porque el objetivo inicial es aprender el concepto de la codificación y puedas apreciar su funcionamiento a medida que vas avanzando. Te puede ayudar bastante si tu editor tiene un resaltador de sintáxis.
¿Recomendaciones? Usá siempre programas libres! Aquí va el enlace con algunos ejemplos listos para descargarlos (solo para Windows! si usas Linux quedate con el gedit)
Editores de texto para programadores - WindowsEl enlace es a una noticia en
Digg que envié así que de paso si te gusta podés
digg it :PNavegador Web
Todos los buenos navegadores web o
browsers son gratis para su descarga y tienen una basta cantidad!
Simple y sencillamente te recomiendo
Mozilla Firefox por muchos motivos y como no es el tema me los reservo por el momento.
Términos
[1] Googlear: buscar en Google la respuesta a tus preguntas
:)[2] IDE: viene de
integrated development environment, es decir, ambiente de desarrollo integrado. Ej.: NetBeans, Dreamweaver, Eclipse, Zend Studio, etc.