Mon entreprise (petite, environ 40 personnes répartie sur 3 bureaux) organise occasionnellement des "ateliers pour développeurs" en ligne où l'un des développeurs organise une présentation sur un sujet technologique. Il ne s'agit pas nécessairement de notre travail, mais simplement d'aider chacun à améliorer ses compétences et sa compréhension.
On m'a demandé d'héberger le prochain, et le sujet (choisi dans une liste que j'ai fournie) est le style de code et les modèles de conception. Je sais que ces choses ne sont pas si étroitement liées, mais supportez-moi. J'ai vu de nombreux endroits dans notre base de code qui pourraient être améliorés, certains qui pourraient même être admissibles à DailyWTF, donc je veux que cette présentation soit aussi efficace que possible. Le problème est que je ne sais pas exactement quoi couvrir en une heure.
Ma première idée est d'utiliser notre propre code à titre d'exemple, pour ramener à la maison le point de «s'il vous plaît appliquer réellement cela à votre travail». Mais le sujet est tellement vaste.
Certaines choses qui ne vont pas avec notre code (PHP) incluent:
- OO minimal. Cela s'est amélioré récemment, mais il y a encore des tonnes de fonctions mondiales. Il me faut du temps pour trouver des choses.
- Config globale (avis je suppose). Vous pouvez trouver $ GLOBALS ['blah'] dispersés dans à peu près tous les fichiers.
- Style d'accolade incohérent. Cela semble minime, mais cela a en fait provoqué une erreur de syntaxe il y a cinq jours, qui n'a toujours pas été corrigée hier.
- Constructions inefficaces. J'ai pu faire quelques améliorations de base qui ont réduit le temps de fonctionnement de 70% dans certaines zones.
Je veux que cette chose soit aussi utile que possible, sans paraître condescendante à mes collègues. Alors, sur quels aspects du "style" dois-je me concentrer et quels modèles de conception pourraient être les plus utiles à expliquer?