1 HTTP (2 points) LOG Examen final - Automne 2013

Documents pareils
KompoZer. Composition du site : _ une page d'accueil : index.html. _ une page pour la théorie : theorie.html. _ une page pour les photos : photos.

NFA016 : Introduction. Pour naviguer sur le Web, il faut : Naviguer: dialoguer avec un serveur web

TP JAVASCRIPT OMI4 TP5 SRC

UN SITE WEB RESPONSIVE EN UNE HEURE?

SYSTÈMES D INFORMATIONS

HTML, CSS, JS et CGI. Elanore Elessar Dimar

Présentation du Framework BootstrapTwitter

RAPPORT AUDIT SEO. Élaboré à l'attention de : Monsieur Greber Élaboré par : Cédric Peinado

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN ING

.. CSS. Damien Nouvel. Damien Nouvel (Inalco) CSS 1 / 15

Optimiser pour les appareils mobiles

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp

Le Web de Données Dan VODISLAV Université de Cergy-Pontoise Master Informatique M2 Plan

LES GRANDES ETAPES DE CREATION D UN WEB DESIGN

Optimiser les performances d un site web. Nicolas Chevallier Camille Roux

Manuel d utilisation du module Liste de cadeaux PRO par Alize Web

Devenez un véritable développeur web en 3 mois!

GUIDE DE PAIEMENT. Pour Bien Effectuer votre Paiement, veuillez suivre les instructions suivantes :

Créer un site Web : mode d emploi Sous SPIP, avec le squelette «établissement» de l académie de Versailles

EXTENSION WORDPRESS. Contact Form 7. Proposé par :

LES TECHNOLOGIES DU WEB APPLIQUÉES AUX DONNÉES STRUCTURÉES

Bonnes pratiques de développement JavaScript

3W Academy Programme de Formation Développeur Intégrateur web Total : 400 heures

Pack Fifty+ Normes Techniques 2013

GOOGLE ANALYTICS. Ajout du code de suivi sur PowerBoutique. Ajout du code de suivi Google Analytics. Page 1 / 7 TUTO / GOOGLE ANALYTICS

Description des pratiques à adopter pour la mise à jour du layout en utilisant le gestionnaire de conception de Sharepoint 2013

Normes techniques 2011

< Atelier 1 /> Démarrer une application web

Formation Webmaster : Création de site Web Initiation + Approfondissement

NAMEBAY PRO. votre site de revente de noms de domaine en marque blanche. Documentation technique

Tutoriel : Feuille de style externe

{less} Guide de démarrage

Séance d ED n 5 : HTML et JavaScript

Module BD et sites WEB

BIRT (Business Intelligence and Reporting Tools)

Guide de réalisation d une campagne marketing

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

ContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A.

Auteur LARDOUX Guillaume Contact Année 2014 DEVELOPPEMENT MOBILE AVEC CORDOVA

RESPONSIVE WEB DESIGN

1 INTRODUCTION 3 2 CONTACTER VOTRE SUPPORT 3 3 PARAMETRER LE MODULE MESSAGERIE INTERNE 4 4 UTILISATION DE LA MESSAGERIE INTERNE 8

WordPress Référencement naturel (SEO) Optimiser. son référencement. Daniel Roch. Préface d Olivier Andrieu

Introduction. PHP = Personal Home Pages ou PHP Hypertext Preprocessor. Langage de script interprété (non compilé)

Création d un formulaire de contact Procédure

Démonstration de la mise en cache via HTML 5 sur iphone

INCORPORER EXCEL EN LIGNE DANS UN FICHIER CRÉÉ AVEC L ÉDITEUR DE TEXTE 15 avril 2015

ING & NEWSLETTER NEWSLETTER RESPONSIVE

Projet en nouvelles technologies de l information et de la communication

Programmation Web. Madalina Croitoru IUT Montpellier

Manuel utilisateur du CMS Anan6

INTRODUCTION AU CMS MODX

Campagnes d ings v.1.6

Publier dans la Base Documentaire

Document Object Model (DOM)

Introduction à Expression Web 2

Créer une base de données vidéo sans programmation (avec Drupal)

Programmation Internet Cours 4

Publication dans le Back Office

