Dentro de la cantidad de lenguajes de programación que hay en el mundo informático, vamos a dedicar este artículo a Javascript. Los motivos son diversos pero según la web de Xakata, una de las web de referencia en el mundo web, en su artículo “Lenguajes de programación, los que más gustan no son los más populares (ni los que dan más dinero)”  nos presenta Javascript como el lenguaje de programación más popular y el séptimo más querido. Esto ya de por sí es motivo para dedicarle nuestro tiempo.

¿Qué es javascript?

Para contestar esto podemos ir a la Wikipedia, que lo sabe todo, y ver su definición: “Se define como orientado a objetos, basado en prototipos, imperativo, débilmente tipado y dinámico. Se utiliza principalmente en su forma del lado del cliente (client-side), implementado como parte de un navegador web permitiendo mejoras en la interfaz de usuario y páginas web dinámicas aunque existe una forma de JavaScript del lado del servidor (Server-side JavaScript o SSJS).”

Como supongo que esta definición es bastante difícil de entender, voy a centrarme en varios puntos de esta: lenguaje orientado a objetos, se utiliza en su lado cliente, permite páginas web dinámicas.

Un lenguaje orientado a objetos, en palabras sencillas, es un lenguaje en el cual a trozos de código les asociamos una personalidad propia (clase). Imaginad que quiero programar un juego de baloncesto. Crearé una clase denominada jugador y a esa clase le daré unas características: altura y peso, y unas acciones: pasar, saltar, correr. Según los valores que dé a esas características y acciones, convertiré a esta clase en diversos objetos: base, alero, escolta o pívot.

Si se utiliza en el lado cliente, quiere decir que nosotros lo ejecutamos y vemos sus resultados.

Y, por último, al trabajar en páginas web y realizar acciones, hacemos que las webs no sean simples pantallas estáticas donde vemos elementos estáticos, sino que podemos hacer que las páginas web realicen acciones en función de donde pulsamos, por ejemplo.

 

¿Para qué sirve javascript?

Para tener claro su uso tenemos que explicar el concepto cliente-servidor en el mundo web. Cuando nosotros creamos una página web, esta se almacena en un servidor web, cuya función es que cuando alguien pide la página enviarle una copia de esta. La copia de la página está escrita en un lenguaje de programación llamado HTML. Este código solo se puede leer en el navegador de nuestro ordenador. A este código HTML le podemos añadir una gran cantidad de lenguajes complementarios en función de lo que queremos conseguir. La diferencia entre estos lenguajes es dónde se ejecutan.

Si un lenguaje se ejecuta en el navegador de nuestro ordenador se dice que se ejecuta en el lado cliente: HTML, CSS y JavaScript. Si un lenguaje se ejecuta en el servidor web se ejecuta en el lado servidor: PHP y SQL.

Vamos a centrarnos en el lado cliente. Tenemos una página web escrita en HTML, que queremos que tenga un formato y diseño grafico excepcional, para eso usamos el CSS, y que disponga de botones los cuales al pulsarlos se realicen acciones y la web cambie, cambios en las imágenes que estamos viendo… cosas que si otra persona esta navegando en la misma web, no las estaría viendo pues solo se están produciendo en mi navegador (lado cliente). Todo esto es lo que hace JavaScript.

Programación javascript

Como cualquier lenguaje de programación, utiliza las mismas estructuras que cualquier lenguaje tradicional:

  • Se pueden almacenar valores dentro de variables
  • Se pueden introducir condiciones que modifican los resultados en función de los valores introducidos (estructura if)
  • Se pueden realizar repeticiones de acciones (estructura for)
  • Se pueden trabajar con clases (estructura class)

A los interesados en profundizar en este lenguaje, siempre encontraréis manuales, tutoriales y cursos en internet para aprender el mismo, pero los que me seguís tanto en los cursos introductorios como en mis artículos, soy un enamorado de la gamificación, el aprender jugando, y antes de introducirse en el mundo de JavaScript es bueno dar un vistazo a la siguiente web CodeCombat  y jugar en un mundo de caballeros y orcos con la única arma de tu código en JavaScript.

Después, ya os podéis adentrar dentro de un curso como los que ofrece w3school donde podéis aprender de una formar práctica, con ejemplos, simulaciones y gratis.

Java vs Javascript

 

Seguro que habéis pensado alguna vez que los dos lenguajes tienen alguna cosa que ver. Claro, si se llaman igual, JavaScript es una versión web de Java. Pues no, son de orígenes diferentes.

JavaScript fue desarrollado por Brendan Eich para el navegador Netscape y originalmente se le dio el nombre de Mocha, después cambió a LiveScript y, finalmente, cambió a obtuvo su denominación actual. Este último cambio se produjo cuando Netscape introdujo en su navegador la compatibilidad con el lenguaje Java. Java es un lenguaje utilizado en el lado servidor, con una potencia espectacular, orientado a objetos, y Netscape quiso indicar que JavaScript era un lenguaje como Java pero que trabajaba en la parte cliente. Pero uno no deriva del otro.

JavaScript tiene su marca registrada y licencia en propiedad, por lo que empresas como Microsoft desarrollaron su propia versión. En este caso, en el Internet Explorer nos encontramos con JScript.

 

 

 

 

Joaquin Antonio Erencia Navarro

Asesor Informático LinkiaFP

Asesoramiento.informatico@linkiafp.es