SlideShare une entreprise Scribd logo
1  sur  13
Android Studio
Améliorer sa productivité
Jacques Giraudel (freelance)
jacquesgiraudel.com
Sommaire
▣ Raccourcis et Live Templates
▣ Generates et refactors
▣ Sélection de plugins
▣ Productivity guide
Raccourci indispensable
Menu d’accès direct
▣ Ctrl + Maj + A : Find Action
□ Accès actions et options de l’IDE
□ Premier pas vers prise en main de l’outil
Seule la connaissances des actions et options est
requise
→ Pas besoin de connaître les raccourcis
Quelques raccourcis
▣ Ctrl + (Maj) + N : Rechercher Classe (Fichier)
▣ Ctrl + F12 : Structure de Fichier
▣ Ctrl + (Maj / Alt) + H : Hiérarchie de Classe (Type / Appel)
▣ Ctrl + Q : Quick Documentation
▣ Ctrl + P : Info Paramètres
Live Templates
Abréviation + Enter : génération de code
▣ fbc : findViewById avec cast
▣ psf psfs psfi : public final static (String / int)
▣ logd loge logi : Log.d(TAG, String)
▣ fori itar : boucle for et boucle for sur array
▣ myList.fori : boucle for (avec entier fin basé sur taille myList)
Generates et Refactors
▣ Generates : constructeurs, getters et setters, etc.
▣ Refactors
□ Extract : Sortir un nouvel élément d’un autre
Variable, Constante, Field, Paramètre
Méthode
Log.d(TAG, "Bonjour"); String bonjour = "Bonjour";
Log.d(TAG, bonjour);
Log.d(TAG, bonjour);
…
bonjour(bonjour);
…
private void bonjour(String bonjour) {
Log.d(TAG, bonjour);
}
Plugins
▣ Peu de plugins intéressants
▣ ADB Idea
□ Commandes ADB via menu
Uninstall App,
Kill App,
Clear App Data,
Start App
Plugins (suite)
▣ Key promoter
□ Affichage du raccourci sur utilisation fonction depuis
souris
□ Seuil personnalisable
□ Affichage personnalisable
Productivity Guide
▣ Statistiques d’utilisation des fonctions avancées
□ Help > Productivity Guide
□ nombre d’utilisation et
dernière utilisation
□ regroupé par type
complétion de code
refactoring
navigation
édition de code
assistant de code
□ guide d’utilisation
Merci!
Des questions?
Template CC
Task et Context
▣ Task = 1 tâche effectuée sous Android Studio
□ liée ou non à 1 bug de votre gestionnaire de bug
simple référence, pas d’interaction
□ contient
1 contexte = ensemble de fichier ouverts
1 changelist = ensemble de fichiers modifiés
(commit sur 1 seule changelist à la fois)
→ séparer les fichiers associés à des commits différents
dernière stacktrace
Task et Context (suite)
□ Possibilité de bascule d’1 tâche à l’autre
▣ Possibilité de sauvegarde et restauration hors tâche
Extras
▣ Mode Présentation
□ full screen
□ police grossie
□ non affichage des menus
latéraux
▣ Mode Distraction Free
□ idem police à taille
normale

Contenu connexe

En vedette

You Can Be a Change-Agent
You Can Be a Change-AgentYou Can Be a Change-Agent
You Can Be a Change-AgentPaul D. Casey
 
Penilaian hasil belajar
Penilaian hasil belajarPenilaian hasil belajar
Penilaian hasil belajarBambang Bee
 
Cach phan biet giay huong dan mua hang-bao quan giay
Cach phan biet giay huong dan mua hang-bao quan giayCach phan biet giay huong dan mua hang-bao quan giay
Cach phan biet giay huong dan mua hang-bao quan giayGiày Chính Hãng
 