25 mars. Tutoriel sur Laravel. Préparé par : Lydiane Beaulne-Bélisle. Ceci est un tutorial qui montre comment débuter avec le Framework PHP Laravel.

4. SERVICES WEB REST 46

Afin d accéder à votre messagerie personnelle, vous devez vous identifier par votre adresse mail et votre mot de passe :

Spétechs Mobile. Octobre 2013

Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement

Bien architecturer une application REST

Magento. Magento. Réussir son site e-commerce. Réussir son site e-commerce BLANCHARD. Préface de Sébastien L e p e r s

Manuel d utilisation du site web de l ONRN

COURS 5 Mettre son site en ligne! Exporter son site avec WordPress Duplicator Installer un logiciel FTP Faire le suivi des visites de son site avec

DÉFINITION DE LA NEWSLETTER : OUVERTURE DU LOGITIEL ETARGET

Rapport de stage. Création d un site web. Stage du 20/01/2013 au 21/02/2013

XML par la pratique Bases indispensables, concepts et cas pratiques (3ième édition)

MISE AU POINT FINANCIÈRE GUIDE DE L UTILISATEUR. Le logiciel MISE AU POINT FINANCIÈRE est offert sous licence par EquiSoft.

TD HTML AVEC CORRECTION

Guide d implémentation. Réussir l intégration de Systempay

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e :

STID 2ème année : TP Web/PHP

Déploiement des manuels numériques sur tablette. Mode d emploi intégrateur / administrateur

HTML. Notions générales

Logiciels de référencement

GUIDE D UTILISATION. Informations importantes Toshiba FOLIO 100 Conseils pour une première utilisation, configuration et principaux usages

Formation : WEbMaster

Principales Evolutions Version

Activités HTML. Code: act-html

