Antoine Guiral : apprenti du web 2.0

Partage d’expériences sur le web

Articles reli´s: «:2.0»

[tuto flex] hello world en flex: il y a un début à tout!

Posté par Guiral antoine le avril 20, 2008

Ce tutoriel est disponible sur mon nouveau blog.

Comme promis le premier tutoriel sur FLEX. Cette techno me bluf! En 5 min j’ai fait mon hello world tout seul comme un grand sans google :D Non, n’applaudissez pas tout de suite vous allez voir c’est pas si compliqué que ça ;-)

Bon on rentre dans le vif du sujet maintenant. Si vous n’avez pas téléchargé le Flex Builder d’Adobe c’est le moment.

Premièrement il faut créé un nouveau projet : soit en faisant file>new>flex project soit en faisant un clic droit sur le gestionnaire de projet (voir illustration ci-dessous).

Nouveau projet sur flex builder

Maintenant vous devriez avoir quelque chose comme ça devant vos yeux o_0

Vue générale de flex builder

Nous allons séparer l’écran en 5 zones. La première en haut à gauche est le gestionnaire de projet : “flex navigator”. Celle du dessous, appelée “outline” va changer selon que la zone principale soit en mode “source” ou en mode “design”. Si l’on se trouve en mode “source” la zone “outline” va contenir nos différent composant. Tandis que si l’on est en mode “design” elle proposera tout les composants qu’il suffira alors de faire glisser dans la zone de travail pour les placer. Allez y testez vous ne risquez rien ;-) .

Au milieu c’est là ou nous allons coder. Deux modes : “source” et “design”. Le premier sert à coder directement tandis que le second permet de passer en mode “assisté” puisque le code sera généré automatiquement. En dessous on retrouve la console qui affichera les erreurs notamment. Si vous utilisez eclipse ou aptana vous ne serez pas dépaysés.

Enfin, à droite cette fenêtre ne s’affichera qu’en mode “design”. elle permet de configurer les composant que vous aurez fait glisser sur votre application.

C’est bon vous êtes toujours là?! Ok, continuons.

Nous allons passer en mode “source”, mais vous pouvez lire le tuto puis essayer de le refaire sans regarder et utiliser le mode “design”.

Un petit rappel au passage : flex est basé sur MXML (proche du XML) et ActionScript3 (proche du javascript). Donc si vous êtes habitués à faire du web vous ne devriez pas être trop perdus.

  • Déclaration de l’application

Ca ressemble beaucoup au XHTML. On définit donc la norme utilisé ainsi que l’encodage : ici xml en version 1.0 et utf-8 (à privilégié puisque c’est le plus large, il prend bien les accents etc etc).

La seconde balise commence par “mx:“. Toutes les balises MXML commence par ce préfixe. Tout desuite après, on retrouve le type de la balise avec une majuscule : ici c’est la balise qui va définir l’application. C’est l’équivalent de notre bon vieux <html> (surtout dans le cas du XHTML puisqu’il fait intervenir l’attribut xmlns). L’attribut layout avec la valeur absolute signifie que nous allons placer tous nos éléments en absolute (équivalent du css). Il existe d’autre valeurs pour le layout : horizontal et vertical (pas besoin d’explications là si?). Puis viennent les dimensions de l’application.

<?xml version=”1.0″ encoding=”utf-8″?>
<mx:Application xmlns:mx=”http://www.adobe.com/2006/mxml” layout=”absolute” width=”314″ height=”126″>

  • L’interface

Vous remarquerez que toutes les balises commencent par <mx:LeNomDeMonComposant. Ici nous avons un Label, un TextInput un Button et de nouveau un Label. Notre application sera composé d’un titre (id lTitre), d’un champs de saisi de texte (id tMonText), d’un boutton (bAfficher) et enfin d’un dernier label (lMonResultat) dans lequel nous afficherons le texte contenu dans le textfield à chaque clic sur le boutton. Les attributs x et y correspondent aux positions dans notre layout (vous vous souvenez? nous sommes en absolute).

Nos balises doivent toutes êtres fermées : on respecte la norme XML. Nos composants sont des balises fermées, elles se terminent par “/>“. Notre balise Application sera fermé à la fin du document de la même manière que l’on fermerait un document XHTML.

<mx:Label x=”22″ y=”10″ text=”Mon hello world en flex” fontWeight=”bold” fontFamily=”Arial” fontSize=”24″ id=”lTitre”/>
<mx:TextInput x=”22″ y=”53″ width=”202″ id=”tMonText”/>
<mx:Button x=”232″ y=”53″ label=”Button” click=”afficher()” id=”bAfficher”/>
<mx:Label x=”22″ y=”92″ width=”202″ id=”lMonResultat”/>

</mx:Application>

Allez-y testez! Pour compiler le projet cliquez sur la petite flèche verte dans la barre d’outils (a gauche de l’insecte) ou clic droit sur le fichier puis run application.

Capture du rendu

“Mais heuuuuuuuu…quand je clic il se passe rien!!!!” On y vient!

  • Le script

