분류 전체보기(619)
-
23년 03월 27일, 일일 회고
Fact (사실: 무슨 일이 있었나?) 자바 공부 - 체스 미션 2.5, 3, 4단계를 수행했다. 개인 성장 - 데드라인이 있을 때 우선순위를 따지는 연습을 했다. 커뮤니티 - 리오, 스플릿, 주드, 에밀과 회식을 했다. 이후에는 oo 데일리 미팅 조원들과 함께 술자리를 가졌다. - 글쓰기 리뷰를 남겼다. Feeling (느낌: 무슨 느낌이 들었나?) - 시간 내에 해야하는 일이 있을 때 우선순위를 따져가며 구현해가는 연습을 했다. 아무래도 시간이 모자르다보니 중요한 것이라 판단되는 것부터 먼저 했는데 나중에 데드라인이 빠듯할 때 어떤 것부터 해야하는지 연습하는 시간이라 생각했다. - 오전 7시 반에 자서 많이 피곤할 줄 알았는데 그래도 꽤나 많은 것을 했고, 회식도 열한시 반까지 했다. 다음 날 일정을..
2023.03.28 -
23년 03월 24일, 일일 회고
Fact (사실: 무슨 일이 있었나?) 자바 공부 - 체스 미션 피드백 강의를 수강했다. - 이펙티브 자바 스터디를 들었다. 개인 성장 - x 커뮤니티 - 여자친구와 저녁을 먹고 석촌 호수를 산책했다. - mdop 이전 악장과 저녁에 치맥을 했다. - 글쓰기 리뷰를 했다. Feeling (느낌: 무슨 느낌이 들었나?) - 여자친구와 함께 식사를 했는데, 사소한 갈등이 있었다. 나는 체력이 없으면 조금 지치는 타입인 걸 다시 한번 더 느꼈다. 물론 오늘은 의사소통과 관련해 갈등이 있었는데, 평소였으면 금방 풀었을 것을 조금 길게 끌고 갔었다. - 사실 직전 악장은 아니고, 그 전과 아주 예전 악장이었는데 간만에 만나서 이야기를 나눴었다. 남자친구도 내가 연결해주려고 무척이나 애썼는데, 잘 연애하고 있는 것..
2023.03.24 -
23년 03월 23일, 일일 회고
Fact (사실: 무슨 일이 있었나?) 자바 공부 - '말랑'이 작성한 가변인자와 힙오염에 대해 공부했다. - '로지'가 작성한 VO와 불변에 대해 공부했다. - checked exception과 unchecked exception에 대해 공부했다. - null의 단점에 대해 공부했다. - 모던 자바 2장을 공부했다. (동작 파라미터화) 개인 성장 - 플래너를 작성했다. - 체스 미션을 진행하면서 피드백을 반영했다. - Piece를 상속받아서 몇몇 기능을 동작할 때 예외를 던지는 Empty 대신 null로 변경해 구현해보았는데, null의 단점이 너무 뚜렷하게 보여서 revert 후 다시 진행했다. 커뮤니티 - '로지'와 점심 식사를 했다. - 테코톡을 봤다. - '에코'와 저녁 식사를 했다. Feeli..
2023.03.23 -
23년 03월 22일, 일일 회고
Fact (사실: 무슨 일이 있었나?) 자바 공부 - 이펙티브 자바 스터디 아이템 51을 정리하고 '꾸글쓰', '싱글톤 스터디', '파워블로거' 모임에 글을 올렸다. - 월요일에 진행했던 스터디 내용에 대해 요약하고 글을 남겼다. - 모던 자바인 액션 1장을 읽었다.- 프롤로그/꾸글쓰에서 스트림의 sum()과 reduce(0, Long:sum)의 차이와 stream의 foreach/함수형 프로그래밍에 대해 공부했다. - 커맨드 패턴을 새롭게 공부했다. 개인 성장 - 간만에 플래너를 작성했다. - '클리퍼 서비스'의 환경 설정 및 db에 더미 데이터를 넣었다. 커뮤니티 - 우연히 4기와의 수다타임에서 훈련소 동기인 ooo을 만났다. - 파워블로거 모임에 가입했다. 이 모임은 평일마다 하루에 하나씩 글을 쓰..
2023.03.22 -
아이템 51. 메서드 시그니처를 신중히 설계하라
아이템 51. 메서드 시그니처를 신중히 설계하라 개별 아이템으로 두기 애매한 API 설계 요령들을 모아놓은 챕터이다. 메서드 이름을 신중히 짓자. 메서드 이름은 항상 표준 명명 규칙(아이템 68)을 따라야 한다. 애매한 경우에는 자바 라이브러리의 API 가이드를 참조하는 것이 좋다. 다만 긴 이름은 피하는 것이 좋다. 편의 메서드를 너무 많이 만들지 말자. 모든 메서드는 각각 자신의 소임을 다해야한다. 메서드가 너무 많은 클래스는 문서화하고, 사용하고 테스트하고, 유지보수 하는 일에 어려움을 겪을 수 밖에 없다. 자신의 각 기능을 완벽히 수행하는 메서드로 제공을 해야하며, 편의 메서드는 확신이 서지 않는 이상 만들지 않는 것이 좋다. 매개변수 목록은 짧게 유지하자. 최대 4개까지만 전달받는 것을 추천한다..
2023.03.22 -
단일 책임 원칙, 하나의 객체는 하나의 책임을 갖는다.
SOLID 원칙 중 'S' 하나의 객체가 하나의 책임만 져야한다! → 클래스를 단 한 가지의 목표만 가지고 작성해야 한다는 것을 의미한다. 애플리케이션 전반에서 높은 유지보수성과 가시성 제어 기능을 유지하는 원칙이다. 만약 클래스 하나가 여러 개의 목표를 가지고 있는 경우에는? 단일 책임 원칙을 따르지 않는 경우 직사각형 면적을 구하고 단위를 변환하는 문제를 다음과 같은 클래스에서 구현할 수 있다. package SingleResponsePrinciple; public class RectangleAreaCalculator { private static final double INCH_TERM = 0.0254d; private final int width; private final int height; p..
2023.03.14