협업을 하는 사람들은 코드 리뷰만 하더라도 서로 자신들의 규칙이라는 코딩이 난무합니다.
어떤부분은 가독성이 떨어지고 또 어떤 부분은 왜 이렇게 짰나 싶은..
그러다보니 각 언어들도 코드 컨벤션을 선언하고 그에 맞추어 작업을 하고 있습니다.
php도 예외는 아니지요.
다행히 꽤 오래전부터 psr 이라는 코드 컨벤션을 제공하고 있었습니다.
PSR-0, PSR-1, PSR-2, PSR-3 PSR-4 로 정의되어 공유하고 있지요.
적어도 PSR-1 과 PSR-2 만 지켜도 협업에서는 무리 없을 뿐 아니라
홀로 개발하시면서도 코드의 가독성이 증대되고 여러모로 좋습니다.
(혼자 개발하신다고 하더라도 코드 리뷰 안하시진 않으니까요)
관련 자료는 링크로 대체 합니다.
https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-1-basic-coding-standard.md
https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-2-coding-style-guide.md
뭐 링크에도 나오긴 합니다만.. intent 이슈가 제일 많죠..
그래서 에디터 마다 붙여넣기하면 코드가 이리갔다 저리갔다.
기본적으로 tab 보다는 space 로 바꿔 사용하고 4칸 들여쓰기를 주로 사용합니다.
(Code MUST use 4 spaces for indenting, not tabs.)
뭐 자신만의 고집과 노하우로 인하여 맞추기 어렵다는 분들께 강요는 사실 어렵습니다만..
코딩 스타일까지 가르치기 보다는 획일화 된 세계적 추세에 맞추는게 방법은 아닐까 조심스럽게 의견 제시 해봅니다.
댓글 7개
yml 과 그 파생언어, drupal 은 2space 를 사용합니다.
phalcon 은 4space 를 사용합니다.
codeigniter 은 tab 을 사용합니다.
CI의 Coding Style Guide #whitespace 항목을 참고해보세요.
http://www.codeigniter.com/userguide2/general/styleguide.html#whitespace
Use tabs for whitespace in your code, not spaces. This may seem like a small thing, but ...
게시글 목록
| 번호 | 제목 |
|---|---|
| 27980 | |
| 7164 | |
| 31729 | |
| 31726 | |
| 31725 | |
| 31720 | |
| 31711 | |
| 7159 | |
| 27974 | |
| 19734 | |
| 19730 | |
| 19729 |
PHP
[알고리즘] 배열 역순
|
| 27969 | |
| 7142 | |
| 19728 |
jQuery
remove()를 이용하여 엘리먼트 삭제하기
|
| 19725 | |
| 7130 | |
| 19722 |
jQuery
동일 엘리먼트 순번 알아내기
2
|
| 19719 | |
| 7124 | |
| 19718 | |
| 19717 | |
| 19716 |
jQuery
position() 메서드 객체에 대한 좌표값
|
| 19715 | |
| 7122 | |
| 30959 | |
| 19714 | |
| 31710 |
jQuery Mobile
jQuery Mobile 강좌 19. Select Menus
|
| 31709 |
jQuery Mobile
jQuery Mobile 강좌 18. Text Inputs
|
| 19713 | |
| 7117 | |
| 19712 | |
| 7111 | |
| 31708 |
jQuery Mobile
jQuery Mobile 강좌 17. Form Basic
|
| 31707 |
jQuery Mobile
jQuery Mobile 강좌 16. Filters
|
| 19710 | |
| 31706 |
jQuery Mobile
jQuery Mobile 강좌 15. List Content
|
| 31705 |
jQuery Mobile
jQuery Mobile 강좌 14. List Views
|
| 31704 |
jQuery Mobile
jQuery Mobile 강좌 13. Layout Grids
|
| 19709 | |
| 19707 | |
| 31703 |
jQuery Mobile
jQuery Mobile 강좌 12. Tables
|
| 19706 |
jQuery
class가 있는지 없는지 체크하기
|
| 31702 |
jQuery Mobile
jQuery Mobile 강좌 11. Collapsibles
|
| 19705 |
PHP
배열에서 중복 값 없애기
|
| 31701 |
jQuery Mobile
jQuery Mobile 강좌 10. Panels
|
| 19704 | |
| 31700 |
jQuery Mobile
jQuery Mobile 강좌 9. Navigation Bars
|
| 31699 |
jQuery Mobile
jQuery Mobile 강좌 8. Toolbars
|
| 31698 |
jQuery Mobile
jQuery Mobile 강좌 7. Popups
|
| 7107 | |
| 19703 |
JavaScript
str_pad 자릿수만큼 특정문자로 채우기
|
| 31697 |
jQuery Mobile
jQuery Mobile 강좌 6. Icons
|
| 31696 |
jQuery Mobile
jQuery Mobile 강좌 5. Buttons
|
| 19702 | |
| 19701 | |
| 31695 |
jQuery Mobile
jQuery Mobile 강좌 4. Transitions
|
| 27965 | |
| 31694 |
jQuery Mobile
jQuery Mobile 강좌 3. Pages
|
| 19700 | |
| 31693 |
jQuery Mobile
jQuery Mobile 강좌 2. Install
|
| 19699 | |
| 31692 |
jQuery Mobile
jQuery Mobile 강좌 1. Introduction
|
| 31691 |
jQuery Mobile
jQuery Mobile 강좌 0.home
|
| 19698 | |
| 19697 | |
| 19696 |
jQuery
마우스 오버 위치에 따라 툴팁 생성 및 자동 이동
|
| 19694 | |
| 19693 |
jQuery
제이쿼리 동적으로 생성된 객체에 이벤트 생성하기
|
| 19692 | |
| 19691 | |
| 19690 |
JavaScript
shuffle 배열섞기
|
| 19689 |
jQuery
제이쿼리 모음 사이트
|
| 19688 |
PHP
1원팁] IP 대역 비교
|
| 19687 | |
| 7105 | |
| 30955 | |
| 7100 | |
| 19681 |
PHP
input 쉽게 관리하기
5
|
| 7097 | |
| 19678 |
JavaScript
서버시간을 사용한 전자시계
2
|
| 7089 | |
| 7086 | |
| 7084 | |
| 7082 | |
| 19677 | |
| 30953 | |
| 7080 | |
| 7077 | |
| 7071 | |
| 7070 | |
| 7066 | |
| 19676 |
JavaScript
구글 웹사이트 번역기를 내 사이트에 달기
|
| 19674 | |
| 27961 | |
| 7063 | |
| 7061 | |
| 19669 | |
| 7060 | |
| 20842 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기