UK Spectrum Policy Forum - Simon Saunders, Real Wireless - Cluster 1 progress...
UK Spectrum Policy Forum - Simon Saunders, Real Wireless - Cluster 1 progress...UK Spectrum Policy Forum - Simon Saunders, Real Wireless - Cluster 1 progress...
UK Spectrum Policy Forum - Simon Saunders, Real Wireless - Cluster 1 progress...techUK
 
UK Spectrum Policy Forum – Trevor Faulkes, HS2 - Railway input to UK Spectrum...
UK Spectrum Policy Forum – Trevor Faulkes, HS2 - Railway input to UK Spectrum...UK Spectrum Policy Forum – Trevor Faulkes, HS2 - Railway input to UK Spectrum...
UK Spectrum Policy Forum – Trevor Faulkes, HS2 - Railway input to UK Spectrum...techUK
 
Performance guru
Performance guruPerformance guru
Performance guruBambang Bee
 
IR News_First Semester Issue_2015
IR News_First Semester Issue_2015IR News_First Semester Issue_2015
IR News_First Semester Issue_2015Yatva-Ashande Hinda
 
Civilizaciones antiguas
Civilizaciones antiguas Civilizaciones antiguas
Civilizaciones antiguas Omar Mug
 
UK Spectrum Policy Forum - Ross Macindoe, Airwave Solutions Ltd: Mission Crit...
UK Spectrum Policy Forum - Ross Macindoe, Airwave Solutions Ltd: Mission Crit...UK Spectrum Policy Forum - Ross Macindoe, Airwave Solutions Ltd: Mission Crit...
UK Spectrum Policy Forum - Ross Macindoe, Airwave Solutions Ltd: Mission Crit...techUK
 
Final Velocity Presentation
Final Velocity PresentationFinal Velocity Presentation
Final Velocity PresentationKristie Wong
 
Vision is C'ing Future Success
Vision is C'ing Future SuccessVision is C'ing Future Success
Vision is C'ing Future SuccessPaul D. Casey
 
Cach phan biet giay huong dan mua hang-bao quan giay
Cach phan biet giay huong dan mua hang-bao quan giayCach phan biet giay huong dan mua hang-bao quan giay
Cach phan biet giay huong dan mua hang-bao quan giayGiày Chính Hãng
 
Mejorar la calidad del profesorado
Mejorar la calidad del profesoradoMejorar la calidad del profesorado
Mejorar la calidad del profesoradoCecibelGuzman
 
Questions to Pack in Your Self-Leadership Backpack Before Heading to Work
Questions to Pack in Your Self-Leadership Backpack Before Heading to WorkQuestions to Pack in Your Self-Leadership Backpack Before Heading to Work
Questions to Pack in Your Self-Leadership Backpack Before Heading to WorkPaul D. Casey
 

En vedette (20)

PMI Central Indiana Chapter - Product Owner - Michael Nir - Slide deck
PMI Central Indiana Chapter - Product Owner - Michael Nir - Slide deckPMI Central Indiana Chapter - Product Owner - Michael Nir - Slide deck
PMI Central Indiana Chapter - Product Owner - Michael Nir - Slide deck
 
You Can Be a Change-Agent
You Can Be a Change-AgentYou Can Be a Change-Agent
You Can Be a Change-Agent
 
Penilaian hasil belajar
Penilaian hasil belajarPenilaian hasil belajar
Penilaian hasil belajar
 
Cach phan biet giay huong dan mua hang-bao quan giay
Cach phan biet giay huong dan mua hang-bao quan giayCach phan biet giay huong dan mua hang-bao quan giay
Cach phan biet giay huong dan mua hang-bao quan giay
 
1.mbh intro
1.mbh intro1.mbh intro
1.mbh intro
 
UK Spectrum Policy Forum - Simon Saunders, Real Wireless - Cluster 1 progress...
UK Spectrum Policy Forum - Simon Saunders, Real Wireless - Cluster 1 progress...UK Spectrum Policy Forum - Simon Saunders, Real Wireless - Cluster 1 progress...
UK Spectrum Policy Forum - Simon Saunders, Real Wireless - Cluster 1 progress...
 
