MetaBBS 코딩 표준
블럭
- 템플릿 파일이 아닐 경우에는 반드시 스크립트를 <?php로 시작한다.
- 템플릿 파일에서는 <?로 시작하는 것도 허용한다.
- 블록 괄호는 줄바꿈을 하지 않고 한 줄에 쓴다.
class ClassName extends ParentClass { // ... } function func($args) { return; } if (condition) { statement; }
띄어쓰기
- 함수를 실행할 때는 함수 이름과 괄호를 붙여서 쓴다.
do_something (); // X do_something(); // O
- 모든 키워드 (function, if, for, foreach, while, ...) 다음에는 한 칸을 띄운다.
- 증감 연산자를 제외한 모든 연산자 (+, -, *, /, ...)는 앞뒤를 한 칸씩 띄운다. 단, 증감 연산자(++, --)는 붙여서 쓴다.
들여쓰기
- 들여쓰기는 모두 하드 탭으로 한다.
include, require
- 라이브러리 파일의 경우 require 또는 require_once를 사용한다.
- 템플릿이나 컨트롤러를 포함할 때는 include를 사용한다.
이름
- 모든 이름은 그 역할을 쉽게 알 수 있어야 한다.
- 모든 함수와 변수 이름은 do_something 형식으로 한다. (예외: SiteManager?)
- 모든 클래스 이름은 SomeClass? 형식으로 한다.
코딩 전략
- OnceAndOnlyOnce?: 동일한 코드가 세 번 나오면 바로 ExtractClass? 또는 ExtractMethod? 한다.
- DoTheSimplestThingThatCouldPossiblyWork?: 제대로 돌아가는 가장 간단한 코드를 작성한다.
