JAVA(9)
-
일급 컬렉션
우아한 테크코스 1주차 코드리뷰에서, 일부 지원자분들이 Numbers 클래스를 만들어 기능을 구현하는 것을 보았습니다. 해당 클래스 내부에 검증과 판정과 같은 관련 메서드를 작성한 것을 확인했습니다. 이러한 구조는 코드를 이해하기 쉽고 올바른 객체지향 코드라고 생각되어, 2주차 목표 중 하나로 이러한 형식을 준수해보기로 했습니다. 최근 커뮤니티를 통해 이러한 구조가 일급 컬렉션임을 알게 되었습니다. 일급 컬렉션과 관련한 여러 글들을 읽어보며 알게된 내용들을 정리해보고자 합니다. 참고한 글은 다음과 같습니다! https://tecoble.techcourse.co.kr/post/2020-05-08-First-Class-Collection/ 일급 컬렉션을 사용하는 이유 일급 컬렉션이란? 본 글은 일급 컬렉션 ..
2023.10.31 -
우아한 테크코스 6기[BE] 1주차 피드백
1주차가 끝나고 코드 리뷰를 통해 다른 분들의 코드를 읽어보고 또 코드 리뷰를 받으며 깨달은 점들을 적어보고자 한다. 먼저는 매직 넘버이다. 매직 넘버에 대해 알고 있었고 리팩토링을 통해 매직 넘버를 없애려고도 했다. 하지만 마지막 재시작 여부와 관련해서 미처 처리하지 못한 매직 넘버가 존재했다ㅎ 또한 매직 넘버를 정의할 때 'UpperCase 언더바 표현'을 이용하는 것이 전통적인 방법이었다. 또한 이러한 상수값들을 모아서 하나의 클래스로 정리하신 분들이 많았다. 따라서 나중에 변경이 있을 때 해당 클래스의 값을 변경하는 방벙을 통해 유지 보수성을 높일 수 있었다. 두번째로는 디자인 패턴과 관련한 내용이다. 대부분의 지원자들의 MVC 디자인 패턴을 이용해 코드를 작성하셨다. spring을 공부하면서 M..
2023.10.28 -
우아한테크코스 6기[BE] 프리코스 1주차 회고
1주차 주제는 '숫자야구' 였습니다. 주제가 생각보다 간단하다고 생각해 기능 구현에 목표를 두기 보다는 올바른 구현 과정, 클린 코드들을 고려하며 코드를 작성하고자 했습니다. 따라서 구현 과정과 그 안에서의 고민들을 나누고자 합니다. 기능 요구 사항 ‘기능 요구 사항’을 먼저 작성하고 구현해 본 적이 없어, 기능들을 어떻게 나눠야 할지 오랜 시간 고민했습니다. 하지만 나눈 기능들에 따라 순서대로 개발하고 리팩토링을 진행하면서 보다 꼼꼼하고 계획적으로 진행할 수 있었습니다. 또한 더 좋은 구조나 방법이 떠올랐을 경우 ‘기능 요구 사항’을 업데이트하여 프로젝트의 방향성을 다시 세울 수 있었습니다. TDD 또한 TDD 방법론을 처음으로 도입해 보았습니다. 테스트로 제약사항을 설정하고 그것에 맞추어 코드를 작성..
2023.10.26