-
클래스다이어그램 - 의존성 그려보기프로젝트/잡스캐너 2022. 9. 8. 22:37
"채용공고 수집 관리", 잡스캐너 프로젝트에서 우선 카카오 소셜 로그인기능을 구현했다. 카카오 엑세스 토큰을 받고 회원가입이 되어 있지 않다면 회원가입을 먼저 진행한다. 그리고 JWT 토큰을 발급하고 Session에 저장하는 로직이다.
클래스 구조를 먼저 설계하고 기능을 구현했어야 했는데, 우선 기능을 구현하고 나서 보니까 클래스 간의 의존성이 정리되어 있지 않았다. 그리고 추후 구글 소셜 로그인이나 깃허브 소셜 로그인 등의 확장에 닫혀있었다.
개발자라면 기능 구현보다 먼저 설계를 진행하고, 변경에는 닫혀있고 확장에는 열려있는 개발하는 방법을 꾸준히 연습해나가야된다고 생각한다. 그래서 카카오 소셜 로그인 기능까지 개발하고 의존성을 그려보고 리팩토링 했다.카카오 소셜 로그인 기능 리팩토링 전

카카오 소셜 로그인 기능 리팩토링 후
항상 개발하기 전에 서로 의존성을 최소로하고 변경에는 닫혀있고 확장에는 열려있는 객체지향적인 설계를 고민하고 개발해야 된다는 기본적인 개발 소양을 이론이 아니라 경험으로 깨달을 수 있었다.'프로젝트 > 잡스캐너' 카테고리의 다른 글
Optional 활용하기, 람다식에서 지역변수 변경하기 (0) 2022.09.08 불변 객체 생성 방법 - 정적 팩토리 메서드와 빌더 패턴 (0) 2022.09.08 자바 16 레코드 클래스 (0) 2022.09.08 properties 불변 객체로 주입하기 (0) 2022.09.08 채용 공고 수집하기 (0) 2022.08.28