1
0
mirror of https://github.com/jupeter/clean-code-php.git synced 2025-09-26 22:18:59 +02:00

Add origin bad example

This commit is contained in:
Peter Gribanov
2017-08-30 08:41:34 +03:00
committed by GitHub
parent 0fab26d206
commit 47d6f95f43

View File

@@ -171,26 +171,40 @@ function paintCar(&$car) {
### Use default arguments instead of short circuiting or conditionals ### Use default arguments instead of short circuiting or conditionals
**Not good:**
This is not good because `$breweryName` can be `NULL`.
```php
function createMicrobrewery($breweryName = 'Hipster Brew Co.')
{
   // ...
}
```
**Not bad:** **Not bad:**
This opinion is understandable than the previous version, but it better controls the value of the variable.
```php ```php
function createMicrobrewery($name = null) function createMicrobrewery($name = null)
{ {
   $breweryName = $name ?: 'Hipster Brew Co.';    $breweryName = $name ?: 'Hipster Brew Co.';
// ... // ...
} }
``` ```
**Good for PHP 7+**: **Good**:
If you support only PHP 7+, then you can use [type hinting](http://php.net/manual/en/functions.arguments.php#functions.arguments.type-declaration) and be sure that the `$breweryName` will not be `NULL`.
```php ```php
function createMicrobrewery(string $breweryName = 'Hipster Brew Co.') function createMicrobrewery(string $breweryName = 'Hipster Brew Co.')
{ {
   // ...    // ...
} }
``` ```
**[⬆ back to top](#table-of-contents)** **[⬆ back to top](#table-of-contents)**
## **Functions** ## **Functions**
### Function arguments (2 or fewer ideally) ### Function arguments (2 or fewer ideally)