Google lance une première version de Dart, un langage de programmation structuré et orienté objet pour le web. L’annonce officielle a été faite lors de la conférence Goto Aarhus qui se déroule aujourd’hui même au Danemark.

Les programmes développés en Dart pourront être exécutés sois sur une VM, soit compilés vers du JavaScript et être ainsi interprétés par n’importe quel navigateur. Il est prévu que la VM sera intégré à Chrome, mais ce n’est pas encore le cas.

La syntaxe est du C-like, avec les accolades, les points virgules à la fin des instructions, etc … Le typage est un typage fort mais optionnel, ce qui le rend aussi flexible que Javascript. Il supporte aussi les concepts d’héritage et d’interfaces à l’image des langages orientés-objet.

Le langage et les outils de développement sont distribués en open-source sur le site officiel de dart. Pour les plus pointus voici les spécifications du langage.

Personnellement, je serais curieux de voir le chemin que fera ce langage et s’il sera adopté par les développeur ou non.Est-ce qu’il remplacera Javascript à terme ? Le langage GO semble ne pas avoir eu le succès attendu, qu’en sera-t-il de Dart ?

Page et site web, Quésako ?

Suite du cours précédent, on aborde ici les notions de page et site web.

3. Une page web

Là, on commence vraiment à entrer dans le vif du sujet. Nous parlerons des pages web.

Comme d’habitude, commençons par donner une définition, celle justement de page web:

Une page web :
Une page web est un document alphanumérique (qui contient des chriffres et des lettres) codé d’une certaine façon (on verra ça plus tard) pour être conforme à certaine normes et affichable dans un navigateur. Elle contient en outre, du texte, des tableaux, des images, des animations, … Et qui permet une certaine interaction avec l’utilisateur.

définition de page web

Les notions les plus importantes pour faire une page, (et qui sont généralement négligées) sont :

  • Le sujet : Vous devez choisir un sujet digne d’être presenté sur le web, et vous devez aussi le maitrîser.
  • Le design : Il faut que la page soit assez jolie, assez simple (pas beaucoup de couleur ou d’images) et assez attirante et accrochante.
  • L’ergonomie : La facilité d’utilisation, l’utilisateur peut d’un seul coup d’oeil savoir contrôler la page.
  • La légèreté : Pas trop d’images, d’animations ou de videos. Et ne pas mettre 5000 lignes de texte (oui, oui j’ai deja vu ça !), pour que l’utilisateur ne se lasse pas d’attendre que votre page s’affiche ( tout le monde n’a pas la fibre à la maison ! ).

4. Un site web

Assez rapide, le cours passé, n’est-ce pas ? Peut-être que celui-ci aussi le sera, puisque ce sont juste que des rappels, vous connaissez déjà tout ça mais patientez encore un peu avec moi.

Les sites web, tout le monde en parle. Du plus petit au plus grand, de toutes les classes sociales, de toutes les rac… non, non, non, je ne suis pas raciste moi ! Bien au contraire, mais bon, c’est pas notre sujet. Et hop, une nouvelle définition :

Un site web :
Un site web est tout simplement un ensemble de fichiers. Les fichiers les plus importants d’un site web sont les pages web. C’est pages sont reliées entre-elles grâce à des « liens« . Outre les pages web, on peut trouver des documents (fichiers word, openoffice, pdf, excel, …), des audio-visuels (son, videos, images, animation, …), etc …

définition de site web

 

Dis, j’ai pas compris ce que veut dire «lien». Explique moi stp.

Pas de problèmes, un lien, c’est tout simple. C’est juste un mot, une phrase, une image ou tout autre chose qui lorsque tu clique dessus, ça t’emmène à un autre « endroit », une autre page web. Les liens sont très facilement reconnaissables, puisque généralement, lorsque tu mets le pointeur de la souris dessus, il se change en une main, pointant le lien du doigt.

Exactement comme celui-ci qui vous emmène en haut de la page.

Réseaux et architecture web

Ceci est un ancien document que j’ai écris en 2006. Comme je n’avais pas envie de le jeter, qu’il serve au moins à quelque chose sur ce blog. Contactez-moi pour toute remarque, correction ou suggestion.


1. Les réseaux informatiques