UK Spectrum Policy Forum – Trevor Faulkes, HS2 - Railway input to UK Spectrum...
UK Spectrum Policy Forum – Trevor Faulkes, HS2 - Railway input to UK Spectrum...UK Spectrum Policy Forum – Trevor Faulkes, HS2 - Railway input to UK Spectrum...
UK Spectrum Policy Forum – Trevor Faulkes, HS2 - Railway input to UK Spectrum...
 
Performance guru
Performance guruPerformance guru
Performance guru
 
IR News_First Semester Issue_2015
IR News_First Semester Issue_2015IR News_First Semester Issue_2015
IR News_First Semester Issue_2015
 
Civilizaciones antiguas
Civilizaciones antiguas Civilizaciones antiguas
Civilizaciones antiguas
 
Agile and Scrum 101 –PMI Central Indiana Chapter - Michael Nir - Slide deck
Agile and Scrum 101 –PMI Central Indiana Chapter -  Michael Nir - Slide deckAgile and Scrum 101 –PMI Central Indiana Chapter -  Michael Nir - Slide deck
Agile and Scrum 101 –PMI Central Indiana Chapter - Michael Nir - Slide deck
 
UK Spectrum Policy Forum - Ross Macindoe, Airwave Solutions Ltd: Mission Crit...
UK Spectrum Policy Forum - Ross Macindoe, Airwave Solutions Ltd: Mission Crit...UK Spectrum Policy Forum - Ross Macindoe, Airwave Solutions Ltd: Mission Crit...
UK Spectrum Policy Forum - Ross Macindoe, Airwave Solutions Ltd: Mission Crit...
 
Storyboard KCB101
Storyboard KCB101Storyboard KCB101
Storyboard KCB101
 
Final Velocity Presentation
Final Velocity PresentationFinal Velocity Presentation
Final Velocity Presentation
 
09 09-2009
09 09-200909 09-2009
09 09-2009
 
Vision is C'ing Future Success
Vision is C'ing Future SuccessVision is C'ing Future Success
Vision is C'ing Future Success
 
Cach phan biet giay huong dan mua hang-bao quan giay
Cach phan biet giay huong dan mua hang-bao quan giayCach phan biet giay huong dan mua hang-bao quan giay
Cach phan biet giay huong dan mua hang-bao quan giay
 
Php3city - ownClod
Php3city - ownClodPhp3city - ownClod
Php3city - ownClod
 
Mejorar la calidad del profesorado
Mejorar la calidad del profesoradoMejorar la calidad del profesorado
Mejorar la calidad del profesorado
 
Questions to Pack in Your Self-Leadership Backpack Before Heading to Work
Questions to Pack in Your Self-Leadership Backpack Before Heading to WorkQuestions to Pack in Your Self-Leadership Backpack Before Heading to Work
Questions to Pack in Your Self-Leadership Backpack Before Heading to Work
 

Similaire à PAUG 03/05/2016 : Android Studio Rappels

Développement de plug in sous eclipse
Développement de plug in sous eclipseDéveloppement de plug in sous eclipse
Développement de plug in sous eclipseISIG
 
Visual Studio 2008 Overview
Visual Studio 2008 OverviewVisual Studio 2008 Overview
Visual Studio 2008 OverviewGregory Renard
 
Industrialisation des développements logiciels
Industrialisation des développements logicielsIndustrialisation des développements logiciels
Industrialisation des développements logicielsSylvain Leroy
 
Qualité logicielle
Qualité logicielleQualité logicielle
Qualité logiciellecyrilgandon
 
La Tooling API, est-ce pour moi ? Bien sûr, viens voir pourquoi !
La Tooling API, est-ce pour moi ? Bien sûr, viens voir pourquoi !La Tooling API, est-ce pour moi ? Bien sûr, viens voir pourquoi !
La Tooling API, est-ce pour moi ? Bien sûr, viens voir pourquoi !Paris Salesforce Developer Group
 
