반응형
디자인 패턴이 이런건지 몰랐어 (헤드퍼스트 디자인패턴 개정판)
Study 2022. 10. 2. 22:16

. 한빛미디어 활동을 위해서 책을 제공받아 작성된 서평입니다...만 진심이 담겨있습니다.허위 사실 유포는 😎일절 없음. 나의 첫 헤드퍼스트 시리즈. 게다가 '헤드퍼스트 디자인패턴 개정판'은 초판 이후 16년만에 개정이 되어서 나왔다. 그래서 뭔가를 기대했느냐. 그건 아니다. 평소에 디자인패턴이라고 하면 안드로이드 개발할 때 많이 적용했던 MVP, MVVM를 많이 떠올렸고, 그게 아니라면 고작해야 옵저버 패턴, 싱글톤 패턴 정도가 전부였다. 디자인패턴이 뭘 정의하는지도 잘 몰랐다. 혹시 이 글을 읽는 분도 그러한가? 그렇다면 이 서적은 당신에게도 나에게도 필요한 책이다. 당신과 나와 같은 입장이 뭘까? 입으로만 디자인 패턴을 얘기했지만 디자인 패턴의 정의조차 몰랐던 사람 디자인 패턴보다 프레임워크나 라이브..

테스트할 때 필요한 객체를 일일이 만들기 귀찮을 때
Spring 2022. 9. 29. 13:14

. 시작하기 앞서 여기에서 진행되는 환경은 스프링부트 + 코틀린이며 아래와 같은 의존성이 추가가 되어 있다. kotlinVersion=1.7.10 springBootVersion=2.5.13 // build.gradle testImplementation("org.mockito.kotlin:mockito-kotlin:4.0.0") testImplementation("org.springframework.boot:spring-boot-starter-test") testImplementation("org.springframework.kafka:spring-kafka-test") testImplementation("io.mockk:mockk:1.13.1") 테스트를 만들었는데 when-then 형태로 아래와 같은..

비밀번호 검증용 Custom validation 어노테이션을 만들고 테스트까지
Spring 2022. 9. 28. 15:37

스프링부트로 만든 서비스에서 다음과 같은 조건을 만족하려고 한다. 전제 : 스프링부트 + 코틀린(Kotlin) API에 받는 RequestBody의 모델에 비밀번호 필드를 포함한다. 비밀번호 필드는 Custom validation 어노테이션을 통해 검증을 한다. 정상적으로 동작하는지 단위테스트를 만든다. 해당 테스트에는 @BeforeAll, @AfterAll을 사용한다. 먼저 테스트를 작성해보자 Custom validation 어노테이션을 검증하기 위한 유닛테스트를 만들어야 하기에 Validator를 사용해서 검증해야 한다. internal class UserPasswordModelTest { lateinit var validatorFactory: ValidatorFactory lateinit var v..

DNS를 이해하고 간단하게 dig를 사용해보자
Dev Note 2022. 9. 27. 14:57

내 머리는 한번 공부한다고 기억하거나 제대로 이해하는 법이 없다. 지금도 그렇다. DNS 이슈로 난처한 경험을 해보고 나서야 복습을 해본다. IP, TCP, UDP DNS를 이해하기 전에 먼저 알아야 할 개념이 있다. 바로 IP(Internet Protocol Address). 인터넷 통신규약 혹은 이 규약을 바탕으로 만들어진 주소를 IP라고 지칭한다. 그럼 이 IP는 어떤 용도로 쓰일까? 아래 이미지처럼 숫자를 통해 주소를 표현할 수 있다. IP 사이에는 패킷이 전달되는데 패킷은 흔히 이야기하는 데이터 혹은 정보로 이해하면 된다. IP가 특별한 동시에 한계점을 가지는 것이 바로 비연결성과 비신뢰성이다. 비연결성 패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷이 전송된다. 클라이언트는 서버의 상태를..

조금은 안전하게 ngrok 사용하기
Tool 2022. 9. 24. 19:47

PC에서 개발한 API를 로컬 서비스로 띄워서 공유하고 싶을 때 어떻게 할까? 필자의 경우, ngrok을 사용한다. 방화벽 넘어서 외부에서 로컬에 접속 가능하게 하는 터널 프로그램이다. 쉽게 외부로부터 접근을 할 수 있고, 활용 범위도 넓어서 많은 개발자가 사용한다. 그런데 기본적인 사용에 있어서 꺼림찍한 부분도 있다. 공유 URL만 있으면 누구나 접근이 가능하다는 것. 생각해보았다. ngrok에는 분명 이런 경우를 고민해서 인증절차를 만들어 놓았을 것이라고. 아니나 다를까 ID/Password 형태로 접근을 제한하는 방식이 있었다. 그 방법을 공유해보고자 한다. ngrok - Online in One Line Zero Trust Add SSO, Mutual TLS, IP Policy, and webho..

728x90
반응형