View
2.746
Download
1
Category
Preview:
Citation preview
Le pourquoi du comment
Ingénieure
20 ans en DSI
Méthodes pour 100 développeurs
§ Mère de 5 enfants
§ Créatrice et admin de sites web depuis 15 ans
§ Freelance
Le pourquoi du comment
Avant, j’avais des principes.Maintenant, j’ai des enfants.
Avant, j’avais des méthodes.Maintenant, j’ai des clients.
Les bonnes pratiques
Des normesDes conseilsDu partage
d’expérience
Des guidesDes Codex
Des tutorielsDes livresDes sites
Des articles
Les bonnes pratiques
souvent proposées par des développeurs de plugins/thèmes,
ou par des gens qui travaillent en équipe.
Et si on travaille en solo
pour l’unique site d’un client ?
ne pas toucher au « core »
Les répertoires de WordPress sont les suivants :/wp-admin/wp-includes/wp-content
/plugins/themes/uploads
« ne jamais modifier un fichier WordPress, ce sera écrasé à la prochaine mise à jour »
core
1
ne pas toucher au « core »
Vrai aussi pour le code des plugins et celui des thèmes !
Mettre à jour les
versions de WP et des
plugins
Et utilisez hooks et actions…
1
faire des thèmes Enfants
Mettre à jour le thème parent
Isoler / identifier les personnalisations apportées
« ne pas modifier un thème existant, mais y ajouter un thème enfant »
2
faire des thèmes Enfants
Simple à faireMais ajoute une surcouche
A privilégier pour les
« gros » thèmes,
Ou des modifs mineures
2
pas de fonctionnel dans le thème
L’approche MVC… Modèle Vue Contrôleur
Pouvoir découpler présentation et traitements/données
Pour les Custom Post Type, taxonomies, shortcodes
« le fonctionnel doit aller dans un plugin, et le design dans un thème »
http://davidbhayes.com/talks/theme-creep/
3
pas de fonctionnel dans le thème
Qui s’amuse à changer de thème avec des CPT ?Les deux sont liésSi on n’a pas une équipe avec intégrateur
Découpler modèles et
functions.php
3
le copier-coller, c’est le mal
On doit faire évoluer la même chose à plusieurs endroits.
Il peut y avoir des différences de contexte qui vont créer des bugs.
Copier des bouts de code exterieurs
« tout code dupliqué est source de problèmes : DRY ! »
4
le copier-coller, c’est le mal
Factoriser : inc de templates, functions.php, mu-pluginsNe pas multiplier les paramètres ou options…
Factoriser au maximum
à l’intérieur d’un projet
Se créer une bibliothèque
4
pas de requête SQL en direct
Le modèle SQL peut changer avec les versions.
Moins sécurisé.
Maîtriser le modèle et les impacts.
« toujours passer par les fonctions et API WordPress»
5
pas de requête SQL en direct
Les modèle ET les fonctions peuvent changer… Souvent plus performant pour des SELECT complexes.
A réserver aux cas
difficiles
5
toujours faire des sauvegardes
Les fichiers ET la base de données
Régulièrement
A plusieurs endroits
Les vérifier
« après, c’est trop tard »
6
Régulièrement ET avant chaque intervention.L’historique peut être utile.
Des outils existent pour
faciliter la tâche
toujours faire des sauvegardes6
versionner son code
Permet de travailler en équipe
Produit des versions claires
Permet le retour en arrière
Sert également de sauvegarde
Synchronisation d’environnements
« la gestion des sources via un outil de type Git »
7
Beaucoup moins utile en solo qu’en équipe.On peut s’organiser sans outil lourd. Les retours en arrière sont rares.
Si vous en avez
l’habitude
versionner son code7
commenter son code
Notre mémoire a ses limites
La doc peut être semi-automatique
PHPDoc + « Make PHP code self-explaining with PHPXref »
« la doc permet de mieux comprendre le code quand on s’y remet »
8
Répéter le code ?Les éditeurs de texte sont efficaces en recherches. La doc humaine !
Documenter le comment
et le pourquoi,
En français
commenter son code8
Perfectionnisme ou pragmatisme ?Expérience des autres / Son propre contexte
S’informer, évaluer, décider
Concret
Coût
Court terme
Confort
Théorie
Risques
Long terme
Rigueur
Recommended