Développement avec Java Micro Edition
Développement avec Java Micro EditionDéveloppement avec Java Micro Edition
Développement avec Java Micro EditionSylvain Wallez
 
Android Lab Test : La boîte de dialogue oui/non (français)
Android Lab Test : La boîte de dialogue oui/non (français)Android Lab Test : La boîte de dialogue oui/non (français)
Android Lab Test : La boîte de dialogue oui/non (français)Bruno Delb
 
Techniques de programmation avancée LabVIEW : gestion des données de la local...
Techniques de programmation avancée LabVIEW : gestion des données de la local...Techniques de programmation avancée LabVIEW : gestion des données de la local...
Techniques de programmation avancée LabVIEW : gestion des données de la local...Luc Desruelle
 
Presentation langage go_19022015
Presentation langage go_19022015Presentation langage go_19022015
Presentation langage go_19022015Stéphane Legrand
 
C++ 11 - Tech Days 2014 in Paris
C++ 11 - Tech Days 2014 in ParisC++ 11 - Tech Days 2014 in Paris
C++ 11 - Tech Days 2014 in Parischristophep21
 
Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
Bonnes pratiques pour apprivoiser le C++11 avec Visual C++Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
Bonnes pratiques pour apprivoiser le C++11 avec Visual C++Microsoft
 
Partie1 TypeScript
Partie1 TypeScriptPartie1 TypeScript
Partie1 TypeScriptHabib Ayad
 
Coder plus rapidement avec LabVIEW
Coder plus rapidement avec LabVIEWCoder plus rapidement avec LabVIEW
Coder plus rapidement avec LabVIEWOlivier JOURDAN
 
Pipeline Devops - Intégration continue : ansible, jenkins, docker, jmeter...
Pipeline Devops - Intégration continue : ansible, jenkins, docker, jmeter...Pipeline Devops - Intégration continue : ansible, jenkins, docker, jmeter...
Pipeline Devops - Intégration continue : ansible, jenkins, docker, jmeter...XavierPestel
 
Java 5, un blian
Java 5, un blianJava 5, un blian
Java 5, un bliantareq
 
Java 5, un bilan
Java 5,  un bilanJava 5,  un bilan
Java 5, un bilanteejug
 
Théorie des langages - 03 - Principes et paradigmes
Théorie des langages - 03 - Principes et paradigmesThéorie des langages - 03 - Principes et paradigmes
Théorie des langages - 03 - Principes et paradigmesYann Caron
 
Théorie des langages - 02 - Code gen
Théorie des langages - 02 - Code genThéorie des langages - 02 - Code gen
Théorie des langages - 02 - Code genYann Caron
 

Similaire à PAUG 03/05/2016 : Android Studio Rappels (20)

Algo poo ts
Algo poo tsAlgo poo ts
Algo poo ts
 
Développement de plug in sous eclipse
Développement de plug in sous eclipseDéveloppement de plug in sous eclipse
Développement de plug in sous eclipse
 
Visual Studio 2008 Overview
Visual Studio 2008 OverviewVisual Studio 2008 Overview
Visual Studio 2008 Overview
 
Cours JavaScript
Cours JavaScriptCours JavaScript
Cours JavaScript
 
Industrialisation des développements logiciels
Industrialisation des développements logicielsIndustrialisation des développements logiciels
Industrialisation des développements logiciels
 
Qualité logicielle
Qualité logicielleQualité logicielle
Qualité logicielle
 
La Tooling API, est-ce pour moi ? Bien sûr, viens voir pourquoi !
La Tooling API, est-ce pour moi ? Bien sûr, viens voir pourquoi !La Tooling API, est-ce pour moi ? Bien sûr, viens voir pourquoi !
La Tooling API, est-ce pour moi ? Bien sûr, viens voir pourquoi !
 
Développement avec Java Micro Edition
Développement avec Java Micro EditionDéveloppement avec Java Micro Edition
Développement avec Java Micro Edition
 
