Arxiu d'etiquetes: JavaScript

Els pros i contres del JavaScript i jQuery

Anem a definir, amb poques paraules, el que és JavaScript, d’on ve i que podem fer amb ell.
JavaScript és un llenguatge interpretat pels navegadors, que s’usa per a la programació web (validació de dades per part de la capa client, millora de l’experiència d’usuari, …). Inicialment, es va anomenar LiveScript i fou inventat per enginyers de Netscape, més endavant es va re-anomenar a JavaScript. Molta gent deu pensar, o pensa, que el nom de JavaScript te a veure amb el llenguatge de programació Java, però, sincerament, només tenen de parescut el nom, res més.

Durant els darrers anys JavaScript s’ha tornat molt popular entre els programadors web.

Quins usos li podem donar al JavaScript? doncs, com hem començat a introduïr-ho més amunt. Passarem a enumerar unes quantes:

  • El podem fer servir per validar dades
  • Per millorar l’experiència d’usuari (cosetes que es mouen per la pàgina, efectes xulixaxis 😀 ).
  • També per el tan anomenat AJAX, que, no és més que, enviar dades a un servidor i pintar-les, o no, per pantalla.
  • Detecció del navegador que s’està usant
  • Manipulació de cookies
  • Analítica web,…

Ara que sabem el que podem fer, anam a llistar els Pros i Contres del Javascript

Pros:

  • Rendiment: El JavaScript s’executa íntegrament en el navegador del client salvant temps de peticions i d’amplada de banda del servidor web.
  • És un llenguatge d'”scripting” lleuger i relativament fàcil d’aprendre.
  • Com hem dit abans, s’executa al navegador del client, per això el resultat i el procés es relativament ràpid.
  • Es poden usar extensions de tercers per comprobar els fragments de codi.

Contres:

  • En temes de seguretat, executant codi JavaScript maliciós, podria fer-se servir per aprofitar errades del navegador i fer-se amb el control de l’ordinador.
  • En temes d’interpretació, cada navegador interpreta el JavaScript d’una manera diferent.

Ara passem a definir el que és jQuery. jQuery és una llibreria dissenyada per simplificar la programació de JavaScript. El programador que usa aquesta llibreria, usa menys quantitat de codi sense que la funcionalitat es vegi alterada.

Cal dir que a part de jQuery hi ha altres llibreries que ens poden ajudar a la programació amb JavaScript, tals com Mootools, Dojo, Prototype, … Unes més orientades a efectes visuals i d’altres més orientades a manipulació de la página.

Anem a posar un exemple de codi de Javascript i jQuery, que fan exactament el mateix. Volem el valor d’un element:

JavaScript:

document.getElementById('idElement').value;

jQuery:

jQuery('#idElement').val();

A vegades podem trobar-ho escrit de la següent forma, ambdues fan el mateix:

$('#idElement').val();

Com podem veure, amb el jQuery escrivim menys i és més fàcil de recordar. Podem dir que el jQuery ens ofereix un “Syntactic Sugar” per a la programació JavaScript.

Anem a citar els Pros i Contres del jQuery:

Pros:

  • Amb jQuery ens oblidam de les compatibilitats entre navegadors. Amb un sol codi escrit, sabem que funcionarà a tots els navegadors suportats per la versió de jQuery que usem.
  • jQuery és fàcil d’usar en comparació amb altres llibreries i, es clar, que amb el propi JavaScript.
  • jQuery te una extensa llista de llibreries/funcions
  • jQuery te molt bona documentació i una gran comunitat.
  • jQuery suporta la funcionalitat AJAX. El JavaScript també, però hauriem d’escriure la funcionalitat per a cada navegador. jQuery amb un codi es suficient per fer-lo anar amb tots els navegadors.

Contres:

  • Ja no escriurem codi nadiu JavaScript, ens hem de limitar a usar les funcions de la llibreria.
  • Es necessari incloure un fitxer per poder usar la funcionalitat.

En resum, no hi ha res que sigui bò o dolent, simplement és diferent.

Com a opinió personal, usar jQuery facilita molt la tasca de programació i a més, per la gran comunitat que té, es molt fàcil trobar com fer una acció desitjada.

Article traduït lliurament de The Pros and Cons of JavaScript and jQuery | JavaLobby DZone.

Com crear límits (bounds) amb la API de Google Maps v3

A la feina necessitava posar a un mapa varis punts i seguidament fer un zoom i centrar la vista en el centre d’aquests punts.
Per això esto he utilitzat la següent funció javascript, que m’he creat. Es necessaria la crida a l’API de google maps versió 3.

Com podeu veure, és facileta, sols guardam en unes variables la latitut i longitut màximes, latitut i longitut mínimes, amb les que crearem els punts per l’objecte bounds, el qual es una parella d’objetos latln. Uno serà el punt SO, el de latitut longitut mínims i l’altre serà el punt NE, el de latitut longitut màxima.
El paràmetre list és un array de JSON on tenim les diferents dades del punt a afegir, tals com la latidut i longitut.
Una vegada creat el bound, simplement hem de pasar-lo al mapa. Ho podem fer de la següent forma:

var map, bounds;
map = new google.maps.Map(div, opts); /* div es l'objecte en el que es pintarà el mapa. opts son les diferents opcions del mapa */
bounds = createBounds(list);
map.fitBounds(bounds);

No és necesari fer un map.setCenter(), perque ja ho fa automàticament el fitBounds.

Subtils errades recents de les API de Google Maps

Fa més o manco un mes tenguerem uns minuts de pànic a l’oficina. Feia poc més d’una setmana que implementarem google maps per mostrar la situació dels hotels que oferim, en detriment a Via Michelin que cobrava un dineral.

Començaren a venir a dir-nos: “google maps no va be!!!”

PANIC!!!

Varem començar a fer proves i no sabiem d’on sortia aquesta errada!!


---------------------------
Error
---------------------------
Se produjo un error en tiempo de ejecución.
¿Desea depurarlo?
Línea: 92
Error: 'GMap' no está definido

Tot s’ha de dir, només fallava amb IE6 i IE7!!

Cercarem per tot el codi i no trobarem res, fins que un va dir ” HEI!! que ja funciona!!!” i tot va tornar a la normalitat.

Es bastant extrany no??

Canvis a Google Analytics

Ara mateix acab de veure que a Google analytics han introduït canvis. Per “trackejar” la pàgina ja no utilitzarem l’estimat urchin ara es més curtet, ga.js.
Jo ho he vist quan he anat al meu perfil i he vist que animaven a la gent ja a posar el nou codi, que a poc a poc aniran afegint noves funcionalitats.
Ara veurem com seran!!!

Segons conten en aquest blog, fa un parell de mesos que està en marxa. A més a més conta quins canvis hi ha i perquè ha canviat.

Epikone | Epikone | ga.js new google analytics tracking code

GoogleMaps a l’estil Lightbox

L’altre dia vaig veure per can anieto2kuna manera diferent de presentar el googleMaps.
Hi ha una modificació del lightbox per mostrar el mapa.
Podeu trobar més informació tant a la web de anieto2k com a la pròpia web del qui ha fet aquesta modificació.

Web | Google Maps LightBox
anieto2k | anieto2k | Google Maps al estilo Lightbox
LightBox | LightBox JS