SlideShare une entreprise Scribd logo
1  sur  52
Télécharger pour lire hors ligne
La boîte à outils de développements dans Firefox
Christophe Villeneuve
@hellosct1
@hellosct1@mamot.fr
Capitole du Libre 2019
Atos open source - afup – lemug.fr – mariadb – drupal – mozilla - firefox – lemugfr - sumo – webextensions – VR – AR – XR - Cause commune 93.1 FM - TechSpeaker - Lizard - eyrolles – editions eni – programmez – linux pratique – webriver – elephpant - CommonVoice – Sécurité -
Cybersécurité
Christophe Villeneuve ?
●
Consultant
●
Dresseur animaux Free Software
@hellosct1 – Capitole Du Libre 2019
Aujourd’hui
●
Les problèmes de développement Web.
●
Outils de développement
●
On y va… par les exemples
@hellosct1 – Capitole Du Libre 2019
●
Les problèmes de
développement Web.
●
Outils de
développement
●
On y va…
par les exemples
@hellosct1 – Capitole Du Libre 2019
Supprimer les frictions !!!
●
Offrir des expériences
– qui fonctionnent parfaitement dans Firefox
@hellosct1 – Capitole Du Libre 2019
Problème numéro 1 : Le matériel
●
Nombreux
– Tablette
– Smartphone
– Ordinateur portable
●
Différentes tailles d'écran
●
Des navigateurs différents
@hellosct1 – Capitole Du Libre 2019
Quelques sont les problèmes actuels ?
●
Lors d’un développement Web
●
Éditeurs à retard technologique
●
Peu d’interactions avec le navigateur
@hellosct1 – Capitole Du Libre 2019
Problème développements ?
●
Nombreuses bibliothèques JS existantes
@hellosct1 – Capitole Du Libre 2019
Quel est le plus gros problème ?
●
Les problèmes de connexion
@hellosct1 – Capitole Du Libre 2019
Autres problèmes répétitifs...
●
L'application est lente
●
Mon appareil semble lourd
→ lorsque vous utilisez votre application
●
L'application ne fonctionne pas
→ pour un utilisateur spécifique
@hellosct1 – Capitole Du Libre 2019
Editeurs périmés
●
Ancien rédacteur
– Ils ne supportent pas les dernières spécifications
– Presque pas d'interaction avec le navigateur
●
Le support arrive en retard
@hellosct1 – Capitole Du Libre 2019
Méthodologie de travail
●
Écrire le code
●
Exécutez votre outil d'assistance
●
Changer de navigateur
●
Rafraîchir
●
Voir les changements
●
Répéter en cas d'échec
→ Ennuyeux, improductif et répétitif
@hellosct1 – Capitole Du Libre 2019
Avez-vous connu ces problèmes?
Avez-vous connu ces problèmes ?
@hellosct1 – Capitole Du Libre 2019
Solution
●
Votre navigateur peut vous aider
→ sur ces scénarios
@hellosct1 – Capitole Du Libre 2019
●
Les problèmes de
développement Web.
●
Outils de
développement
●
On y va…
par les exemples
@hellosct1 – Capitole Du Libre 2019
Firefox: Developer Edition / Nightly
@hellosct1 – Capitole Du Libre 2019
La barre d’outils
●
Choisir l’emplacement de la barre
●
Utilisation :
– Raccourci (F12)
– Choisir la position de l’ancre
@hellosct1 – Capitole Du Libre 2019
Outil principal 
●
L'inspecteur
– Ctrl + Maj + I
– Clic droit et Examiner l’élément
@hellosct1 – Capitole Du Libre 2019
Quelques fonctionnalités
●
Inpecteur
●
Console web
●
Débogueur Javascript
●
Réseau
●
Performances
●
Vue adaptive
●
Accessibilité
●
Mémoire
●
Stockage
●
DOM
●
Pipette
●
Editeurs
– Texte, styles
– Shaders, Web audio
– Capture
https://developer.mozilla.org/fr/docs/Outils
@hellosct1 – Capitole Du Libre 2019
●
Les problèmes de
développement Web.
●
Outils de
développement
●
On y va…
par les exemples
@hellosct1 – Capitole Du Libre 2019
Les basics : l’inspecteur
●
Sélectionner une zone à la volée
– Clic droit puis examiner l’élément.
– CTRL-Shift-C (MacOS : CMD-Shift-C)
●
Définissez vos préférences
●
Débogage de l'ordre en cascade
– avec Rules & Computed
●
DOM & Console:
– inspect (element) & $ 0.textContent
@hellosct1 – Capitole Du Libre 2019
Capture écran
●
Utilisation :
– Activer dans paramètres
●
Prendre une capture écran de la page entière
●
Sélectionner un noeud
@hellosct1 – Capitole Du Libre 2019
La performance
●
Utilisation 
– Onglet Performances
– Activer l’option (si pas activé)
– Afficher une page et regarder
@hellosct1 – Capitole Du Libre 2019
Consommation mémoire
●
Utilisation :
– Activer dans les options
→ Onglet mémoire
●
Différentes vues possible
→ de la consommation
@hellosct1 – Capitole Du Libre 2019
Afficher une règle
●
Utilisation
– Paramètres
– Cocher la case
→ Mesurer une zone de la page
– Une règle apparaît
@hellosct1 – Capitole Du Libre 2019
Mesurer un objet dans un écran
●
Utilisation
– Paramètres
– Cocher la case
→ Mesurer une zone de la page
– Un icône apparaît
@hellosct1 – Capitole Du Libre 2019
Editeur Javascript
●
Utilisation
– Onglet console
– En bas : 1 ligne spécifique
●
Editeur de javascript dans DevTools
@hellosct1 – Capitole Du Libre 2019
Déboguer en JS
●
Possible du pas à pas
●
Utilisation :
– Onglet débogueur
– Choisir le fichier JS
– Ajouter un point d’arrêt
→Clic sur un numéro de lignes
– Ajouter une information
→ clic droit
→ Ajouter une sortie console
→ saisir message ou une alerte
@hellosct1 – Capitole Du Libre 2019
Rendre lisible un fichier Javascript
●
Utilisation :
– Onglet débogueur
– Choisir le fichier JS
–
@hellosct1 – Capitole Du Libre 2019
Pipette
●
Connaître la couleur d’un point de l’écran
●
Utilisation :
– A partir du menu
●
Développement web → Pipette
– Naviguer dans la page web
●
Pour connaître la valeur d’un point
@hellosct1 – Capitole Du Libre 2019
About:debugging
●
Mode avancé
●
Utilisation :
– Taper dans la barre de navigation
●
About:debugging
extension devtools
@hellosct1 – Capitole Du Libre 2019
Gestion de polices
●
Modification des tailles
– Tailles de la police de caractères
●
Utilisation
– Sélectionner un bloc de la page web (ex : Div)
– Inpecteur
– Onglet Polices
@hellosct1 – Capitole Du Libre 2019
Accessibilité
●
Inspecteur
→Activer l’option
●
Plus loin avec une extension :
– Addon webhint : https://addons.mozilla.org/firefox/addon/webhint
@hellosct1 – Capitole Du Libre 2019
Editeur CSS
●
Utilisation 
– Editeur de style
– L’icone + pour ajouter une nouvelle CSS
@hellosct1 – Capitole Du Libre 2019
CSS Flexbox inspector
●
Trouvez les conteneurs Flexbox dans l'inspecteur
→ Rapidement
●
Visualisez tous les éléments Flex
– Et l'espacement entre eux
https://developer.mozilla.org/en-US/docs/Tools/Page_Inspector/How_to/Examine_Flexbox_layouts
@hellosct1 – Capitole Du Libre 2019
Créer des animations CSS
●
Choisir élément CSS
– Créer ces règles
https://developer.mozilla.org/fr/docs/Web/CSS/animation
@hellosct1 – Capitole Du Libre 2019
CSS grid
●
Utilisation
– Onglet inspecteur
https://developer.mozilla.org/fr/docs/Outils/Inspecteur/Comment/Examine_grid_layouts
@hellosct1 – Capitole Du Libre 2019
CSS inactif
●
Manipuler les images
●
Détecter les erreurs CSS
●
Apprendre quand et pourquoi
– certaines propriétés n'ont aucun effet sur un
élément.
https://developer.mozilla.org/en-US/docs/Tools/Page_Inspector/How_to/Examine_and_edit_CSS
@hellosct1 – Capitole Du Libre 2019
Déboguer DOM
●
Faire une pause dans les scripts
→ modifient le DOM
●
Utilisation :
– Inspecter
●
Onglet DOM
https://developer.mozilla.org/fr/docs/Outils/DOM_Property_Viewer
@hellosct1 – Capitole Du Libre 2019
WebSockets
●
De retour pour remplacer WebSocket Monitor
→Ne fonctionne plus depuis Firefox 57
●
Cas pratique :
– Filtrer par WS dans le panneau Réseau
– Résultat
●
Backlog
– Visualiser de messages binaires, exportation HAR
@hellosct1 – Capitole Du Libre 2019
Détecter les espaces blancs indésirables
●
Détecter les nœuds de texte dans les espaces
blancs
●
L’impact → mise en page.
●
Utilisation :
– Onglet Inspecteur
https://developer.mozilla.org/fr/docs/Outils/Inspecteur/Comment/Examiner_et_%C3%A9diter_le_code_HTML
@hellosct1 – Capitole Du Libre 2019
CMS / Framework
●
Construction d’un nouveau thème
→ Avec les DevTools
@hellosct1 – Capitole Du Libre 2019
Ettendre les outils de développements (devtools)
●
Disponible sur AMO
– https://addons.mozilla.org
– AngularJS Inspector
– Ember Inspector
– DevTools Tweaks
– DevTools Prototyper
– React DevTools
– Axe DevTools
(Accessibility)
– WAVE Accessibility
Extension
– FireQuery
– Event Listener Tab
– Performance Analyser
@hellosct1 – Capitole Du Libre 2019
Prochainement dans Firefox
@hellosct1 – Capitole Du Libre 2019
Prochainement : Points de surveillance
●
Activer devtools.debugger.features.watchpoints
dans Nightly (about:config)
●
Click droit → propriétés de l'objet
– Onglet débogueur → Point d’arrêt... > Get/Set
●
Disponible en VSCode
●
Possibilité :
– Enregistrement d'objets dans la console
– Aperçu en ligne
– etc.
@hellosct1 – Capitole Du Libre 2019
Prochainement : MDN Compatibility panel
●
Détectez les problèmes potentiels de
compatibilité
– Problemes entre CSS et HTML
– lors de l'inspection de la page
– Aide avec MDN.
●
Actuellement
– XPI depuis Github,
– sideload depuis about:debugging
@hellosct1 – Capitole Du Libre 2019
Prochainement : Panneau d'application
●
2 nouveaux inspecteurs :
– Inspection des travailleurs de service,
– Inspection et stockage des manifestes d'applications Web - inspiré de
Chrome.
●
Utilisation à partir de devtools.activée activée
●
L'inspection du manifeste fournit les bases et sera bientôt plus utile
pour guider les applications Web installables.
●
Les améliorations du Service Worker ont été bloquées par le
refactoring de la plate-forme
●
Démo sur
– https://platform-status.mozilla.org/
– https://tuner.cloud/
●
Migration du panneau de stockage (XUL to React).
@hellosct1 – Capitole Du Libre 2019
Prochainement : Mobile viewport meta-tags
●
Plusieurs corrections en cours
→ Améliorer la précision du rendu
du mode de conception réactif.
@hellosct1 – Capitole Du Libre 2019
Prochainement : Firefox Profiler
●
Capturez un profil de performance.
– Analysez-le.
– Partagez-le.
– Rendre le web plus rapide.
●
Exemple :
– Addon : profiler.firefox.com
– Le profilage peut être de
●
courtes rafales ou le garder activé (Ctrl-Shift-1)
●
capturer (Ctrl-Shift-2) lorsque vous avez un problème de
performance
@hellosct1 – Capitole Du Libre 2019
Enfin...
●
Écrivez le code CSS et JS directement dans le navigateur
→ Visualisez les résultats en temps réel.
●
Pas accès à un appareil?
→ Simulez-le!
●
Avez-vous déjà fait une page?
→ Déboguez-le avec le navigateur.
●
Bien sur, assurez-vous que votre site fonctionne
→ dans plusieurs navigateurs.
●
Utilisez la version développeur ou Nightly
→ pour connaître les modifications apportées sur le Web.
@hellosct1 – Capitole Du Libre 2019
Plus loin
●
Firefox DevTools (MDN)
– https://developer.mozilla.org/fr/docs/MDN/Doc_status/DevTools
– https://developer.mozilla.org/en-US/docs/Tools/Settings
●
Documentation
– Utilisateurs
●
https://developer.mozilla.org/en-US/docs/Tools
– Développeurs
●
https://docs.firefox-dev.tools/
●
Forum
– https://discourse.mozilla.org/c/devtools
●
Mozilla hacks
– https://hacks.mozilla.org/
●
Vidéo
– https://www.youtube.com/channel/UCh5UlGiu9d6LegIeUCW4N1w/
@hellosct1 – Capitole Du Libre 2019
Merci
Christophe Villeneuve
@hellosct1
@hellosct1@mamot.fr
Sources :
●
Miguel Useche
●
Harald Kirschner