Android Lab Test : La boîte de dialogue oui/non (français)
Android Lab Test : La boîte de dialogue oui/non (français)Android Lab Test : La boîte de dialogue oui/non (français)
Android Lab Test : La boîte de dialogue oui/non (français)
 
Techniques de programmation avancée LabVIEW : gestion des données de la local...
Techniques de programmation avancée LabVIEW : gestion des données de la local...Techniques de programmation avancée LabVIEW : gestion des données de la local...
Techniques de programmation avancée LabVIEW : gestion des données de la local...
 
Presentation langage go_19022015
Presentation langage go_19022015Presentation langage go_19022015
Presentation langage go_19022015
 
C++ 11 - Tech Days 2014 in Paris
C++ 11 - Tech Days 2014 in ParisC++ 11 - Tech Days 2014 in Paris
C++ 11 - Tech Days 2014 in Paris
 
Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
Bonnes pratiques pour apprivoiser le C++11 avec Visual C++Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
 
Partie1 TypeScript
Partie1 TypeScriptPartie1 TypeScript
Partie1 TypeScript
 
Coder plus rapidement avec LabVIEW
Coder plus rapidement avec LabVIEWCoder plus rapidement avec LabVIEW
Coder plus rapidement avec LabVIEW
 
Pipeline Devops - Intégration continue : ansible, jenkins, docker, jmeter...
Pipeline Devops - Intégration continue : ansible, jenkins, docker, jmeter...Pipeline Devops - Intégration continue : ansible, jenkins, docker, jmeter...
Pipeline Devops - Intégration continue : ansible, jenkins, docker, jmeter...
 
Java 5, un blian
Java 5, un blianJava 5, un blian
Java 5, un blian
 
Java 5, un bilan
Java 5,  un bilanJava 5,  un bilan
Java 5, un bilan
 
Théorie des langages - 03 - Principes et paradigmes
Théorie des langages - 03 - Principes et paradigmesThéorie des langages - 03 - Principes et paradigmes
Théorie des langages - 03 - Principes et paradigmes
 
Théorie des langages - 02 - Code gen
Théorie des langages - 02 - Code genThéorie des langages - 02 - Code gen
Théorie des langages - 02 - Code gen
 

PAUG 03/05/2016 : Android Studio Rappels

  • 1. Android Studio Améliorer sa productivité Jacques Giraudel (freelance) jacquesgiraudel.com
  • 2. Sommaire ▣ Raccourcis et Live Templates ▣ Generates et refactors ▣ Sélection de plugins ▣ Productivity guide
  • 3. Raccourci indispensable Menu d’accès direct ▣ Ctrl + Maj + A : Find Action □ Accès actions et options de l’IDE □ Premier pas vers prise en main de l’outil Seule la connaissances des actions et options est requise → Pas besoin de connaître les raccourcis
  • 4. Quelques raccourcis ▣ Ctrl + (Maj) + N : Rechercher Classe (Fichier) ▣ Ctrl + F12 : Structure de Fichier ▣ Ctrl + (Maj / Alt) + H : Hiérarchie de Classe (Type / Appel) ▣ Ctrl + Q : Quick Documentation ▣ Ctrl + P : Info Paramètres
  • 5. Live Templates Abréviation + Enter : génération de code ▣ fbc : findViewById avec cast ▣ psf psfs psfi : public final static (String / int) ▣ logd loge logi : Log.d(TAG, String) ▣ fori itar : boucle for et boucle for sur array ▣ myList.fori : boucle for (avec entier fin basé sur taille myList)
  • 6. Generates et Refactors ▣ Generates : constructeurs, getters et setters, etc. ▣ Refactors □ Extract : Sortir un nouvel élément d’un autre Variable, Constante, Field, Paramètre Méthode Log.d(TAG, "Bonjour"); String bonjour = "Bonjour"; Log.d(TAG, bonjour); Log.d(TAG, bonjour); … bonjour(bonjour); … private void bonjour(String bonjour) { Log.d(TAG, bonjour); }
  • 7. Plugins ▣ Peu de plugins intéressants ▣ ADB Idea □ Commandes ADB via menu Uninstall App, Kill App, Clear App Data, Start App
  • 8. Plugins (suite) ▣ Key promoter □ Affichage du raccourci sur utilisation fonction depuis souris □ Seuil personnalisable □ Affichage personnalisable
  • 9. Productivity Guide ▣ Statistiques d’utilisation des fonctions avancées □ Help > Productivity Guide □ nombre d’utilisation et dernière utilisation □ regroupé par type complétion de code refactoring navigation édition de code assistant de code □ guide d’utilisation
  • 11. Task et Context ▣ Task = 1 tâche effectuée sous Android Studio □ liée ou non à 1 bug de votre gestionnaire de bug simple référence, pas d’interaction □ contient 1 contexte = ensemble de fichier ouverts 1 changelist = ensemble de fichiers modifiés (commit sur 1 seule changelist à la fois) → séparer les fichiers associés à des commits différents dernière stacktrace
  • 12. Task et Context (suite) □ Possibilité de bascule d’1 tâche à l’autre ▣ Possibilité de sauvegarde et restauration hors tâche
  • 13. Extras ▣ Mode Présentation □ full screen □ police grossie □ non affichage des menus latéraux ▣ Mode Distraction Free □ idem police à taille normale

