DAY 2 오늘 읽은 범위: 2장. 실용주의 접근법
책에서 기억하고 싶은 내용?
- Don't repeat yourself. 반복하지 마라.
- 재사용하기 쉽게 만들어라.
- 관련 없는 것들 간에 서로 영향이 없도록 하라.
컴포넌트 간 독립적인 직교적인 시스템을 만들어야 한다.
AOP으로 로깅되고 있는 코드와 직교적으로 로깅을 구현이 가능하다. 모든 코드에 분산적으로 동일한 로그 체킹을 하지 않고 별도의 클래스를 엮어주는 것이다. - 최종 결정이란 없다.
시스템 배치의 가변성을 고려하자. (독립형, 클라이언트-서버, n-티어 모델) - 목표물을 찾기 위해 예광탄을 써라.
우리를 요구사항으로부터 최종 시스템의 일부 측면에까지 빨리, 눈에 보이게, 반복적으로 도달하게 해줄 무언가를 찾아야 한다.
예광탄 코드는 프로토타입과 달리 전체적인 프레임워크가 남고, 이후 작업의 토대가 된다. - 프로토타입을 통해 학습하라.
- 문제 도메인에 가깝게 프로그래밍하라.
- 추정을 통해 놀람을 피하라.
무엇을 묻고 있는지를 이해 → 시스템 모델 → 컴포넌트 → 매개변수 값에 따라 답을 계산
ex) "응답시간은 시스템이 SCSI 버스와 64MB 메모리를 갖는다면 대략 3/4초가 되고, 48MB 메모리에서는 1초가 될 것입니다." - 코드와 함께 일정도 반복하며 조정하라.
오늘 읽은 소감?
이번 장을 읽으면서 기존에 했던 프로젝트에 대해 상기하는 계기가 되었다. 생각해보니 중복코드도 있었고, 유지보수에 급급한 처리방식 때문에 코드의 질을 더 높일 수 있는 시간이 부족했던 것 같다.
프로젝트를 업데이트하면서 고려해야할 부분들을 아래와 같이 정리해봤다. 그리고 새 프로젝트에는 더 나은 코드 작성을 할 수 있도록 신경써야겠다.
- 중복코드는 없는가
- 직교적인 시스템을 구축했는지와 레이어 구성이 되어있는지
- 단위 테스트가 구현되었는지
버그 수정과 태그를 통한 월단위 레포트를 받는 개념이 나왔는데 이 부분은 재밌을 것도 같고, 이후에 해보고 싶다.
궁금한 점이나 잘 이해되지 않는 내용
- RMI, CORBA
자바 코드가 로컬 서버와 리모트 클라이언트 머신에 분산되어 실행되어야 하는 프로젝트에서 클래스를 분산시키는 방법. RMI와 CORBA에 대해 다시 알아봐야겠다. - 싱글톤패턴
싱글톤 패턴에 대해서 배운 적은 있지만 어떤 방식으로 사용하는 것이 효과적인지에 대해서 깊게 생각해 보지 못한 부분인 것 같다. (85page, Use your singletons wisely) - 12. 도메인언어 부분이 잘 이해되지 않는 내용이어서 다시 읽어봐야겠다.
- 추가적으로 정리한 내용 (도전해 볼 것, 연습문제)
'CS' 카테고리의 다른 글
[실용주의 프로그래머] 3장. 기본적인 도구 (0) | 2022.03.22 |
---|---|
[실용주의 프로그래머] Mission 1 (0) | 2022.03.22 |
[실용주의 프로그래머] 1장. 실용주의 철학 (0) | 2022.03.16 |
[실용주의 프로그래머] 실용주의 프로그래머 챌린지 시작! (0) | 2022.03.15 |
쿠키 Cookie와 세션 Session (0) | 2022.03.03 |
댓글
최근에 올라온 글
TAG
- 배포
- 개발도서
- git연동
- 정보처리기사 필기
- AWS
- IT 5분 잡학사전
- 기술블로그
- java
- EC2
- putty
- gradle
- spring
- 노마드코더
- gradle build
- SQLD
- jdbc
- 독서후기
- 실용주의프로그래머
- 북클럽
- 노개북
- filezila
- 오늘의코딩
- JIRA
- LifecycleException
- 호스팅영역
- ubuntu
- intellij
- 정보처리기사
- 정보처리기사 실기
- 웹페이지만들기
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함