이 기사에서는 PHP 분야에서 일반적으로 사용되는 좋은 코딩 습관, 즉 코딩 표준에 대해 설명합니다.
1, 오류 보고가 활성화되었습니다
오류 보고는 PHP의 매우 유용한 기능이므로 개발 단계에서 활성화해야 합니다. 이는 코드의 문제를 식별하는 데 도움이 될 수 있습니다. 가장 일반적으로 사용되는 기능은 "E_ALL"로, 모든 경고와 심각한 오류를 찾는 데 도움이 됩니다. 코드를 온라인에 올리기 전에 이 기능 프롬프트를 꺼야 한다는 점을 지적해야 합니다. 그렇지 않으면 모든 잠재적인 오류와 경고가 브라우저에 노출됩니다.
2. DRY 원칙을 사용하세요
'Do not Repeat Yourself', DRY 원칙은 코드를 반복하지 않는다는 의미입니다. 이 개념은 Java, C#, PHP 등 모든 프로그래밍 언어에 적용할 수 있는 매우 유용한 프로그래밍 개념입니다. 프로그램에 중복 코드가 없는지 확인하려면 DRY 원칙을 사용하세요.
DRY 원칙을 위반하는 솔루션을 흔히 WET라고 부르는데, 이는 "모든 것을 두 번 작성한다"는 뜻입니다. 동일한 함수로 작성한 코드는 두 번 이상 나타나며 모두가 농담으로 타이핑처럼 부릅니다.
다음 코드를 살펴보겠습니다.
목록1:
WET 코드 방법:
$mysql = mysql_connect ( 'localhost', 'mysqladmin_uid', 'mysqladmin_pwd' ); mysql_select_db( 'DB_NAME' ) or die( "Sorry !! No database selected!");
다음은 DRY 원칙을 사용하여 코드를 최적화합니다.
$db_host = ' localhost '; $db_user = ' mysqladmin_uid '; $db_password = ' mysqladmin_pwd '; $db_database = ' DB_NAME '; $mysql = mysql_connect($db_host, $db_user, $db_password); mysql_select_db($db_database);
3. 들여쓰기와 공백을 적절하게 사용하세요
모든 프로그래밍 언어로 코드를 작성할 때는 코드에서 필요한 경우 적절한 들여쓰기와 충분한 공간을 제공하는지 확인해야 합니다. 코드의 가독성을 높이고 보다 효율적인 방법으로 코드를 관리합니다.
4. 의미 있고 일관된 명명 기준을 사용하세요
모든 프로그래밍 언어와 마찬가지로 PHP 전문가들은 의미 있는 명명 표준을 따를 것을 권장합니다. 이 요구 사항을 충족하는 두 가지 주요 방법은 다음과 같습니다.
A. 카멜 케이스
이 방법에서는 첫 글자는 소문자이고, 각 단어의 첫 글자 뒤에는 대문자가 옵니다.
목록2:
public class MyClass { public void methodName(String argName) { } }
나 밑줄
이 방법에서는 두 단어 사이에 밑줄("_")을 넣습니다. 이 방법을 사용하면 코드를 다음과 같이 수정할 수 있습니다.
목록3: 밑줄이 그어진 코드 조각 사용
public class MyClass { public void method_name(String arg_name) { } }
5, 깊은 중첩을 피하세요
어떤 개발 언어를 사용하든 여러 수준의 중첩으로 인해 코드 가독성이 떨어집니다. 모든 개발자는 깊은 중첩을 사용하지 않아야 합니다.
목록 4: 코드 조각에는 여러 수준의 중첩이 있습니다
<?php class MyClass { public function method_name($arg_name) { if (is_writable ( $folder )) { if ($fp = fopen ( $file_location_path, 'w' )) { if ($stuff = extractSomeConditionalStuff ()) { if (fwrite ( $fp, $stuff )) { // ... } else { return false; } } else { return false; } } else { return false; } } else { return false; } } } ?>
위 코드는 간단한 중첩 코드입니다. 그림이 있는 곳에서 블록이 끝나면 매우 어렵다는 것을 알 수 있습니다. 가독성을 높이기 위해 코드를 수정해 보겠습니다.
목록5: 다중 레벨 중첩을 방지하기 위한 코드 조각
function method_name (String arg_name) { // ... if (! is_writable ( $folder )) { return false; } if (! $fp = fopen ( $file_location_path, 'w' )) { return false; } if (! $stuff = extractSomeConditionalStuff ()) { return false; } if (fwrite ( $fp, $stuff )) { // ... } else { return false; } }
6, 적절한 설명 추가
개발 중에는 소스 코드에 인라인 주석이 충분한지 확인하세요. 이는 따라야 할 표준 관행입니다. 코딩 책임자가 동일하게 유지되지 않는 경우가 많기 때문에 이는 코드를 심층적으로 분석하는 데 도움이 됩니다. 같은 사람이 코드에서 몇 가지 간단한 변경을 요청하더라도 인라인 주석은 항상 당시 코드가 작성된 목적을 이해하는 데 도움이 됩니다. PHP에서 더 나은 주석 표준을 사용하려면 phpDocumentor와 같은 일부 표준 PHP 문서 패키지를 확인하는 것이 좋습니다.
7. 웹사이트 루트 디렉터리에 PHPINFO() 함수를 넣지 마세요
phpinfo() 함수는 매우 중요한 함수이므로 주의해서 사용해야 합니다. 이 기능을 사용하면 누구나 서버 환경의 세부 사항을 볼 수 있습니다. 항상 넣어두는 것이 가장 좋습니다
안전한 위치에 있는 파일에 사용됩니다. 개발이 완료되고 온라인 상태가 되면 이 코드를 삭제해야 합니다.
8. 절대 사용자를 믿지 마세요
애플리케이션에 사용자 입력이 포함된 경우 가능한 다양한 입력이 포함되므로 이러한 방식으로 처리할 수 있는 안전한 코드를 작성해야 합니다. 프로그램이 공격으로 주입되거나 데이터 무결성이 손상되는 것을 방지하려면 필터링된 데이터의 형식을 확인해야 합니다. "끔찍한 코드 삽입 방법" 기사를 읽어보세요
9. 캐싱 메커니즘의 합리적인 사용
좋은 프로그래밍 접근 방식은 항상 캐싱 메커니즘 사용을 권장합니다. 캐싱은 더 나은 성능을 얻는 데 도움이 됩니다.
PHP 세계에서는 다음을 사용하여 캐싱을 구현합니다.
Memcached - 작은 데이터 청크를 사용하여 저장하는 키-값 저장소입니다.
APC - 개방형 PHP opcode 캐시를 위한 선택적 PHP 캐시
XCache - 빠르고 안정적인 PHP opcode 캐시
Zend Cache – 고급 캐싱 기능 모음을 구현하기 위한 API입니다.
eAcclerator – 오픈 소스 캐싱 도구
10, 기존 변수 복사를 피하세요
미리 정의된 변수를 더 작은 이름의 지역 변수에 복사하는 것은 좋은 프로그래밍 습관이 아닙니다. 이는 애플리케이션 성능에 부정적인 영향을 미칩니다. 다음 코드 조각을 살펴보겠습니다.
목록6: 기존 변수 복사
$desc = strip_tags($_POST['PHP description']); echo $desc;
위 코드는 변수를 불필요하게 로컬 변수로 복사한 예입니다. 이는 좋은 습관이 아닙니다. 다음 코드를 사용하여 동일한 효과를 얻을 수 있습니다.
echo strip_tags($_POST['PHP description']);
11, 프레임 활용
프레임워크는 광범위한 연구를 거쳐 개발되었으므로 문제가 덜한 것으로 입증되었습니다. 검증된 솔루션을 제공하기 때문에 개발이 더 쉬워집니다. PHP에는 다양한 프레임워크가 있습니다. 개발 중에 이러한 이점을 활용해야 합니다. 널리 채택되는 프레임워크 중 하나는 MVC 또는 Model View Controller입니다.
결론:
프로그래밍 표준은 코드를 보다 효율적으로 개발하도록 안내합니다.
애플리케이션 성능을 향상하려면 프로그래밍 방식을 따르세요.
다른 프로그래밍 언어와 마찬가지로 고품질 코드를 생성하려면 PHP도 이 좋은 프로그래밍 방식을 따라야 합니다.