2월, 2010의 게시물 표시

낡은 방식으로 PHP를 사용하고 있는 조직의 개발환경 개선 방안 구상

다음 글은 현재 속한 팀에서 공감과 개선을 이끌어 내고자 공유했던 내용이다. 비슷한 상황을 가지고 있는 사람에게 참고가 될 수 있을까해서 포스팅 해본다. 돌아보기 이상적인 개발자의 일상 출근 후 코드를 SVN으로부터 업데이트 받는다. CI 의 리포트 확인. CI 리포트에 오류가 있을 (빌드가 깨져있을) 경우 수정할 수 있다면 직접 수정후 테스트 한 뒤 commit 담당자가 수정하도록 ticket 발급 Stand up meeting 을 가지고 어제 일을 반성하고 할 일에 대해 구성원간 공유를 한다. Issue Tracker에 등록된 ticket이 있는 지 확인하고 처리한다. Story에 기반하여 자신이 할 일을 정의해 eclipse 의 task 목록에 등록한다. (Issue Tracker에 자동으로 등록된다.) 등록한 task 에 대한 test case 를 만든다. test case가 성공하도록 구현한다. 더 이상 task에 대한 구현 사항이 없다면 코드를 commit 한다. 구현 과정에서 특기할 만한 것이 있다면 wiki 에 공유. 오늘 할 일이 끝나면 퇴근. 조엘 테스트    1. Source Control(소스 컨트롤)을 사용하십니까? 예    2. 한번에 빌드를 만들어낼 수 있습니까? 아니오    3. daily build(일별 빌드)를 만드십니까? 아니오    4. 버그 데이타베이스를 가지고 있습니까? 아니오    5. 새로운 코드를 작성하기 전에 버그들을 잡습니까? 아니오    6. up-to-date(최신) 스케줄을 가지고 있습니까? 아니오    7. spec(설계서)를 가지고 있습니까? 아니오    8. 프로그래머들이 조용한 작업환경을 가지고 있습니까? 아니오    9. 돈이 허락하는 한도내의 최고의 툴들을...

CodeIgniter 살펴보기

지금 근무중인 회사에서 Old type PHP 를 사용하고 있어, 이를 개선하기 위해 PHP MVC Framework 도입을 고려하던 중 CodeIgniter 가 긍정적이라는 팀원들의 의견을 듣고 살펴보고 사내 위키에 게시하였다. 다음 내용이 그것이다. --------------- 이 페이지는 본인이 CodeIgniter 를 처음 사용해보고 작성한 것으로, 이해부족으로 사실과 다른 내용이 있을 수 있다. 장점 PHP4에서 사용가능하다. 오픈 소스이다. MVC의 기본 개념에 충실한 것 처럼 보인다. 비교적 단순하고 읽기 쉬운 소스 코드 구조. PHP 모듈이나 다른 라이브러리에 대한 의존성이 적다. 충실한 공식 한글 자료. 단점 PHP4 호환을 위해 PHP5의 좋은 특징을 충분히 수용하지 못했다. 객체 참조 OOP를 위한 Access Modifiers (public/private/protected) Test 를 지원하기 위한 interface 사용의 부재 가장 아쉬운 것은 예외 처리. PHP 의 원시적 오류 처리는 골치 아프다. 자유롭지 못한 라이센스. 소스코드 수정과 배포에 제약이 따른다. (배포버전의 license.txt 중) Any files that have been modified must carry notices stating the nature of the change and the names of those who changed them. Products derived from the Software must include an acknowledgment that they are derived from CodeIgniter in their documentation and/or other materials provided with the distribution. Persistence La...