본문 바로가기

STUDY REVIEW/클린코드 독서스터디

(7)
Clean Code - 4주차 이번 주 목차 17장 냄새와 휴리스 부록A 동시성Ⅱ 부록B org.jfree.date.SerialDate 부록C 휴리스틱의 교차 참조 목록 17장 냄새와 휴리스틱 - 주석 C1: 부적절한 정보 : 일반적으로 작성자, 최종 수정일, SPR번호 만 주석으로 넣는다. C2: 쓸모없는 주석 : 오래된 주석, 엉뚱한 주석, 잘못된 주석은 아예 달지 말자. C3: 중복된 주석 : 구구절절 설명하는 주석 달지 말자. C4: 성의 없는 주석 : 간결하고 명료하게 주석 달자. C5: 주석 처리된 코드 : 주석으로 처리된 코드는 즉각 삭제하자! - 환경 E1: 여러 단계로 빌드해야 한다 : 한 명령으로 전체를 체크아웃해서 한 명령으로 빌드할 수 있어야 한다. E2: 여러 단계로 테스트해야 한다 : 모든 단위 테스트는 한 ..
Clean Code - (3 - 2)주차 이번 주 목차 13장 동시성 14장 점진적인 개선 15장 JUnit 들여다보기 16장 SerialDate 리팩터링 13장 동시성 - 동시성이 필요한 이유? 동시성은 결합을 없애는 전략이다. 즉 무엇과 언제를 분리한다. 다음은 동시성과 관련한 일반적인 미신과 오해다. 1. 동시성은 항상 성능을 높여준다. (때로 성능을 높여준다. 대기 시간이 아주 길어 여러 스레드가 프로세서를 공유할 수 있거나, 여러 프로세서가 동시에 처리할 독립적인 계산이 충분히 많은 경우에만 성능이 높아진다.) 2. 동시성을 구현해도 설계는 변하지 않는다. (단일 스레드 시스템과 다중 스레드 시스템은 설계가 다르다.) 3. 웹 또는 EJB 컨테이너 등을 사용하면 동시성을 이해할 필요가 없다. (실제로는 컨테이너가 어떻게 동작하는지, 동..
Clean Code - 3주차 이번 주 목차 9장 단위 테스트 10장 클래스 11장 시스템 12장 창발성 9장 단위 테스트 - TDD 법칙 세 가지 첫째 법칙 : 실패하는 단위 테스트를 작성할 때까지 실제 코드를 작성하지 않는다. 둘째 법칙 : 컴파일은 실패하지 않으면서 실행이 실패하는 정도로만 단위 테스트를 작성한다. 셋째 법칙 : 현재 실패하는 테스트를 통과할 정도로만 실제 코드를 작성한다. - Clean Code 155 Page 인용 - 실제 코드와 맞먹을 정도로 방대한 테스트 코드는 심각한 관리 문제를 유발하기도 한다. 적당한 테스트 코드를 작성하자. 무리하지 말자. - 깨끗한 테스트 코드 유지하기 코드에 유연성, 유지보수성, 재사용성을 제공하는 버팀목이 바로 단위 테스트다. 단위 테스트란 테스트 코드이다? 유닛 테스트 (un..
Clean Code - 2주차 스터디 후기 5장 형식 맞추기 @RequestMapping(value = "/rowDataMngr/rowDataMngrIndex") public ModelAndView getRowData(HttpServletRequest request, HttpServletResponse response) throws Exception{ ModelAndView model = new ModelAndView("/view/rowDataDownMngr/row_data_mngr_index.jsp"); HashMap inMap = new HashMap(); try { bindForMap(request, inMap); Map companyInfoMap = rowDataMngrService.getCompanyList(inMap); model.ad..
Clean Code - 2주차 이번 주 목차 5장 형식 맞추기 6장 객체와 자료 구조 7장 오류처리 8장 경계 5장 형식 맞추기 - 형식을 맞추는 목적 코드 형식은 중요하다! 오랜 시간이 지나 원래 코드의 흔적을 더 이상 찾아보기 어려울 정도로 코드가 바뀌어도 맨 처음 잡아놓은 구현 스타일과 가독성 수준은 유지보수 용이성과 확장성에 계속 영향을 미친다. 원래 코드는 사라질지라도 개발자의 스타일과 규율은 사라지지 않는다. - Clean Code 96 Page 인용 - 그래서 우리 회사의 코드는 10년 전의 스타일을 그대로 유지하고 있다. 처음부터 스타일과 규율을 잘 잡는 코드습관을 가지도록 하자. - 적절한 행 길이를 유지하라 신문 기사처럼 작성하라. 이름은 간단하면서도 설명이 가능하게 짓는다. 이름만 보고도 올바른 모듈을 살펴보고 있..
Clean Code - 1주차 스터디 후기 깨끗한 코드 보이스카우트 규칙 : 후임들을 위한 코드를 작성하자. 의미있는 이름 검색하기 쉬운 이름을 사용하라 String Name -> studyName int Age -> dogsAge String Memo -> refundMemo 재귀 함수 속 의미 없는 (int i= 0)들 의미 있게 작명하기 - 뜬금없는 if 문 속 조건 등장으로 코드를 읽고 있는 상대를 미궁에 빠뜨리지 말자 ex( if(i == 1) ) 함수 함수를 작게만드는 이유 - 1. 오류 발견이 쉬움 - 2. 테스트 용이 - 3. 유지보수 시 코드 변경 및 수정 편이 주석 앞으로 쓸 일 없는 코드는 주석 하지 말고 거침없이 삭제하자
Clean Code - 1주차 이번 주 목차 1장 깨끗한 코드 2장 의미 있는 이름 3장 함수 4장 주석 책 선정 이유 - 좋은 코드란 무엇일까? 왜 다들 클린 코드를 추천할까? -> 읽어봐야겠다. 깨끗한 코드란 무엇인가? 위의 목차를 읽고 깨끗한 코드가 무엇인지 요약을 한다면 나는 "읽기 쉬운 코드"라고 요약하고 싶다. 책의 나온 내용에 덧붙이면 한 번에 이해 가능한 변수 이름, 복잡하지 않은 단순한 함수, 잘 정리된 클래스이다. 나는 그동안 변수 이름을 잘 짓지도 못했고, 단순한 길도 돌고 돌아간 적도 많았고, 반복한 적도 있었다. 하지만 이제는 로버트 c.마틴(클린 코드의 저자)에게 많은 잔소리를 들었기에 읽기 쉬운 코드로 작성하게 노력할 것이다. 읽다 보니 아래와 같은 구절이 있었다. 주변 코드가 읽기 쉬우면 새 코드를 짜기도..