Duplicate code is one of the most pungent code smells. A rule that is often used is to re-structure code once it is duplicated in three or more places.
Common duplication problems, and corresponding solutions are:
| 1 | <?php | ||
| 5 | 	class Base { | ||
| 6 | private $batiments; | ||
| 7 | |||
| 8 | //-------------------------- BUILDER ----------------------------------------------------------------------------// | ||
| 9 | 		public function __construct() { | ||
| 12 | //-------------------------- END BUILDER ----------------------------------------------------------------------------// | ||
| 13 | |||
| 14 | |||
| 15 | |||
| 16 | //-------------------------- GETTER ----------------------------------------------------------------------------// | ||
| 17 | 		public function getBatiments() { | ||
| 20 | |||
| 21 | /** | ||
| 22 | * fonction qui va initaliser la base | ||
| 23 | */ | ||
| 24 | 		public function getMaBase() { | ||
| 40 | |||
| 41 | /** | ||
| 42 | * @param null $id_base | ||
| 43 | * fonction qui va récupérer les infos de la base | ||
| 44 | */ | ||
| 45 | 		public function getInfoBase($id_base = null) { | ||
| 63 | |||
| 64 | /** | ||
| 65 | * fonction qui recupere tous les batiments de la base | ||
| 66 | */ | ||
| 67 | 		public function getBatimentsBase() { | ||
| 100 | |||
| 101 | /** | ||
| 102 | * @param null $id_identite | ||
| 103 | * fonction qui récupère les bases d'un joueur | ||
| 104 | */ | ||
| 105 | 		public function getBasesJoueur($id_identite = null) { | ||
| 138 | |||
| 139 | /** | ||
| 140 | * @param $id_identite | ||
| 141 | * fonction qui renvoi le pseudo d'un joueur en fonction de son ID | ||
| 142 | */ | ||
| 143 | 		private function getPseudoJoueur($id_identite) { | ||
| 152 | //-------------------------- END GETTER ----------------------------------------------------------------------------// | ||
| 153 | |||
| 154 | |||
| 155 | |||
| 156 | //-------------------------- SETTER ----------------------------------------------------------------------------// | ||
| 157 | 		private function setBatimentsBase($batiments) { | ||
| 160 | //-------------------------- END SETTER ----------------------------------------------------------------------------// | ||
| 161 | } |