En naviguant sur le net ou en discutant avec des potes, vous avez surement entendus une fois « Tiens voila l’adresse du serveur dont jt’ai parlé.  » ou « Le magasin de sport du coin a monté son propre serveur mercredi dernier  » et comme …

Mais au fait qu’est-ce que c’est que ce serveur dont on parle si souvent ?

Hola hola ! Doucement, on y arrive mais d’abord retournons un peu en arrière pour réviser ensemble la notion de réseaux informatiques.

Un réseau informatique :
C’est tout simplement un ensemble d’équipements informatiques (ordinateurs, imprimantes, etc …) reliés entre eux avec ou sans câbles.

définition de réseau informatique

Pour mieux nous représenter cette notion, voici un schéma :

topologie réseau
Un réseau informatique

Il y a plusieurs classifications des réseaux, et ces classifications sont toutes complémentaires les unes aux autre.

Il y a la classification suivant la taille, le mode de communication et la topologie.

Pour la première, c’est très simple, pour chaque taille de réseaux, il y a une dénomination :

  • LAN : « Local Area Network » La taille de réseau s’étend de quelques mètres à un ou deux kilomètres. C’est le reseau de l’entreprise ou de l’établissement scolaire/universitaire.
  • MAN : « Metropolitan Area Network » Ce réseau interconnecte différents LAN dans une même ville, comme les différents bâtiments d’un pôle universitaire, ou les différents sites d’une administration.
  • WAN : « Wide Area Network » Ce réseau permet de communiquer à l’échelle d’un pays, d’un continent ou de la planète entière (comme internet).

Bon, maintenant qu’on a compris ceci, il faut savoir que les réseaux sont divisés en deux grandes catégories: les réseaux en mode de diffusion et les réseaux en mode point-à-point.

Dans le premier type, quand un équipement veut transmettre un message à un autre, il le  » dépose «  sur le moyen de transmission (câble ou autre) et tous les connectés peuvent y avoir accès. Ils vérifient si ce dernier leur a été envoyé sinon, ils le remettent sur le support de communication, jusqu’à ce qu’il arrive à bonne destination.

Dans le second cas, chaque équipement est connecté à un ensemble d’autres équipements directement, pour chaque équipement connecté, il y a un câble, donc un équipement ne peut envoyer de messages qu’à ceux auxquels il est rattaché, et lorsqu’il envoie un message, il arrive directement à destination.

Ensuite, sachons qu’il y a plusieurs topologies de réseaux, et qu’internet est toutes ces topologies à la fois.

Et c’est quoi cette topo chai pas quoi ? C’est une nouvelle bête de cirque ?

Noooon, rassurez-vous, l’informatique regorge de beaucoup de jargon, mais chaque mot a une explication toute simple.

Une topologie :
Une topologie est un type de réseau, ou plus exactement un type d’interconnexion entre les différents équipements d’un réseau. Ces topologies sont divisées en deux groupes suivants le type du réseau (mode diffusion ou point à point). Il en existe plusieurs : en étoile, en anneau, en bus, etc.

définition de topologie de réseau

On peut classifier ces topologies suivant leur type :

Mode de diffusion Mode point-à-point
bus
Topologie en busanneau
Topologie en anneau
etoile
Topologie en étoileboucle simple
Topologie en boucle simpleboucle double
Topologie en boucle doublemaillage régulier
Topologie maillage réguliermaillage irrégulier
Topologie maillage irrégulier

Et pour finir voici un ptit schéma d’internet :

internet
Schéma d’internet

Assez impressionnant n’est-ce pas ?

2. Les serveurs .

Après avoir pris de « solides » bases en réseau, on peut maintenant aborder la notion de « serveur ».

Débutons cette petite section par une définition :

Un serveur :
Un serveur est un ensemble formé d’un ordinateur et de logiciels adéquats, fournissant des services variés.Exemple, un serveur web fournit des sites web, un serveur ftp donne l’accès à des fichiers, etc …

définition de serveur

 

C’est bon, maintenant voyons de plus prés ces « logiciels adéquats« .

En fait, tout le monde peut monter chez soi un serveur web, il suffit d’avoir un pc c’est tout. Le reste peut être téléchargé de l’internet.

En première place, il y a le logiciel qui fait guise de serveur web, il y en a plusieurs, je ne vais citer que le plus répandu : Apache.