Contenu connexe

Similaire à la boite à outils de développements dans firefox devtools

La boîte à outils de développements dans Firefox
La boîte à outils de développements dans FirefoxLa boîte à outils de développements dans Firefox
La boîte à outils de développements dans FirefoxChristophe Villeneuve
 
Séminaire Linagora : poste de travail Libre, décembre 2009
Séminaire Linagora : poste de travail Libre, décembre 2009Séminaire Linagora : poste de travail Libre, décembre 2009
Séminaire Linagora : poste de travail Libre, décembre 2009LINAGORA
 
Conférence Shinken à SophiaConf2012 (Jean Gabès)
Conférence Shinken à SophiaConf2012 (Jean Gabès)Conférence Shinken à SophiaConf2012 (Jean Gabès)
Conférence Shinken à SophiaConf2012 (Jean Gabès)Jean Gabès
 
Drupagora 2013 : Drupal8 et Symfony2, quel impact ?
Drupagora 2013 : Drupal8 et Symfony2, quel impact ?Drupagora 2013 : Drupal8 et Symfony2, quel impact ?
Drupagora 2013 : Drupal8 et Symfony2, quel impact ?ekino
 
Responsible Design ou Le web moderne à destination de tous
Responsible Design ou Le web moderne à destination de tousResponsible Design ou Le web moderne à destination de tous
Responsible Design ou Le web moderne à destination de tousjwajsberg
 
