SOLID – L: Liskov substitution

« Un carré est un rectangle ». Voilà ce que les gentils professeurs de géométrie nous ont dit. Mais, peut-on en dire de même en orienté objet ? Carre extend Rectangle ? En orienté objet, un rectangle est constitué de 2 attributs : « largeur » et « hauteur » avec leurs « setter » et « getter ». Rien d’incroyable:

Un carré, par […]

SOLID – O: Open/Closed

Le deuxième principe de SOLID nous apprend qu’il faut être ouvert à l’extension mais fermé à la modification. Mais qu’est-ce que cela veut bien pouvoir dire ? Comment faire ? Est-ce que c’est possible ? Fermé aux modifications ? Cela veut dire que je ne vais plus modifier mon code ? Comme disait mon bon […]

SOLID – S: Single Responsibility

Nous allons commencer une série d’articles reprenant les gros principes de base en orienté objet. Ce sont 5 points à ne pas rater! Si vous débutez, cela va clairement vous aider à bien structurer votre code. Si vous êtes déjà dans le bain, cela peut vous servir de piqûre de rappel. Nous aurons donc 5 […]

Déploiement avec Capistrano et Github (sous Windows)

Le déploiement d’un site internet est toujours une opération un peu stressante lorsque l’on a beaucoup de taches à effectuer. Ça l’est encore plus lorsque celles-ci nécessitent des opérations manuelles comme l’upload de presque tous (surtout pas le dossier « upload »!) les fichiers via ftp, modification d’un table Sql, ajout d’un cron, etc… Bref si toutes […]

Les perles de code: volume 1

L’heure est venue de reprendre un peu ce blog en main. Je n’ai malheureusement pas eu le temps de le faire ces derniers mois, mais cette fois-ci, on ne rigole plus. Afin de reprendre « mon travail » en douceur, je vous propose quelques perles trouvées ci et là dans le code lors des mes reviews de […]

PHP5 : Les objets ne sont pas des (détestables) références

Depuis PHP5, j’entends souvent dire que les objets utilisent les références lors d’une assignation ou lorsqu’on les passe en paramètre par exemple. Même la documentation officielle (http://php.net/manual/fr/language.operators.assignment.php) l’explique noir sur blanc: « Une exception au comportement d’assignation par valeur en PHP est le type object, ceux-ci sont assignés par référence dans PHP 5. La copie d’objet doit […]