🌟키덕 개발일지 - 23 🎯깃허브 링크 https://github.com/Juhyung990122/Keyduck_back 🎯프로젝트 소개 기계식 키보드 안내 및 구매 정보제공 웹서비스 🎯진행내역 멤버 테스트 코드 리팩토링 🎯에러로그 및 메모 given, when ,that 절 구분 request 객체로 입력값 관리 기존 : 스트링으로 관리 이유 : 스트…
🌟키덕 개발일지 - 24 🎯깃허브 링크 https://github.com/Juhyung990122/Keyduck_back 🎯프로젝트 소개 기계식 키보드 안내 및 구매 정보제공 웹서비스 🎯진행내역 키보드 테스트코드 리팩토링 소셜로그인 중복 메소드 분리 및 아키텍처 수정 🎯에러로그 및 메모 아키텍처 변경사항 : https://lime-link-3a4.not…
🌟 Refresh Token 🎯 JWT 인증과정 회원가입 시 개발자가 설정한 정보를 토대로 액세스 토큰과 리프레시 토큰을 생성합니다. 생성한 토큰을 반환합니다. 클라이언트측에서는 액세스 토큰이 만료되지 않은 지 확인합니다. 만료되지 않았다면? 액세스 토큰을 헤더에 넣어 서버측으로 요청을 보냅니다. 만료 되었다면? 액세스 토큰과 리프레시 토큰을 서버측으로…
🌟 Web Rendering 🎯 과정 사용자가 브라우저에 url을 입력합니다. url 내의 도메인네임을 DNS에서 검색합니다. DNS서버에서 해당 도메인 네임에 해당하는 ip주소를 전달합니다. http 요청메세지에 해당 ip주소와 url정보를 넣어 생성합니다. tcp 프로토콜을 사용하여 http 요청메세지를 ip주소에 전송합니다. ip주소에 해당하는 서…
🌟키덕 개발일지 - 22 🎯깃허브 링크 https://github.com/Juhyung990122/Keyduck_back 🎯프로젝트 소개 기계식 키보드 안내 및 구매 정보제공 웹서비스 🎯진행내역 서비스 레이어 테스트코드 작성 키보드 get 형식 전환하기 🎯에러로그 및 메모 Mapstruct 전환안됨. 원인 : mapstruct는 map할때 entity의…
🌟키덕 개발일지 - 21 🎯깃허브 링크 https://github.com/Juhyung990122/Keyduck_back 🎯프로젝트 소개 기계식 키보드 안내 및 구매 정보제공 웹서비스 🎯진행내역 설정파일 환경 분리 및 배포 스웨거 재설정 🎯에러로그 및 메모 swagger에 example body 안나옴 원인 : ResponseEntity> 처럼 불분…
🌟 전략패턴 🎯 전략패턴이란? 전략패턴이란 특정한 컨텍스트단에서 로직을 분리하여 설계하는 패턴입니다 기능추가가 있을때 메인 컨텍스트를 건드리지 않고, 조건별로 달리 적용해야하는 것들에 대해서는 분리하여 개발합니다. 🎯 사용 예시 예시로 회원 등급별 할인이 다르게 적용된다고 가정해보았을때 기존코드가 아래와 같은 형식이라면 전략패턴을 사용했을때는 다음과 …
🌟 테스트 작성시 참고점 🎯 본 포스팅은 계속해서 업데이트 됩니다. 테스트를 하면서 느낀점이나 미래의 제가 참고할 점을 정리해 둘 예정입니다. 🎯 공통 설정은 클래스를 따로 관리. 테스트할때 어노테이션이나 기본 중복되는 셋업은 따로 클래스를 파서 관리하고 이를 상속받아 테스트코드를 작성하는 것이 좋습니다. 각 테스트마다 일관성이 생길뿐 아니라 코드의 …
🌟 Decorator pattern 🎯 데코레이터 패턴이란? 객체에 추가적인 요소들을 동적으로 추가하는 디자인패턴입니다. 기본 기능을 크게 정의해놓고 추가 기능은 데코레이터 클래스로 구현합니다. Component는 기본기능을 정의하고, ConcreteComponent 는 해당 기능을 구현합니다. Decorator에서는 Component의 객체를 가져옴으…
🌟 Mock 🎯 Mock이란? Mock이란 테스트더블의 일종으로 가상객체입니다. 테스트를 위해서 실제 객체를 만드는 것이 어려울때 주로 사용됩니다. 해당 객체를 이용하면 환경구성에 들어가는 시간을 아낄 수 있으며 테스트끼리의 의존성을 낮출 수 있습니다. 🎯 상태 기반 테스트와 행위 기반 테스트 상태기반 테스트는 특정한 메소드를 실행시켜 기대값과의 일…