10 tips pour améliorer les performances de vos applications Windows 8
10 tips pour améliorer les performances de vos applications Windows 810 tips pour améliorer les performances de vos applications Windows 8
10 tips pour améliorer les performances de vos applications Windows 8Microsoft
 
La réalité mélangée dans vos applications
La réalité mélangée dans vos applicationsLa réalité mélangée dans vos applications
La réalité mélangée dans vos applicationsChristophe Villeneuve
 
Les WebExtensions et Firefox - JDLL 2017
Les WebExtensions et Firefox - JDLL 2017Les WebExtensions et Firefox - JDLL 2017
Les WebExtensions et Firefox - JDLL 2017Christophe Villeneuve
 
Firefox OS dans le web - Journée du libre 2015 Lille
Firefox OS dans le web - Journée du libre 2015  LilleFirefox OS dans le web - Journée du libre 2015  Lille
Firefox OS dans le web - Journée du libre 2015 LilleChristophe Villeneuve
 
Utiliser et ameliorer firefox avec les webextensions
Utiliser et ameliorer firefox avec les webextensionsUtiliser et ameliorer firefox avec les webextensions
Utiliser et ameliorer firefox avec les webextensionsChristophe Villeneuve
 
Design systems : Bench et reco sur les outils
Design systems : Bench et reco sur les outilsDesign systems : Bench et reco sur les outils
Design systems : Bench et reco sur les outilsIdean France
 