Apache ? Tu t’moque de moi, c’est des amérindiens les apaches !

Je sais, je sais, mais ses concepteurs ont voulus l’appeler ainsi, que voulez vous que j’y fasse. D’ailleurs le logo d’Apache c’est une belle plume d’indiens hé oui :

apache

Ensuite, tout dépend des langages que vous voulez utiliser :

Si vous voulez du php, il faudra ajouter le plugin de php à apache, par contre si vous voulez utiliser du JSP, vous installerez Tomcat.

Et finalement, si vous voulez ajouter des bases de données, il faut installer un serveur de bases de donnés comme Mysqld qui est un serveur de bases de données mysql.

Pour les utilisateurs de windows ( il y en a beaucoup ;-) ), il existe des utilitaires qui vont vous simplifier la vie. En effet, il y a des « petits » logiciels comme EASYPHP, WAMP ou encore XAMPP qui installent toutes ces ptites bête en une seule fois et les configurent par défaut, comme ça, vous installez une seule fois un seul logiciel et hop, votre serveur tourne !

D’accord, mais maintenant, comment est-ce qu’il fonctionne ce serveur ?

Très bonne question.

Tout ordinateur qui se connecte à un réseau se voit assigné une adresse ip (unique sur ce réseau) ainsi, on peut s’adresser exactement à qui l’on veut. Il suffit d’utiliser cette adresse. Mais son inconvénient, c’est qu’elle est très difficile à retenir. En effet essayez de vous rappeler de 192.168.1.243. Peut-être que vous y arriverez, mais dans un réseau il n’y a pas qu’un seul ordinateur, alors que dire d’internet, il faudra vous rappeler d’une bonne centaine pour pouvoir utiliser ce réseau. Heureusement, il y a ce qu’on appelle les serveur DNS, ce sont des serveurs qui répertorient tous les serveurs sur le web et font la conversion des adresses alphanumériques en adresses ip.
Ainsi, quand vous mettez l’adresse : www.google.fr, une requête va vers un serveur dns qui transforme cette adresse en xxx.xxx.xxx.xxx et voila que la page de google s’affiche devant vos yeux.

Dis, c’est vrai ce que tu nous raconte ? Moi je ne voit rien de tout ça.

Bien sûr que tout cela est vrai, mais vous ne voyez rien car tout a été conçu de telle sorte que ce soit fait d’une manière totalement transparente à l’utilisateur. Sinon, personne n’utiliserai l’internet de nos jours !

dns
Votre requête de demande d’une page web

Ceci se fait à un premier niveau.

Au deuxième niveau, que ce passe-t-il lors d’une demande de page web à un serveur ?

Pour naviguer, on utilise un navigateur n’est-ce pas ? Et pour surfer sur le net, ce navigateur utilise un certain nombre de protocoles dont le fameux HTTP. Bon, ici ce n’est pas un cours de http mais une seul commande ne va pas nous agacer quand même. Cette commande c’est « GET« , elle ne signifie pas grand chose, juste « donne moi« . Donne moi quoi ? Mais une page web bien sûr !

Bon, en clair, voici les étapes depuis la demande d’une page, jusqu’à son affichage (on considère que les pages sont statiques et qu’on n’a pas besoin de base de données) :

  • Vous écrivez l’adresse dans la barre d’adresse du navigateur. Ou vous cliquez sur une page dans la liste des favoris,
  • Le navigateur transmet l’adresse de base à un serveur dns, ex: si vous entrez « www.firasofting.com/blog/2011/infographie-la-fabuleuse-evolution-de-linternet/ », le navigateur transmet au serveur dns « www.firasofting.com »
  • Vous accédez alors au serveur demandé si votre adresse est bonne,
  • Votre navigateur lui envoie le reste de l’adresse avec la commande « GET » de http,
  • Si l’adresse est valide, il vous envoie la page demandée. Sinon, il vous renvoie une erreur comme 404 : page inexistante ou 500 : erreur interne au serveur,

requete
La requête derrière le serveur

Voilà, c’est fini ! Je sais … ce cours a été un peu long, mais c’était nécessaire pour comprendre à peu prés le fonctionnement d’internet afin de pouvoir faire un site web en toute connaissance de ce qui se passe derrière.

Suite de cette formation : Page et site web, quésako ?