Nous allons placer notre balise <mx:Script> juste en dessous de la déclaration de notre application. Vu que nous sommes sur un modèle XML strict nous devons indiquer au compilateur que les lignes qui suivent ne sont pas du XML mes du AS3 (ActionScript3). Le commentaire “<![CDATA[ mes fonctions AS3 ]]>” va nous permettre de le faire. Vous avez sûrement rencontré ce type de commentaire dans du XHTML voir du HTML.

Ensuite on déclare notre fonction. Vu que le AS3 est objet (comme le JAVA par exemple) nous devons indiquer la portée de nos fonctions, ici : private. Juste avant l’accolade on indique le type des données retournée. Dans notre cas la fonction ne retourne rien, elel est donc du type void.

Enfin notre traitement, on affecte au label lMonResultat le text qui est contenu dans le textfield tMonText.

<mx:Script>
<![CDATA[
private function afficher():void{
lMonResultat.text=tMonText.text;
}
]]>
</mx:Script>

Recompilez votre application et cela devrait marcher!

Vous venez de réaliser votre première applications FLEX!!! Si vous avez modifier un peu le script pour aller plus loin n’hésitez pas à nous le montrer! N’ayez pas peur j’ai commencé il y à seulement quelques heures :-)

A bientôt et amusez vous bien!

Publié dans flex, tutoriel, web 2.0 | Taggé: , , , , , | 5 Commentaires »

[tuto jquery] drag ‘n drop avec sauvegarde automatique en base de données (1/2)

Posté par Guiral antoine le février 24, 2008

Ce tutoriel est disponible sur mon nouveau blog : http://antoine.guiral.info/2008/02/24/tuto-jquery-drag-n-drop-avec-sauvegarde-automatique-en-base-de-donnees-12/

Bonjour!

Je profite d’un peu de répit ce dimanche pour terminer la première partie de ce tutoriel. Nous allons voir comment faire des drag’n drop (glisser déposer) avec JQuery. Dans un second temps nous verrons comment sauvegarder les modifications directement en base de donnée avec de l’ajax. Pour voir un exemple je vous propose d’aller faire un tour sur mon site de gestion d’une équipe de rugby (projet en cour) : teamManagerXV.

Bon allez on attaque?!

  • Le coté client : XHTML

Comme d’habitude le code puis les explications :-)

<html>
<head>
<title>Tuto drag’n drop</title>
<meta http-equiv=”Content-type” content=”text/html; charset=utf-8″ />
<script type=”text/javascript” src=”jquery.js”></script>
<script type=”text/javascript” src=”interface.js”></script>
<script type=”text/javascript” src=”script.js”></script>
<link rel=”stylesheet” type=”text/css” href=”styles.css” media=”all”/>
</head>
<body>
<div>
<h1>Waouuuuuuuhhhhhh</h1>
<div class=”ingredient”>
<div id=”1″ class=”drag”>sucre</div>
<div id=”2″ class=”drag”>lait</div>
<div id=”3″ class=”drag”>farine</div>
<div id=”4″ class=”drag”>oeuf</div>
<div id=”5″ class=”drag”>sel</div>
</div>
<div class=”recette” id=”r_1″>
<h3>Pâte à crêpe</h3>
<div class=”recette_ingredient”>
</div>
</div>
<div class=”recette” id=”r_2″>
<h3>Pâte brisée</h3>
<div class=”recette_ingredient”>
</div>
</div>
</div>
</body>
</html>

Alors rien de particulier pour le moment en terme de structure du document. Vous pouvez remarquer que nous avons 3 divs “principaux” : un pour les ingrédients et un pour chaque recette. Celui pour les ingrédients contient nos éléments draggables tandis que ceux pour les recettes contiennent nos récepteurs (zone de drop).

  • un peu de style : CSS

div{border:1px solid black}

.drag,.recette_ingredient{height:20px;width:60px}

Pas grand chose ici! Juste des bordures pour que ce soit “compréhensible” et un largeur/hauteur définie pour les zones de drop et les drags.

  • Enfin des trucs cool! Le javascript!

Afin de ne pas concurrencer mon nouveau blog, je suis obliger de tronquer l’article. Pour un meilleur confort je vous conseil de lire la suite ici : http://antoine.guiral.info/2008/02/24/tuto-jquery-drag-n-drop-avec-sauvegarde-automatique-en-base-de-donnees-12/

Publié dans tutoriel, web 2.0 | Taggé: , , , , , , , , , , | 13 Commentaires »

Recrutement 2.0

Posté par Guiral antoine le février 9, 2008

bonjour, comme vous avez pu le voir (ou pas) j’écris un peu moins en ce moment. Ce n’est pas par manque d’inspiration ou d’envie mais par manque de temps! En effet grâce à ce blog j’ai des contacts avancer pour un projet web en télétravail. J’avais souvent entendu parler de recrutement “2.0″. Notamment grâce à LinkedIn, un réseau social professionnel (équivalent du français viadeo). Il existe aussi des blog spécialisés dans ce nouveau mode de recrutement. Pour n’en citer qu’un seul, celui de Jacques Froissant fait parti des références en france.

  • Mon expérience :