Similaire à la boite à outils de développements dans firefox devtools (20)

La boîte à outils de développements dans Firefox
La boîte à outils de développements dans FirefoxLa boîte à outils de développements dans Firefox
La boîte à outils de développements dans Firefox
 
Introduction webextensions
Introduction webextensionsIntroduction webextensions
Introduction webextensions
 
La face cachee des web extensions
La face cachee des web extensionsLa face cachee des web extensions
La face cachee des web extensions
 
Le portage des WebExtensions
Le portage des WebExtensionsLe portage des WebExtensions
Le portage des WebExtensions
 
Séminaire Linagora : poste de travail Libre, décembre 2009
Séminaire Linagora : poste de travail Libre, décembre 2009Séminaire Linagora : poste de travail Libre, décembre 2009
Séminaire Linagora : poste de travail Libre, décembre 2009
 
Conférence Shinken à SophiaConf2012 (Jean Gabès)
Conférence Shinken à SophiaConf2012 (Jean Gabès)Conférence Shinken à SophiaConf2012 (Jean Gabès)
Conférence Shinken à SophiaConf2012 (Jean Gabès)
 
Compte rendu Blend Web Mix 2015
Compte rendu Blend Web Mix 2015Compte rendu Blend Web Mix 2015
Compte rendu Blend Web Mix 2015
 
Drupagora 2013 : Drupal8 et Symfony2, quel impact ?
Drupagora 2013 : Drupal8 et Symfony2, quel impact ?Drupagora 2013 : Drupal8 et Symfony2, quel impact ?
Drupagora 2013 : Drupal8 et Symfony2, quel impact ?
 
Pas possible en drupal, c'est faux
Pas possible en drupal, c'est fauxPas possible en drupal, c'est faux
Pas possible en drupal, c'est faux
 
Responsible Design ou Le web moderne à destination de tous
Responsible Design ou Le web moderne à destination de tousResponsible Design ou Le web moderne à destination de tous
Responsible Design ou Le web moderne à destination de tous
 
Firefox comme navigateur alternatif
Firefox comme navigateur alternatifFirefox comme navigateur alternatif
Firefox comme navigateur alternatif
 
Formation mobile-cross-platform
Formation mobile-cross-platformFormation mobile-cross-platform
Formation mobile-cross-platform
 
10 tips pour améliorer les performances de vos applications Windows 8
10 tips pour améliorer les performances de vos applications Windows 810 tips pour améliorer les performances de vos applications Windows 8
10 tips pour améliorer les performances de vos applications Windows 8
 