Notes de l'éditeur

  1. Titre Présentation Afficher / Réafficher les fonctionnalités AS : connues non utilisées, non connues, non comprises -> reprise en main + créer les habitudes : pour améliorer votre productivité
  2. Sélection de features (tout n’est pas présenté), Aide d’utilisation courante (pas les basiques : go to declaration, ni les fonctions d’utilisation ponctuelle) Raccourcis et Live Template : combinaisons de touche + abréviations qui génèrent du code Generates et refactors : générations de code et refactorings Sélection de plugins : peu d’intéressant Productivity Guide : contrôler votre appropriation des fonctions de l’IDE (tout les outils de productivité vus avant)
  3. Raccourcis haut niveau (pas les basiques, les utiles qu’on n’utilise pas forcément) Souvent le MAJ va donner accès à une fonction avancée ou une dimension différente de la même fonction Navigate barre de menu : hiérarchie de Classe (parent),Type, d’appel (hiérarchie d’appel jusqu’à la méthode), Table des raccourcis : Help > Default Keymap Reference (cheat sheet / anti-seche) -> imprimer, Raccourcis customisables (settings)
  4. set visibility : visible / gone, Toast, etc. Customisables Live Templates, Raccourcis : settings IDE partageables (import, export, équipe)
  5. Autres refactors : convert anonymous to inner, generify
  6. hors ceux qui sont propres à un outil : genymotion Accessible comme toute action et option via le Find Action
  7. avant outils productivité - contrôle utilisation outils productivité violent
  8. Contrôle utilisation outils productivité moins violent 1 fois en fin de semaine (planifier une tâche), moins contraignant que le Key promoter
  9. Sebastiano Poggi et Reto Maier sur Medium Fonctions d’utilisation moins fréquente : Intégration lib/module Google : Intégration d'API - GCM Backend App Engine = Cloud = Endpoints ? Analytics Authentication Cloud Test Lab Editeur de ressource qui peut être enrichi par des plugins (MD, facilité sur la conversion d’images en format android (densité, nom), etc.) Outils Analyze : inspect code (lint), etc. analyze dataflow (flux de données/hiérarchie d’appel to / from depuis une donnée : variable, paramètre, expression) Find structural : antipatterns, etc. reformat et rearrange code (attention aux commentaires hors méthodes), clean -> coches au commit (sur le chemin)
  10. Autres features Pas dans un menu utilisé souvent -> Ctrl + Maj + A : find action (entrée primaire Tools) dernière stacktrace -> analyse stacktrace (ramène la dernière stacktrace) - trouvable par findaction
  11. Accessible comme toute action et option via le Find Action
  12. changement de classe au contrôle tab