불필요한 컨텍스트를 추가하지 마세요
클래스 이름이나 객체 이름에 특정한 의미가 있는 경우 변수 이름을 반복하지 마세요.
나쁨:
<?php class Car{ public $carMake; public $carModel; public $carColor; //... }
좋음:
<?php class Car{ public $make; public $model; public $color; //... }
함수 매개변수 수(이상적으로는 2개 미만)
함수 매개변수 수를 제한하는 것은 매우 중요합니다. 매개변수가 3개 이상인 경우 함수를 더 쉽게 테스트할 수 있기 때문입니다. , 각 개별 매개변수를 사용하여 다양한 상황을 테스트해야 합니다.
매개변수가 없는 것이 이상적인 상황입니다. 하나 또는 두 개의 인수는 괜찮지만 세 개는 피해야 합니다. 일반적으로 매개변수가 2개 이상인 경우 함수가 너무 많은 작업을 수행하려고 하는 것입니다. 그렇지 않은 경우 대부분의 경우 상위 수준 개체를 매개변수로 사용하면 됩니다(번역자 참고 사항: 배열, 개체 등).
나쁨:
<?php function createMenu($title, $body, $buttonText, $cancellable) { // ...}
좋음:
<?php class MenuConfig { public $title; public $body; public $buttonText; public $cancellable = false;}$config = new MenuConfig();$config->title = 'Foo';$config->body = 'Bar';$config->buttonText = 'Baz';$config->cancellable = true;function createMenu(MenuConfig $config) { // ...}
함수는 한 가지 일만 해야 합니다.
이것은 소프트웨어 공학에서 가장 중요한 규칙입니다. 함수가 두 가지 이상의 작업을 수행하면 작성하고 테스트하기가 더 어렵습니다. 함수를 작업으로 분리할 수 있으면 쉽게 리팩터링할 수 있고 코드를 더 쉽게 읽을 수 있습니다.
나쁨:
<?phpfunction emailClients($clients) { foreach ($clients as $client) { $clientRecord = $db->find($client); if ($clientRecord->isActive()) { email($client); } }}
좋음:
function emailClients($clients) { $activeClients = activeClients($clients); array_walk($activeClients, 'email'); } function activeClients($clients) { return array_filter($clients, 'isClientActive'); } function isClientActive($client) { $clientRecord = $db->find($client); return $clientRecord->isActive(); }
get 및 set 메소드 사용
PHP에서는 메소드에 대한 공개, 보호 및 비공개 키워드를 설정하여 객체의 속성 표시 여부를 제어할 수 있습니다. 이는 객체지향 디자인의 개방/폐쇄 원칙의 일부입니다.
나쁨:
class BankAccount { public $balance = 1000; } $bankAccount = new BankAccount(); // Buy shoes... $bankAccount->balance -= 100;
좋음:
class BankAccount { private $balance; public function __construct($balance = 1000) { $this->balance = $balance; } public function withdrawBalance($amount) { if ($amount > $this->balance) { throw new \Exception('Amount greater than available balance.'); } $this->balance -= $amount; } public function depositBalance($amount) { $this->balance += $amount; } public function getBalance() { return $this->balance; } } $bankAccount = new BankAccount(); // Buy shoes... $bankAccount->withdrawBalance($shoesPrice); // Get balance $balance = $bankAccount->getBalance();
추천 튜토리얼: "PHP Tutorial"
위 내용은 PHP 코드 작성 사양의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!