La réalité mélangée dans vos applications
La réalité mélangée dans vos applicationsLa réalité mélangée dans vos applications
La réalité mélangée dans vos applications
 
Les WebExtensions et Firefox - JDLL 2017
Les WebExtensions et Firefox - JDLL 2017Les WebExtensions et Firefox - JDLL 2017
Les WebExtensions et Firefox - JDLL 2017
 
The hidden side of webExtensions
The hidden side of webExtensionsThe hidden side of webExtensions
The hidden side of webExtensions
 
Firefox OS dans le web - Journée du libre 2015 Lille
Firefox OS dans le web - Journée du libre 2015  LilleFirefox OS dans le web - Journée du libre 2015  Lille
Firefox OS dans le web - Journée du libre 2015 Lille
 
Utiliser et ameliorer firefox avec les webextensions
Utiliser et ameliorer firefox avec les webextensionsUtiliser et ameliorer firefox avec les webextensions
Utiliser et ameliorer firefox avec les webextensions
 
Meetup sencha
Meetup senchaMeetup sencha
Meetup sencha
 
Design systems : Bench et reco sur les outils
Design systems : Bench et reco sur les outilsDesign systems : Bench et reco sur les outils
Design systems : Bench et reco sur les outils
 

Plus de Christophe Villeneuve

controler vos donnees éthiques dans le web
controler vos donnees éthiques dans le webcontroler vos donnees éthiques dans le web
controler vos donnees éthiques dans le webChristophe Villeneuve
 
Mozilla french speaking community activites
Mozilla french speaking community activitesMozilla french speaking community activites
Mozilla french speaking community activitesChristophe Villeneuve
 
Monitoring dynamique : Grafana et Microsoft
Monitoring dynamique : Grafana et MicrosoftMonitoring dynamique : Grafana et Microsoft
Monitoring dynamique : Grafana et MicrosoftChristophe Villeneuve
 
Le futur de l'authentification webAuthn
Le futur de l'authentification webAuthnLe futur de l'authentification webAuthn
Le futur de l'authentification webAuthnChristophe Villeneuve
 
Tests d'accessibilite par la pratique
Tests d'accessibilite par la pratiqueTests d'accessibilite par la pratique
Tests d'accessibilite par la pratiqueChristophe Villeneuve
 
La réalité melangée dans vos applications
La réalité melangée dans vos applicationsLa réalité melangée dans vos applications
La réalité melangée dans vos applicationsChristophe Villeneuve
 
La sécurité applicative par le design
La sécurité applicative par le designLa sécurité applicative par le design
La sécurité applicative par le designChristophe Villeneuve
 

Plus de Christophe Villeneuve (20)

MariaDB une base de donnees NewSQL
MariaDB une base de donnees NewSQLMariaDB une base de donnees NewSQL
MariaDB une base de donnees NewSQL
 
pister les pisteurs
pister les pisteurspister les pisteurs
pister les pisteurs
 
controler vos donnees éthiques dans le web
controler vos donnees éthiques dans le webcontroler vos donnees éthiques dans le web
controler vos donnees éthiques dans le web
 
Infrastructure as code drupal
Infrastructure as code drupalInfrastructure as code drupal
Infrastructure as code drupal
 
Mariadb une base de données NewSQL
Mariadb une base de données NewSQLMariadb une base de données NewSQL
Mariadb une base de données NewSQL
 
Pentest bus pirate
Pentest bus piratePentest bus pirate
Pentest bus pirate
 
Foxfooding semaine 3
Foxfooding semaine 3Foxfooding semaine 3
Foxfooding semaine 3
 
Foxfooding
FoxfoodingFoxfooding
Foxfooding
 
Accessibilite web wcag rgaa
Accessibilite web wcag rgaaAccessibilite web wcag rgaa
Accessibilite web wcag rgaa
 
Mozilla french speaking community activites
Mozilla french speaking community activitesMozilla french speaking community activites
Mozilla french speaking community activites
 
Monitoring dynamique : Grafana et Microsoft
Monitoring dynamique : Grafana et MicrosoftMonitoring dynamique : Grafana et Microsoft
Monitoring dynamique : Grafana et Microsoft
 
Etes vous-pret pour php8 ?
Etes vous-pret pour php8 ?Etes vous-pret pour php8 ?
Etes vous-pret pour php8 ?
 
Le futur de l'authentification webAuthn
Le futur de l'authentification webAuthnLe futur de l'authentification webAuthn
Le futur de l'authentification webAuthn
 
Send large files with addons
Send large files with addonsSend large files with addons
Send large files with addons
 
Tests d'accessibilite par la pratique
Tests d'accessibilite par la pratiqueTests d'accessibilite par la pratique
Tests d'accessibilite par la pratique
 
