기본 콘텐츠로 건너뛰기

사소하고 재미있는 9가지 프로그래밍 관례



지난 달 IT World Korea에 "‘다른 개발자는 어떻게 쓸까?’ 사소하고 재미있는 9가지 프로그래밍 관례"라는 흥미로운 내용의 기사가 실렸었습니다. 제목처럼 개발자들이 개발시 지키는 개발 규칙들에 대한 이야기인데 시간이 좀 지난 기사이지만 기사에 실렸던 9가지 관례와 그 관례를 저는 어떻게 하고 있는지에 대해 써보도록 하겠습니다.


1. 탭보다는 스페이스 : 들여쓰기 할때 스페이스 84%, 탭 16%

저도 스페이스를 사용합니다. 시스템에 따라 탭은 탭 간격이 다를 수 있기 때문입니다. 스페이스 4칸을 탭 하나로 사용하고요.


2. 라인 최대 길이는 80자 : 80자 92%, 120자 6%, 150자 2%

저도 클래식하게 80자를 사용합니다. 80자라는 길이는 초기 모니터의 가로 글자 수가 80자였기 때문에 시작된 관례죠.


3. 빈 괄호는 생략 : 함수 또는 메소드를 정의/호출할 때 빈 괄호 생략 98%, 포함 2%

저는 항상 괄호는 사용합니다.


4. 인수 정의 앞뒤로 스페이스 두지 않기 : 함수 선언에서 인수 앞뒤로 스페이스를 넣지 않는다 94%, 넣는다 6%

전 스페이스가 있는 것이 보기 좋지 않아 스페이스 넣지 않습니다.


5. 처음이 아닌 마지막에 쉼표 : 여러 라인에 걸쳐 일련의 값을 정의할 때 마지막에 쉼표 92%, 처음에 쉼표 8%

역시 마지막. 처음에 있으면 먼가 어색...


6. 스네이크_케이스(snake_case)보다 캐멀케이스(camelCase) 규칙을 선호 : 네이밍 규칙으로 캐멀케이스(camelCase) 87%, 스네이크_케이스(snake_case) 11%, 파스칼케이스(PascalCase) 2%

캐멀케이스


7. 중괄호만으로 구성되는 라인은 없음 : 클래스, 메소드 또는 제어 구조와 같은 코드 블록을 작성할 때 중괄호를 선언문과 같은 라인에 70%, 새로운 라인에 30%

이건 언어와 경우에 따라 다르게 사용하고 있습니다. Java의 경우는 모두 같은 라인에 사용하는데 PHP는 Zend Framework에서 권장하는 방식을 사용하고 있어 클래스/메소드는 다른 라인에, 제어 구조의 경우는 같은 라인에 사용하고 있습니다. 요즘은 PHP도 통일을 할까 생각 중입니다.


8. 큰 따옴표보다는 작은 따옴표 : 문자열을 사용하는 경우 작은 따옴표 57%, 큰 따옴표 43%

이것도 언어에 따라 다르게 사용합니다. Java나 Javascript는 큰 따옴표를 사용하고 PHP는 작은 따옴표를 기본으로 사용합니다. PHP의 경우는 언어 특성에 따른 것인데 PHP는 큰 따옴표로 감싼 문자열은 변수를 값으로 치환하는 파싱을 하기 때문에 불필요한 작업을 없애기 위해 작은 따옴표를 기본으로 사용하고 있습니다.


9. 상수 이름은 모두 대문자로 : 모두 대문자 53%, 모두 대문자는 아님 47%

역시 클래식하게 모두 대문자. 상수는 상수답게?


===


사진 포트폴리오 - City, City People (http://photo.just4fun.kr/)

사진 매거진 앱 - Viewzin (http://viewzin.just4fun.kr/)



댓글

이 블로그의 인기 게시물

PHP에서 보안 문제를 해결하는 법

한빛미디어 홈페이지에 'PHP에서 보안 문제를 해결하는 법' 이라는 기사가 있습니다. PHP로 개발시 주의해야하는 3가지 보안 문제와 이를 막는 방법에 대한 외국 기사를 번역한 기사인데 관련 사항을 잘모르시는 분들에게 도움이 될 것 같아 기사에 소개된 내용들에 제 생각을 추가하여 정리해보겠습니다.


플랜트로닉스 백비트 고 3 : 아쉬운 블루투스 연결 안정성

블루투스 이어폰을 새로 구입하려고 이것저것 알아보다가 기존에 사용하던 플랜트로닉스의 ‘백비트 고 2’에 만족을 하였기에 그 후속작인 ‘백비트 고 3’를 구입하였습니다. 구입 후 일주일정도 사용한 지금 기대보다는 만족도가 떨어지는 제품이라는 것이 제 결론인데 그 이유를 적어보겠습니다.

Android Studio 3.0에서 메소드 파라미터 힌트 기능 끄기

Android Studio를 3.0으로 업데이트하고 살펴보고 있었는데 에디터가 뭔가 지저분해(?) 보였습니다. 소스를 자세히 보니 아래와 같이 이전 버전에서는 없었던 텍스트가 보였습니다.