« STIC:STIC I - Atelier technique 5 » : différence entre les versions
Aller à la navigation
Aller à la recherche
mAucun résumé des modifications |
Aucun résumé des modifications |
||
Ligne 2 : | Ligne 2 : | ||
<categorytree mode="pages" depth="0" style="float:right; clear:right; margin-left:3px; border:1px solid gray; padding:0.7ex; background-color:#f9f9f9;">STIC</categorytree> | <categorytree mode="pages" depth="0" style="float:right; clear:right; margin-left:3px; border:1px solid gray; padding:0.7ex; background-color:#f9f9f9;">STIC</categorytree> | ||
== Programme == | |||
;Partie commune | |||
* 09:00 - 09:15 Discussion sur le déroulement du cours de vendredi (Présentation + BASES + Feedback mutuel sur STIC I + II) | |||
* 11:45 - 12:30 S'il reste du temps: démo utilisation d'un hébergeur externe | |||
* | ;Projet 1 | ||
* | * 09:15 - 10:00 Démo aspiration site web + Discussion sur la sécurité, mise à jour des portails | ||
* 10:00 - 11:45 Travail sur projet personnel (y compris la pause) | |||
;Projet 2 | |||
* | * 09:15 - 10:00 Socket.io | ||
* 10:00 - 11:45 Coding with Node/Express/Scoket ou Travail sur projet personnel (y compris la pause | |||
* | |||
== Activités P1== | |||
* [[ | ===Sécurité=== | ||
;Comprendre les enjeux de sécurité d'un portail | |||
* SPAM, Attaques informatiques, DoS, ... | |||
* Mises à jour du code, Vulnérabilité des anciennes versions | |||
:Évaluer à quel point vous avez besoin d'un site dynamique vs. statique | |||
* Quelles fonctionnalités dynamiques sont absolument nécessaires (authentification, commentaires, forum, ...) | |||
* Quels mécanismes de contrôle/sécurité ont été prévus/mis en place | |||
=== Aspiration d'un site === | |||
;Possibilité d'aspirer (i.e. faire une copie statique) un site web dynamique | |||
* Utile pour : | |||
** Sites informationnels "finit" : toute l'information, ou presque, est déjà publiée (e.g. événement, site explicatif, ...) | |||
** Sites qui ne sont plus mis à jour : "figer" la dernière version existante et la transformer en site statique | |||
** Petits sites avec mise à jour pas fréquente : avoir une version dynamique en local (e.g. sur votre ordi) et aspirer les pages pour les publier ensuite chaque fois qu'il y a un changement (voir également les générateurs de site statiques plus bas) | |||
;Outils : | |||
* Possibilité de le faire par ligne de commande | |||
* Logiciel (e.g. [http://www.httrack.com/ HTTrack]) | |||
===Générateurs de sites statiques=== | |||
;Possibilité d'utiliser un "logiciel" qui génère, souvent à partir de simple fichiers, des sites statiques et fait l'upload du output HTML | |||
* Mode assez récente, donc système pas très simples/fiables pour l'instant | |||
* À utiliser plutôt pour des petits sites / blogs personnels | |||
* Nécessitent souvent l'installation (mais pas forcément la connaissance) d'un langage de programmation (e.g. [[Node.js]], Python, PHP, Ruby, ...) | |||
* Utilisation de fichiers HTML ou Markdown pour créer les contenus | |||
;Quelques exemples (langage nécessaire) : | |||
* [https://sculpin.io/ Sculpin] (PHP) | |||
* [https://hexo.io/ Hexo] (Node.js) | |||
* [http://jekyllrb.com/ Jekyll] (Ruby) | |||
* [http://blog.getpelican.com/ Pelican] (Python) | |||
== Activité P2 == | |||
;Real-Time avec [[Socket.io]] : | |||
* Comprendre la différence entre HTTP et [https://en.wikipedia.org/wiki/WebSocket WebSocket] : one-way vs. duplex communication | |||
* WebSocket côté client et côté serveur : échange de message .on() et .emit() | |||
* Utiliser [[Socket.io]] avec [[Node.js]] et [[Express.js]] | |||
=== Ressources === | |||
* [[Socket.io]] | |||
* [https://socket.io/ Site officiel Socket.io] | |||
* https://github.com/mafritz/stic-1-socket.io-essentials : quelques exemples d'utilisation |
Version du 4 mai 2017 à 15:22
Programme
- Partie commune
- 09:00 - 09:15 Discussion sur le déroulement du cours de vendredi (Présentation + BASES + Feedback mutuel sur STIC I + II)
- 11:45 - 12:30 S'il reste du temps: démo utilisation d'un hébergeur externe
- Projet 1
- 09:15 - 10:00 Démo aspiration site web + Discussion sur la sécurité, mise à jour des portails
- 10:00 - 11:45 Travail sur projet personnel (y compris la pause)
- Projet 2
- 09:15 - 10:00 Socket.io
- 10:00 - 11:45 Coding with Node/Express/Scoket ou Travail sur projet personnel (y compris la pause
Activités P1
Sécurité
- Comprendre les enjeux de sécurité d'un portail
- SPAM, Attaques informatiques, DoS, ...
- Mises à jour du code, Vulnérabilité des anciennes versions
- Évaluer à quel point vous avez besoin d'un site dynamique vs. statique
- Quelles fonctionnalités dynamiques sont absolument nécessaires (authentification, commentaires, forum, ...)
- Quels mécanismes de contrôle/sécurité ont été prévus/mis en place
Aspiration d'un site
- Possibilité d'aspirer (i.e. faire une copie statique) un site web dynamique
- Utile pour :
- Sites informationnels "finit" : toute l'information, ou presque, est déjà publiée (e.g. événement, site explicatif, ...)
- Sites qui ne sont plus mis à jour : "figer" la dernière version existante et la transformer en site statique
- Petits sites avec mise à jour pas fréquente : avoir une version dynamique en local (e.g. sur votre ordi) et aspirer les pages pour les publier ensuite chaque fois qu'il y a un changement (voir également les générateurs de site statiques plus bas)
- Outils
- Possibilité de le faire par ligne de commande
- Logiciel (e.g. HTTrack)
Générateurs de sites statiques
- Possibilité d'utiliser un "logiciel" qui génère, souvent à partir de simple fichiers, des sites statiques et fait l'upload du output HTML
- Mode assez récente, donc système pas très simples/fiables pour l'instant
- À utiliser plutôt pour des petits sites / blogs personnels
- Nécessitent souvent l'installation (mais pas forcément la connaissance) d'un langage de programmation (e.g. Node.js, Python, PHP, Ruby, ...)
- Utilisation de fichiers HTML ou Markdown pour créer les contenus
- Quelques exemples (langage nécessaire)
Activité P2
- Real-Time avec Socket.io
- Comprendre la différence entre HTTP et WebSocket : one-way vs. duplex communication
- WebSocket côté client et côté serveur : échange de message .on() et .emit()
- Utiliser Socket.io avec Node.js et Express.js
Ressources
- Socket.io
- Site officiel Socket.io
- https://github.com/mafritz/stic-1-socket.io-essentials : quelques exemples d'utilisation