\ \ / \ / / \/ ~ \/ _ \\ \ ` \ Y ( <_> ) \ / /\ _ / \ / / \/ \/ \/ Team

Installation / Sauvegarde Restauration / Mise à jour

Autour du web. Une introduction technique Première partie : HTML. Georges-André SILBER Centre de recherche en informatique MINES ParisTech

Travaux dirigés n 10

Sommaire Accès via un formulaire d'identification... 4 Accès en mode SSO... 5 Quels Identifiant / mot de passe utiliser?... 6

Panel des technologies Web

Manuel d utilisation du web mail Zimbra 7.1

Langage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv>

SOMMAIRE. 1. Connexion à la messagerie Zimbra Pré-requis Ecran de connexion à la messagerie 4

SOUTENANCE ORALE RAPPORT DE PROJET D INFORMATIQUE

PARAMETRAGE CONSOLE ADMINISTRATION DE MESSAGERIE "VENDOME.EU" NOTICE UTILISATION

Créer une connexion entre Sage CRM et Sage Etendue pour émettre directement des devis et commandes

Notes pour l utilisation d Expression Web

Tous les autres noms de produits ou appellations sont des marques déposées ou des noms commerciaux appartenant à leurs propriétaires respectifs.

Serveur d Applications Web : WebObjects

BASE DE DONNÉES NATIONALE D INSCRIPTION (BDNI MC ) : COMMENT PUIS-JE MODIFIER OU RADIER MES CATÉGORIES D INSCRIPTION?

Transcription:

1 HTTP (2 points) a) (1 point) Ligia, qui a suivi avec succès le cours LOG4420, se trouve dans une fête familiale. Rigoberta, sa cousine, est suprise qu un commerce ait pu savoir quels sites elle a visités sur le web. Ligia lui explique alors le principe. Elle explique d abord que le commerce en question ne peut suivre la trace de Rigoberta que sur les sites qui affichent une image ou tout autre élément venant du serveur de ce commerce. Complétez l explication. b) (1 point) Le navigateur doit faire une revalidation d une page en cache, par le biais d un GET conditionnel. Expliquez les deux approches possibles pour effectuer un GET conditionnel. Page 1 de 10

2 HTML et CSS (3 points) Pour chacun des énoncés suivants, dites s il est vrai ou faux. Attention : deux mauvaises réponses annulent une bonne réponse (0,5 point pour chaque énoncé). a) Un des principaux avantages de HTML5 est qu il a rendu déclaratif, par le biais de nouvelles balises et de nouveaux attributs, ce qui auparavant devait être programmé en Javascript. b) Un élément encodé par la balise <h1> est toujours affiché de la même manière, peu importe sa position dans un document HTML. c) La petite icône qui apparaît sur l onglet, lorsqu un document HTML est chargé dans le navigateur, est spécifiée par une balise <img> dans le document HTML. d) Soit un élément d un document HTML pour lequel le navigateur doit déterminer le rendu. Lorsqu il identifie les directives CSS qui peuvent s appliquer, il se retrouve avec les deux directives suivantes parmi lesquelles il doit choisir (les deux directives proviennent du site web dont le document est originaire) : div.item.highlight { color: red } div.item > p { color: blue } L élément sera affiché en rouge. e) Avec CSS, on peut ajouter des éléments à la structure d un document HTML. f) Avec CSS, le positionnement absolu d une boîte est toujours relatif à la première boîte englobante qui est elle-même positionnée, ou la fenêtre du navigateur si une telle boîte n existe pas. Page 2 de 10

3 DOM et Javascript (4 points) (a) (b) FIGURE 1 Page web dynamique La figure 1 illustre une page dynamique. En (a), on a l affichage initial lorsque la page est chargée dans le navigateur. Trois images de livres sont affichées. Lorsqu on clique sur une image, une description du livre qu elle représente apparaît en dessous des images. S il y avait déjà une description auparavant, celle-ci est remplacée par la nouvelle. Écrivez les codes CSS et Javascript (qui se retrouveront dans les fichiers exemple.css et exemple.js, respectivement) nécessaires pour obtenir ce comportement, sachant que le code source HTML est le suivant (vous ne pouvez pas modifier ce code) : <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <link rel="stylesheet" href="exemple.css" /> </head> <body> <div class="illustrations"> <div class="item" id="1"> <img src="tremblay.jpeg" width="200" height="300"/> <article> <h1>des nouvelles d Édouard</h1> <p><strong>auteur:</strong> Michel Tremblay </p> <p><strong>résumé:</strong> La grande Duchesse de Langeais... </p> <p><strong>prix:</strong> 13,95$ </p> </article> <div class="item" id="2"> <img src="munro.jpeg" width="200" height="300"/> <article> <h1>un peu, beaucoup... pas du tout</h1> <p><strong>auteur:</strong> Alice Munro </p> <p><strong>résumé:</strong> Neuf histoires de femmes... </p> <p><strong>prix:</strong> 23,45$ </p> </article> Page 3 de 10

<div class="item" id="3"> <img src="hebert.jpeg" width="200" height="300"/> <article> <h1>les fous de bassan</h1> <p><strong>auteur:</strong> Anne Hébert </p> <p><strong>résumé:</strong> Le vent, la pluie, la rumeur de la me... <p><strong>prix:</strong> 12,95$ </p> </article> </body> <script src="http://code.jquery.com/jquery-1.10.1.min.js"></script> <script src="exemple.js"></script> </html> </p> Page 4 de 10

4 Services web (2 points) a) (1 point) Soit un service web, comme celui qui a été implémenté dans votre travail pratique, qui retourne une page de l histoire et les pages suivantes accessibles selon la décision du joueur. Voici un exemple de réponse JSON retournée par ce service : { "no": 234, "content": [ { "type": "paragraph", "text": "Vous plongez votre arme dans l œil monstrueux..." }, { "type": "image", "url": "monster_luminous_jelly.png" }, { "type": "paragraph", "text": "Avant que vous puissiez vous relever..." } ], "decision": [ { "text": "Si vous maîtrisez la <i>discipline Magnakaï...", "next": 190 }, { "text": "Si vous ne maîtrisez pas cette discipline...", "next": 121 } ] } Indiquez à quel niveau correspond ce service web, selon la classification de Richardson, et justifiez votre réponse. b) (1 point) Expliquez ce qui distingue les méthodes POST, PUT et PATCH pour leur utilisation dans une requête HTTP à un service web. Page 5 de 10

5 Programmation du côté serveur (4 points) a) (1 point) Dans une plateforme de développement comme Yesod, on utilise des gabarits (templates) pour les données HTML, CSS et Javascript qui composeront le document final. Ces gabarits sont combinés par le biais de widgets. Expliquez pourquoi il faut faire appel à des widgets pour obtenir le résultat final. b) (1 point) Expliquez ce qu est une route et son rôle sur le serveur. c) (1 point) Indiquez deux avantages importants du traitement des formulaires dans une plateforme comme Yesod. d) (1 point) Expliquez comment les sessions sont représentées en Yesod et comment on les manipule. Page 6 de 10

6 Plateforme MVC sur le client (3 points) Soit l application web illustrée à la figure 2, qui permet essentiellement de gérer une liste de tâches. En (a), on a l affichage au moment où la page est téléchargée par le navigateur. On remarque qu une des tâches est déjà cochée et présentée en gris plutôt qu en noir. En (b), nous avons l état obtenu après avoir ajouté une tâche dans la boîte de texte et cliqué sur le bouton ajouter (à noter que le nombre total de tâches et le nombre de tâches à faire ont été mis à jour). En (c), la deuxième tâche a été sélectionnée et apparaît donc elle aussi en gris. Finalement, en (d), on a l état après avoir cliqué sur le lien archive : les tâche sélectionnées ont été retirées de la liste. (a) (b) (c) (d) FIGURE 2 Application web Page 7 de 10

Pour gérer cette application, on utilise AngularsJS. Le code de la page téléchargée est le suivant : <!DOCTYPE html> <html> <head> <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.0.8/angular.min.js"></script> <style>.done-true { color: #aaa; } </style> </head> <body> <div ng-app> <h2>a faire</h2> <div ng-controller="todoctrl"> <span>{{remaining()}} of {{todos.length}} remaining</span> [ <a href="" ng-click="archive()">archive</a> ] <ul> <li ng-repeat="todo in todos"> <input type="checkbox" ng-model="todo.done"> <span class="done-{{todo.done}}">{{todo.text}}</span> </li> </ul> <form ng-submit="addtodo()"> <input type="text" ng-model="todotext" size="30 placeholder="ajouter nouvel item ici"> <input type="submit" value="ajouter"> </form> </body> </html> Écrivez le code Javascript nécessaire pour faire fonctionner cette application. Supposez que tout se passe localement. Page 8 de 10

7 RDF et web sémantique (2 points) a) (1 point) Représentez la situation suivante en RDF, de manière concise, en utilisant la notation Turtle : L article A1 a été écrit par Michel Gagnon. Les articles A2 et A3 ont été écrits par le même auteur. L article A3 cite quelqu un qui critique l article A1. Supposez que les URI pour les articles sont doc:a1, doc:a2 et doc:a3. Utilisez les propriétés dc:author et foaf:name. b) (1 point) Soit la base de données RDF suivante : @prefix voc: <http://exemple.org/voc/>. @prefix poly: <http://www.polymtl.ca/>. @prefix foaf: <http://xmlns.com/foaf/0.1/>. poly:log4420 poly:professeur poly:michelgagnon ; voc:inscrit [ foaf:name "Victor Hugo" ] ; voc:inscrit [ foaf:name "Papa Noël" ] ; voc:inscrit [ foaf:name "Roger Lemelin" ] ; voc:inscrit [ foaf:name "Anne Hébert" ]. poly:inf6410 poly:professeur poly:michelgagnon ; voc:inscrit [ foaf:name "Papa Noël" ] ; voc:inscrit [ foaf:name "Michel Tremblay" ] ; voc:inscrit [ foaf:name "Louis Caron" ]. poly:log3000 poly:professeur poly:pierrerobillard ; voc:inscrit [ foaf:name "Papa Noël" ] ; voc:inscrit [ foaf:name "André Langevin" ] ; voc:inscrit [ foaf:name "Gaëtan Soucy" ]. Écrivez la requête SPARQL qui permet d extraire les noms de tous les étudiants qui ont suivi au moins un cours avec Michel Gagnon. Vous devez éviter les réponses redondantes. Page 9 de 10

8 Question bonus (0,5 point) Répondez à une seule des questions suivantes : a) Quel est le mot de passe actuel du professeur de LOG4420? b) Donnez le nom du musicien catalan qui s est fait connaître pour ses interprétations d oeuvres composées pour viole de gambe, notamment celles de Marin Marais. Page 10 de 10