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 declare(strict_types=1); |
||
17 | class StrictSimpleObjectProcessor extends ObjectProcessor |
||
18 | { |
||
19 | /** |
||
20 | * @param \stdClass $input |
||
21 | * @return \stdClass |
||
22 | */ |
||
23 | public function hydrateObject(\stdClass $input) |
||
45 | |||
46 | /** |
||
47 | * @param object $object |
||
48 | * @return \stdClass |
||
49 | */ |
||
50 | protected function dehydrateObject($object): \stdClass |
||
66 | } |
||
67 |