Donnez la voix aux machines
Donnez la voix aux machinesDonnez la voix aux machines
Donnez la voix aux machines
 
la réalité mélangée de A a Z
la réalité mélangée de A a Zla réalité mélangée de A a Z
la réalité mélangée de A a Z
 
La réalité melangée dans vos applications
La réalité melangée dans vos applicationsLa réalité melangée dans vos applications
La réalité melangée dans vos applications
 
Souverainte des données
Souverainte des donnéesSouverainte des données
Souverainte des données
 
La sécurité applicative par le design
La sécurité applicative par le designLa sécurité applicative par le design
La sécurité applicative par le design
 

la boite à outils de développements dans firefox devtools

  • 1. La boîte à outils de développements dans Firefox Christophe Villeneuve @hellosct1 @hellosct1@mamot.fr Capitole du Libre 2019
  • 2. Atos open source - afup – lemug.fr – mariadb – drupal – mozilla - firefox – lemugfr - sumo – webextensions – VR – AR – XR - Cause commune 93.1 FM - TechSpeaker - Lizard - eyrolles – editions eni – programmez – linux pratique – webriver – elephpant - CommonVoice – Sécurité - Cybersécurité Christophe Villeneuve ? ● Consultant ● Dresseur animaux Free Software
  • 3. @hellosct1 – Capitole Du Libre 2019 Aujourd’hui ● Les problèmes de développement Web. ● Outils de développement ● On y va… par les exemples
  • 4. @hellosct1 – Capitole Du Libre 2019 ● Les problèmes de développement Web. ● Outils de développement ● On y va… par les exemples
  • 5. @hellosct1 – Capitole Du Libre 2019 Supprimer les frictions !!! ● Offrir des expériences – qui fonctionnent parfaitement dans Firefox
  • 6. @hellosct1 – Capitole Du Libre 2019 Problème numéro 1 : Le matériel ● Nombreux – Tablette – Smartphone – Ordinateur portable ● Différentes tailles d'écran ● Des navigateurs différents
  • 7. @hellosct1 – Capitole Du Libre 2019 Quelques sont les problèmes actuels ? ● Lors d’un développement Web ● Éditeurs à retard technologique ● Peu d’interactions avec le navigateur
  • 8. @hellosct1 – Capitole Du Libre 2019 Problème développements ? ● Nombreuses bibliothèques JS existantes
  • 9. @hellosct1 – Capitole Du Libre 2019 Quel est le plus gros problème ? ● Les problèmes de connexion
  • 10. @hellosct1 – Capitole Du Libre 2019 Autres problèmes répétitifs... ● L'application est lente ● Mon appareil semble lourd → lorsque vous utilisez votre application ● L'application ne fonctionne pas → pour un utilisateur spécifique
  • 11. @hellosct1 – Capitole Du Libre 2019 Editeurs périmés ● Ancien rédacteur – Ils ne supportent pas les dernières spécifications – Presque pas d'interaction avec le navigateur ● Le support arrive en retard
  • 12. @hellosct1 – Capitole Du Libre 2019 Méthodologie de travail ● Écrire le code ● Exécutez votre outil d'assistance ● Changer de navigateur ● Rafraîchir ● Voir les changements ● Répéter en cas d'échec → Ennuyeux, improductif et répétitif
  • 13. @hellosct1 – Capitole Du Libre 2019 Avez-vous connu ces problèmes? Avez-vous connu ces problèmes ?
  • 14. @hellosct1 – Capitole Du Libre 2019 Solution ● Votre navigateur peut vous aider → sur ces scénarios
  • 15. @hellosct1 – Capitole Du Libre 2019 ● Les problèmes de développement Web. ● Outils de développement ● On y va… par les exemples
  • 16. @hellosct1 – Capitole Du Libre 2019 Firefox: Developer Edition / Nightly
  • 17. @hellosct1 – Capitole Du Libre 2019 La barre d’outils ● Choisir l’emplacement de la barre ● Utilisation : – Raccourci (F12) – Choisir la position de l’ancre
  • 18. @hellosct1 – Capitole Du Libre 2019 Outil principal  ● L'inspecteur – Ctrl + Maj + I – Clic droit et Examiner l’élément
  • 19. @hellosct1 – Capitole Du Libre 2019 Quelques fonctionnalités ● Inpecteur ● Console web ● Débogueur Javascript ● Réseau ● Performances ● Vue adaptive ● Accessibilité ● Mémoire ● Stockage ● DOM ● Pipette ● Editeurs – Texte, styles – Shaders, Web audio – Capture https://developer.mozilla.org/fr/docs/Outils
  • 20. @hellosct1 – Capitole Du Libre 2019 ● Les problèmes de développement Web. ● Outils de développement ● On y va… par les exemples
  • 21. @hellosct1 – Capitole Du Libre 2019 Les basics : l’inspecteur ● Sélectionner une zone à la volée – Clic droit puis examiner l’élément. – CTRL-Shift-C (MacOS : CMD-Shift-C) ● Définissez vos préférences ● Débogage de l'ordre en cascade – avec Rules & Computed ● DOM & Console: – inspect (element) & $ 0.textContent
  • 22. @hellosct1 – Capitole Du Libre 2019 Capture écran ● Utilisation : – Activer dans paramètres ● Prendre une capture écran de la page entière ● Sélectionner un noeud
  • 23. @hellosct1 – Capitole Du Libre 2019 La performance ● Utilisation  – Onglet Performances – Activer l’option (si pas activé) – Afficher une page et regarder
  • 24. @hellosct1 – Capitole Du Libre 2019 Consommation mémoire ● Utilisation : – Activer dans les options → Onglet mémoire ● Différentes vues possible → de la consommation
  • 25. @hellosct1 – Capitole Du Libre 2019 Afficher une règle ● Utilisation – Paramètres – Cocher la case → Mesurer une zone de la page – Une règle apparaît
  • 26. @hellosct1 – Capitole Du Libre 2019 Mesurer un objet dans un écran ● Utilisation – Paramètres – Cocher la case → Mesurer une zone de la page – Un icône apparaît
  • 27. @hellosct1 – Capitole Du Libre 2019 Editeur Javascript ● Utilisation – Onglet console – En bas : 1 ligne spécifique ● Editeur de javascript dans DevTools
  • 28. @hellosct1 – Capitole Du Libre 2019 Déboguer en JS ● Possible du pas à pas ● Utilisation : – Onglet débogueur – Choisir le fichier JS – Ajouter un point d’arrêt →Clic sur un numéro de lignes – Ajouter une information → clic droit → Ajouter une sortie console → saisir message ou une alerte
  • 29. @hellosct1 – Capitole Du Libre 2019 Rendre lisible un fichier Javascript ● Utilisation : – Onglet débogueur – Choisir le fichier JS –
  • 30. @hellosct1 – Capitole Du Libre 2019 Pipette ● Connaître la couleur d’un point de l’écran ● Utilisation : – A partir du menu ● Développement web → Pipette – Naviguer dans la page web ● Pour connaître la valeur d’un point
  • 31. @hellosct1 – Capitole Du Libre 2019 About:debugging ● Mode avancé ● Utilisation : – Taper dans la barre de navigation ● About:debugging extension devtools
  • 32. @hellosct1 – Capitole Du Libre 2019 Gestion de polices ● Modification des tailles – Tailles de la police de caractères ● Utilisation – Sélectionner un bloc de la page web (ex : Div) – Inpecteur – Onglet Polices
  • 33. @hellosct1 – Capitole Du Libre 2019 Accessibilité ● Inspecteur →Activer l’option ● Plus loin avec une extension : – Addon webhint : https://addons.mozilla.org/firefox/addon/webhint
  • 34. @hellosct1 – Capitole Du Libre 2019 Editeur CSS ● Utilisation  – Editeur de style – L’icone + pour ajouter une nouvelle CSS
  • 35. @hellosct1 – Capitole Du Libre 2019 CSS Flexbox inspector ● Trouvez les conteneurs Flexbox dans l'inspecteur → Rapidement ● Visualisez tous les éléments Flex – Et l'espacement entre eux https://developer.mozilla.org/en-US/docs/Tools/Page_Inspector/How_to/Examine_Flexbox_layouts
  • 36. @hellosct1 – Capitole Du Libre 2019 Créer des animations CSS ● Choisir élément CSS – Créer ces règles https://developer.mozilla.org/fr/docs/Web/CSS/animation
  • 37. @hellosct1 – Capitole Du Libre 2019 CSS grid ● Utilisation – Onglet inspecteur https://developer.mozilla.org/fr/docs/Outils/Inspecteur/Comment/Examine_grid_layouts
  • 38. @hellosct1 – Capitole Du Libre 2019 CSS inactif ● Manipuler les images ● Détecter les erreurs CSS ● Apprendre quand et pourquoi – certaines propriétés n'ont aucun effet sur un élément. https://developer.mozilla.org/en-US/docs/Tools/Page_Inspector/How_to/Examine_and_edit_CSS
  • 39. @hellosct1 – Capitole Du Libre 2019 Déboguer DOM ● Faire une pause dans les scripts → modifient le DOM ● Utilisation : – Inspecter ● Onglet DOM https://developer.mozilla.org/fr/docs/Outils/DOM_Property_Viewer
  • 40. @hellosct1 – Capitole Du Libre 2019 WebSockets ● De retour pour remplacer WebSocket Monitor →Ne fonctionne plus depuis Firefox 57 ● Cas pratique : – Filtrer par WS dans le panneau Réseau – Résultat ● Backlog – Visualiser de messages binaires, exportation HAR
  • 41. @hellosct1 – Capitole Du Libre 2019 Détecter les espaces blancs indésirables ● Détecter les nœuds de texte dans les espaces blancs ● L’impact → mise en page. ● Utilisation : – Onglet Inspecteur https://developer.mozilla.org/fr/docs/Outils/Inspecteur/Comment/Examiner_et_%C3%A9diter_le_code_HTML
  • 42. @hellosct1 – Capitole Du Libre 2019 CMS / Framework ● Construction d’un nouveau thème → Avec les DevTools
  • 43. @hellosct1 – Capitole Du Libre 2019 Ettendre les outils de développements (devtools) ● Disponible sur AMO – https://addons.mozilla.org – AngularJS Inspector – Ember Inspector – DevTools Tweaks – DevTools Prototyper – React DevTools – Axe DevTools (Accessibility) – WAVE Accessibility Extension – FireQuery – Event Listener Tab – Performance Analyser
  • 44. @hellosct1 – Capitole Du Libre 2019 Prochainement dans Firefox
  • 45. @hellosct1 – Capitole Du Libre 2019 Prochainement : Points de surveillance ● Activer devtools.debugger.features.watchpoints dans Nightly (about:config) ● Click droit → propriétés de l'objet – Onglet débogueur → Point d’arrêt... > Get/Set ● Disponible en VSCode ● Possibilité : – Enregistrement d'objets dans la console – Aperçu en ligne – etc.
  • 46. @hellosct1 – Capitole Du Libre 2019 Prochainement : MDN Compatibility panel ● Détectez les problèmes potentiels de compatibilité – Problemes entre CSS et HTML – lors de l'inspection de la page – Aide avec MDN. ● Actuellement – XPI depuis Github, – sideload depuis about:debugging
  • 47. @hellosct1 – Capitole Du Libre 2019 Prochainement : Panneau d'application ● 2 nouveaux inspecteurs : – Inspection des travailleurs de service, – Inspection et stockage des manifestes d'applications Web - inspiré de Chrome. ● Utilisation à partir de devtools.activée activée ● L'inspection du manifeste fournit les bases et sera bientôt plus utile pour guider les applications Web installables. ● Les améliorations du Service Worker ont été bloquées par le refactoring de la plate-forme ● Démo sur – https://platform-status.mozilla.org/ – https://tuner.cloud/ ● Migration du panneau de stockage (XUL to React).
  • 48. @hellosct1 – Capitole Du Libre 2019 Prochainement : Mobile viewport meta-tags ● Plusieurs corrections en cours → Améliorer la précision du rendu du mode de conception réactif.
  • 49. @hellosct1 – Capitole Du Libre 2019 Prochainement : Firefox Profiler ● Capturez un profil de performance. – Analysez-le. – Partagez-le. – Rendre le web plus rapide. ● Exemple : – Addon : profiler.firefox.com – Le profilage peut être de ● courtes rafales ou le garder activé (Ctrl-Shift-1) ● capturer (Ctrl-Shift-2) lorsque vous avez un problème de performance
  • 50. @hellosct1 – Capitole Du Libre 2019 Enfin... ● Écrivez le code CSS et JS directement dans le navigateur → Visualisez les résultats en temps réel. ● Pas accès à un appareil? → Simulez-le! ● Avez-vous déjà fait une page? → Déboguez-le avec le navigateur. ● Bien sur, assurez-vous que votre site fonctionne → dans plusieurs navigateurs. ● Utilisez la version développeur ou Nightly → pour connaître les modifications apportées sur le Web.
  • 51. @hellosct1 – Capitole Du Libre 2019 Plus loin ● Firefox DevTools (MDN) – https://developer.mozilla.org/fr/docs/MDN/Doc_status/DevTools – https://developer.mozilla.org/en-US/docs/Tools/Settings ● Documentation – Utilisateurs ● https://developer.mozilla.org/en-US/docs/Tools – Développeurs ● https://docs.firefox-dev.tools/ ● Forum – https://discourse.mozilla.org/c/devtools ● Mozilla hacks – https://hacks.mozilla.org/ ● Vidéo – https://www.youtube.com/channel/UCh5UlGiu9d6LegIeUCW4N1w/
  • 52. @hellosct1 – Capitole Du Libre 2019 Merci Christophe Villeneuve @hellosct1 @hellosct1@mamot.fr Sources : ● Miguel Useche ● Harald Kirschner