본문 바로가기
반응형

전체 글145

[회고] 2023년 1분기 상당히 늦었지만 2023년 1분기 회고를 작성하였습니다. 개인적으로는 이제 곧 만나게될 2세를 준비하였고 회사에서는 프로젝트 업무로 인하여 상당히 바쁜 시간을 보냈습니다. 2022년에는 매 분기마다 모두 회고를 작성할 수 있었습니다. 각 회고글은 다음을 통해서 확인할 수 있습니다. 1분기 2분기 3분기 4분기 2023년에 1분기 회고는 기존 회고와 동일하게 KPT 를 활용해서 진행해보았습니다. 우아한 형제들 - 기술블로그 : 팀 문화의 탄생 작년 2023년 1분기를 회고하면서 2023년 2분기 목표를 다음과 같이 설정하였습니다. 목표 다음 분기전까지 목표는 다음과 같습니다. 연속성으로 진행할 수 있는 토이프로젝트 주제 선정 스터디를 통해서 정리한 내용은 블로그로 정리하자 프로젝트 체크 리스트를 만들어 놓.. 2023. 6. 4.
[UnitTesting] 2장 단위테스트란 무엇인가 이 내용은 단위 테스트 생산성과 품질을 위한 단위 테스트 원칙과 패턴 를 읽으면서 정리한 내용을 포함하고 있습니다. 2장에서는 단위테스트에 접근하는 방법에 대해서 두 가지의 뚜렷한 견해에 대해서 소개하고 있습니다. 자세한 내용을 알아보도록 하겠습니다. 2장 단위 테스트란 무엇인가 2.1 ~ 2.4 목차는 다음과 같습니다. 단위테스트의 정의 단위 테스트의 런던파와 고전파 의존성을 다루는법 고전파와 런던파의 비교 두 분파의 통합 테스트 정리 참고 단위테스트의 정의 단위테스트의 3가지 주요 속성 작은 코드 조각을 검증하고 빠르게 수행하며 격리된 방식으로 처리하는 자동화된 테스트 단위테스트 정의 중 세번째 코드 조각을 격리된 방식으로 검증한다 에 대해서 단위테스트의 고전파와 런던파로 분리한다. 그럼, 코드 조각.. 2023. 5. 21.
[엘레강트 오브젝트] 4.4 RAII를 사용하세요 이 내용은 엘레강트 오브젝트 를 읽으면서 정리한 내용을 포함하고 있습니다. RAIL Java의 RAIL 정리 RAIL 리소스 획득은 초기화 C++에 존재하는 매우 강력한 기법 가비지 컬렉션을 이용해서 객체를 제거하는 Java에서는 사라진 개념 핵심은 객체가 살아있는 동안에만 리소스를 확보하는 것이다. Java의 RAIL 가비지 컬렉션 객체가 더 이상 사용되지 않을 때 객체를 제거하는 작업을 백그라운드로 진행 기술적으로 Java에서는 main() 메서드의 실행이 종료된 이후에도 객체 t가 계속 살아 있을 수 있다. main() 메서드가 종료된 후에는 더 이상 객체가 필요하지 않지만, Java는 객체를 즉시 파괴하지 않는다. 대신 객체가 오랜 시간 메소리에 머무를 수 있는데, 이런 객체를 가비지 라고 부른다.. 2023. 4. 9.
[엘레강트 오브젝트] 4.3 final이거나 abstract이거나 이 내용은 엘레강트 오브젝트 를 읽으면서 정리한 내용을 포함하고 있습니다. 상속의 문제점 final이나 abstract 정리 상속의 문제점 상속의 가장 큰 문제는 객체들의 관계를 너무 복잡하게 만든다는 것이다. class Document { public int length() { return this.content().length(); } public byte[] content() { // 문서의 내용을 바이트 배열로 로드한다. } }class EncryptedDocument extends Document { @Override public byte[] content() { // 문서를 로드해서, 즉시 복호화하고, 복호화한 내용을 반환한다. } } EncryptedDocument 클래스의 content().. 2023. 4. 9.
[엘레강트 오브젝트] 4.2 체크 예외(checked exception)만 던지세요 이 내용은 엘레강트 오브젝트 를 읽으면서 정리한 내용을 포함하고 있습니다. 체크 예외 언체크 예외 꼭 필요한 경우가 아니라면 예외를 잡지 마세요 항상 예외를 체이닝하세요 단 한번만 복구하세요 관점-지향 프로그래밍을 사용하세요 하나의 예외 타입만으로도 충분합니다 정리 저자 주장 언체크 예외를 사용하는 것은 실수이며, 모든 예외는 체크 예외여야 합니다. 또한 다양한 예외 타입을 만드는 것도 좋지 않은 생각입니다. 체크 예외 메서드의 시그니처의 throws IOException 을 사용한 예시는 다음과 같다. public byte[] content(File file) throws IOException { byte[] byte = new byte[1000]; new FileInputStream(file).rea.. 2023. 4. 9.
[엘레강트 오브젝트] 4.1 절대 NULL을 반환하지 마세요 이 내용은 엘레강트 오브젝트 를 읽으면서 정리한 내용을 포함하고 있습니다. 객체의 신뢰 빠르게 실패하기 vs. 안전하게 실패하기 NULL의 대안 정리 객체의 신뢰 객체가 NULL을 반환한다면, 해당 객체를 신뢰할 수 없게 된다. 반환된 값이 객체인지부터 확인해야 하기 때문에, 객체에게 작업을 요청한 후 안심하고 결과에 의지할 수 없다. String title = x.title(); if (title == null) { print("Cant't print; it's not a title."); return ; } print(title.length()); 객체라는 사상에는 우리가 신뢰하는 엔티티라는 개념이 담겨져 있다. 객체는 자신만의 생명주기, 자신만의 행동, 자신만의 상태를 가지는 살아있는.. 2023. 4. 9.
반응형