J’ai lancé ce blog le 11 janvier avec pour unique but de faire partager mon expérience du web, mes découvertes, ma façon de coder ou de voir les choses. Le coté recrutement serait apparu à la fin de mes études d’ici un an et demi. En effet, cela peut être un plus d’avoir un blog fourni. Le recruteur pouvant ainsi juger de manière plus précise vos connaissances (au sens large : autant en terme de code que du web en général). Finalement moins d’un mois après le lancement de ce blog j’ai eu un commentaire plutôt encourageant. Un coup de fil plus tard et notre collaboration commençais. Au final je récolte ma première mission en tant que freelance. En télétravail ce qui me permet de continuer mes études de manière cohérente! Avec en prime une ligne importante sur mon CV pour le futur diplômé que je suis.

  • Mon avis :

Je pense que ce type de recrutement est une bonne chose (forcement je ne vais pas dire le contraire aujourd’hui lol), pour plusieurs raisons. La première est que dans certains cas le recruteur fait appel à vous. C’est donc que votre profil correspond à son besoin. Plutôt rassurant pour la suite. La deuxième est moins accès sur le job éventuellement obtenu. C’est plutôt l’importance que prend la visibilité sur le net. Cela implique que le chercheur d’emploi soit vu. Et pour être vu il n’y a pas 36 000 manières. Les réseaux sociaux en sont une (se pose alors la gestion de son identité numérique). La participation à ces derniers montre que le travailleur du web s’implique dans ce web 2.0 et en comprend connais quelques ficelles. Une autre manière pour être vu et reconnu est de créer : soit en codant des sites directement soit en blogant soit les deux. Au final, entre deux profils équivalents ce sont ces paramètres qui feront la différence.

En bref : montrez vous, bossez, commencez de nouveaux projets pour acquerir de l’experience, de la visibilité, des compétences, etc etc…Tant de choses qui pourront faire la différence lors d’une recherche de job.

Vous aussi vous avez vécu une expérience similaire? vous avez un cv en ligne?

Publié dans Ma vision, web 2.0 | Taggé: , , , , , , | Laisser un commentaire »

[tuto mashup] Google maps sur votre site : c’est possible! (version statique)

Posté par Guiral antoine le janvier 24, 2008

Le tutoriel est présent sur mon nouveau blog (lien direct vers le tutoriel). Désolé pour la gène occasionnée…

Je vous en parlais il y a quelque jour, le voila! Un petit tutoriel pour faire un mashup avec google maps sur votre site. J’ai réalisé un site début janvier pour l’école : www.le-passe-livre.com qui utilise google maps.

  • Vue d’ensemble du tutoriel

Nous allons utiliser une classe php (une fois de plus :-) ) qui va nous permettre d’utiliser très simplement l’API de google. Comme presque toutes les API vous devez obtenir une clé pour pouvoir utiliser le service. Puis nous construirons notre google map en placant nos marqueurs sur la carte. Enfin nous l’afficherons.

  • Télécharger la classe et activer l’API

Vous pouvez télécharger la classe ici. Créez un dossier “classe” à la racine de votre site et décompressez l’archive à l’interieur. Vous devez maintenant obtenir la clé qui va vous permettre d’utiliser l’API de google maps. Pour pouvoir tester votre site en local indiquez http://127.0.0.1/ pour l’url de votre site.

  • Création de la carte google

Je pense que le code est assez bien commenté. On créé une instance de notre carte, puis on fait le lien avec la clé google et on définit les caractéristique de notre carte (taile,type de carte,etc etc).

Afin d’optimiser le référencement de mon nouveau blog, je suis contraint de tronquer se billet…La suite du tutoriel est présent sur mon nouveau blog (lien direct vers le tutoriel). Désolé pour la gène occasionnée…

Publié dans tutoriel, web 2.0 | Taggé: , , , , , , , , , , | 14 Commentaires »

[tuto mashup] Galerie photo animée via Flickr : animer votre galerie (2/2)

Posté par Guiral antoine le janvier 22, 2008

Ce tutoriel est disponible dans son intégralité sur mon nouveau blog : lien direct

La suite du tutoriel sur les mashup avec flickr est là! Sachez que ce tutoriel est applicable avec toutes vos photos, qu’elles proviennent de flickr ou non.

Pour ceux qui ne veulent pas ou n’ont pas le temps ou l’envie de lire la première partie voici ma page de test pour la galerie avec flickr (des fois il y a un bug, faites f5 le temps que je corrige ce problème…).

  • Le javascript : jquery

Nous allons d’abord télécharger notre framework préféré >>JQuery<< et le plugin >>Interface<< qui nous intéresse.

Choisissez bien!

Je vous conseil de mettre vos deux librairie dans un dossier que vous nommerez scripts et qui contiendra tous vos scripts javascript et vos librairies. Maintenant que votre espace de travaille est préparé reprenons le fil du tutoriel précédent :

Ce tutoriel est disponible dans son intégralité sur mon nouveau blog : lien direct

Publié dans tutoriel, web 2.0 | Taggé: , , , , , , , , , | 6 Commentaires »