Introduction
Bienvenue sur la page du cours "Web avancé/Web Mobile" donné par M.Buffa au M2 MBDS de casablanca.
Ressources utilisées en cours
Séance 1 : survol des possibilités de HTML5, travail à rendre sur les nouveaux éléments de structure et les microdata
Supports généraux vus en cours pour le survol de HTML5
Support de cours divers disponibles sur le web concernant les nouveaux tags de structure et les microdata
- Les articles suivants disponibles sur le web:
- Extensions pour navigateurs, scriplet et code JavaScript pour générer automatiquement une table des matières:
- Les exemples suivants:
TRAVAIL 1/3 à rendre : réaliser une page dans laquelle vous vous présenter (sorte de mini CV)
Dans cette page vous vous présenterez, photo, nom, adresse, tel, résumé de vos projets passés, vos études, vos passions, etc. Bref, vous devrez faire un CV.
Contraintes
- Utilisation des tags de structure vus en cours: <header>, <footer>, <section>, <article>, <time>, <nav>, <aside> (dans le <aside> vous ajouterez une table des matières générée automatiquement à l'aide du script JS disponible sur Google HTML5 outliner, suivre le lien minifiedJS et regarder aussi ces deux exemples : http://jsbin.com/epofer/4/editet http://jsbin.com/agoyoj/73/edit qui montrent comment on peut insérer une table des matières directement dans la page. Ces exemples utilisent le minifiedJS dont on vient de parler.
- Insertion de Microdata pour vous décrire (utilisation du schéma Person), Mettez des microdata pour au minimum nom, prenom, adresse, afiliation, liens vers vos comptes facebook, twitter, autres, etc. Vous vous inspirerez de l'exemple "Michel Buffa" en l'adaptant et le complétant : http://jsbin.com/uquboc/13/edit. Vous testerez avec l'outil de google ce que cela donne et incluerez à la fin de votre CV un screenshot du résultat (comme j'ai fait pour Michel Buffa).
- BONUS : afficher une google map dynamique correspondant à votre adresse.
- Vous rajouterez sur les images un attribut download permettant de télécharger les images si on clique dessus, au lieu que le navigateur les affiche dans un nouveau tab.
- Vous ferez en sorte que si on passe la page à travers un outil de traduction, les nom de l'auteur, et autres données ne devant pas être traduites, etc ne soient pas traduites (utilisation de l'attribut translate).
- LE TP DOIT ETRE RENDU SOUS JSBIN.COM. SI vous avez besoin d'images, utilisez pour les héberger http://imgur.com/ et linkez les depuis le code HTML qui est dans jsbin.com. Pensez à utiliser le menu jsbin/create milestone pour sauvegarder votre travail (jsbin utilise git pour le versionning les et les URLs générés correspondent à une version unique).
Séance 2 : amusons nous avec l'élément canvas
Vous devrez créer un petit monstre original. Nous avons bien avancé ensembles en cours.
Vous pourrez vous inspirer de celui-ci vu en cours (Maarif): http://jsbin.com/IjEVUPoX/19/edit
Ou celui-ci : (emsi centre) http://jsbin.com/AlasIvA/2/edit, variante avec image en fond (background-image css) http://jsbin.com/AlasIvA/12/edit
Ou encore de celui-ci (Rabat) : http://jsbin.com/AseVidu/7/edit
Travail 2/3 : terminer le monstre créé en cours
Il doit contenir une animation, suivre la souris, etc... Il doit s'agit d'un travail original faisant preuve de créativité. Vous essaierez d'organiser le code proprement en suivant les recommandations données en cours (save/restore du contexte, transformations géométriques translate:rotate etc.)
- LE TP DOIT ETRE RENDU SOUS JSBIN.COM. SI vous avez besoin d'images, utilisez pour les héberger http://imgur.com/ et linkez les depuis le code HTML qui est dans jsbin.com. Pensez à utiliser le menu jsbin/create milestone pour sauvegarder votre travail (jsbin utilise git pour le versionning les et les URLs générés correspondent à une version unique).
Séance 3 : écriture d'un logiciel de dessin adapté au mobile. Travail à rendre : finir le paint créé en cours.
Vous essaierez de rajouter des fonctions pour dessiner des lignes, des rectangles, des cercles, à la manière de paint.gexsoft.com. pour cela vous devrez avoir deux canvas, celui de devant servant à dessiner des formes élastiques. Vous pourrez regarder ce tutorial détaillé juste pour voir comment on peut organiser le code de ce type de logiciel : : http://miageprojet2.unice.fr/Intranet_de_Michel_Buffa/HTML5_tutorial_for_WWW_2013/HTML5_tutorial_for_WWW_2013%3a_study_a_paint_program
Travail à rendre 1/3 : finir le paint mobile
Vous devrez continuer l'exemple développé en cours (version correspondant à là où on s'est arrêté : http://jsbin.com/derukava/24/edit et le faire marcher convenablement en mode portrait et paysage sur votre mobile ou sur celui de votre binome. Vous indiquerez clairement sur quel device il doit être testé, quels sont les problèmes rencontrés et comment vous les avez résolus. Screenshots et vidéo postée sur youtube obligatoire. Vous mettrez le code finale sous jsbin.com.
Modalités de rendu
- Date limite de rendu (non négociable) :
- Travail à faire seul ou en binôme,
- Le délégué me contactera par mail et m'enverra un dossier dropbox contenant une archive par groupe.
-
- L'archive contiendra :
- Les sources des trois logiciels à développer,
- Un petit rapport avec points forts / points faibles / problèmes rencontrés. Si vous avez piqué des trucs sur le net, bien indiquer lesquels + l'URL de la source.
- Des screenshots,
- Des liens vers les version jsbin et des liens vers les vidéos youtube du paint en action sur un device mobile (vous pourrez vous filmer avec un smartphone et uploader les vidéos). Ceci dans le cas où je ne peux pas tester sur le même device mobile que vous.