안녕하세요, 첫 질문입니다. 14강 외부 API 연동 - Spock 적용 10분 30초 경에 given 뒤 and 추가로 검증을 할 수가 있게 된다고 하셨는데 given 뒤 and 에는 검증 기능이 없는 것 아닐까요? old() 를 사용하거나 expect 를 사용하라는 얘기가 있는데 확인해 주실 수 있나요? 좋은 강의 감사합니다!
안녕하세요. 강의를 열심히 들으면서 따라해보고 있는데 강의에서 나오는 네이버 API의 '검색 - 책' API 제공이 중단된 것 같습니다. 앞으로 강의가 계속 도서관련해서 나오는 것 같은데 어떻게 하면 좋을까요..? 관련 링크 첨부해드립니다. https://developers.naver.com/notice/article/32564 https://developers.naver.com/notice/article/32530
안녕하세요, 강사님! 강의를 듣던 중 설치 과정에서 문제가 발생하여 질문 남깁니다. 제공해주신 "win64_11gR2_database_1of2" zip 파일의 압축을 해제했는데 , 그안에 또다른 1of2 zip 파일과 동일한 형태의 파일들이 중첩되어 들어있습니다. 상위 압축파일에는 setup.exe 파일이 없고, 내부의 1of2 zip 파일 까지 한번 더 압축을 해제해야 setup 설치 파일이 나타나는 상태입니다. 하지만 추출한 setup.exe 파일을 실행해도 현재 제 환경(win11)에서는 아무런 반응이 없거나 작동하지 않습니다! 감사합니다
안녕하세요 수업자료 다운 받으면 자료가 하나도 보이지않는다는 문의남겼었습니다 알려주신 방법, 다른 문의에 있는 방법대로 다해봤으나 여전히 같은 문제가 발생합니다 마지막 방법으로 인쇄 눌러서 복사하려고하니깐 이러한 형태로 뭉쳐서 나오기에 공부하는데 어려움이 생깁니다 제가 지금 공부를 바로시작하려는데 계속 어려움이있으니 정보처리기사 zip파일 메일로 보내주시면 빠르게 공부할수잇을것같습니다 s2yeeuns@naver.com 빠른조치부탁드립니다
안녕하세요. 바인딩 에러와 관련해 어떤 의도로 if 절이 나뉜 것인지 정확히 이해를 못한것 같아서 질문드립니다. 메시지 작성에서 nullable 한 값이 존재하여 null-safe 하게 메시지 여부를 검사하고, 존재한다면 메시지를 반환해주는 것으로 이해를 하였습니다. 그리고 여러 필드에서 에러가 발생한 경우 람다식을 통해 에러 메시지를 "," 로 조합해주고 리턴을 하는 것으로 이해하였습니다. 이후 직접 테스트해보는 과정에서 localhost:8080/v1/books 으로 파라미터들을 모두 제외하고 요청을 보낸 경우의 기대가 "쿼리비어있을수 없습니다., 페이지..., 사이즈... 값들이 정확하지 않습니다." 이런 결과가 나오는 것으로 기대를 하였지만, 실제론 랜덤하게 누락된 값 하나만 결과로 나오는 것을 확인하였습니다. 혹시 e.getFieldErrors().stream() 가 default 메시지가 null 인 케이스만 방어하기 위해서 작성된 것일까요?
학습관련 질문을 남겨주세요! 상세히 작성주시면 더 좋아요 🙂 안녕하세요, 강사님 🙂 이번 질문도 혼자 먼저 구현 후, 강사님의 강의를 들으며 리팩토링을 진행하며 궁금증이 하나 생겨 질문 드립니다. 저는 search-api 모듈의 com.library.repository의 NaverBookRepository.class 위치를 강사님과 다르게 external:naver-client 에 위치시켰습니다.(NaverBook/KakaoBook은 external 에 종속된 구현체라고 생각) 그러다 보니, naver-client 모듈이 search-api 모듈에 있는 BookRepository, PageResponse, SearchResponse 를 알아야 했으며, naver-client 모듈이 search-api 모듈을 implementation('...') 으로 의존?참조? 하게 되었습니다. // search-api 모듈 public interface BookRepository { PageResponse<SearchResponse> search(...); } 이렇게 external -> search-api 로 흘러가는 의존 방향에 이질감이 듭니다.(외부 API 가 app 을 안다..?) 그래서 모듈간 의존 방향이 search-api -> external 되도록 강사님 강의처럼 NaverBookRepository 를 search-api 모듈에 위치 시켜도 NaverClient 때문에 search-api에 feign 종속성이 생긴 다는 것이 모듈간 의존성 격리가 되지 않아서 멀티모듈의 장점이 퇴색되었다고 생각합니다. 강사님은 과제가 아닌 실무에서 search-api 와 external 간의 모듈 격리를 어떻게 하시며, 의존 방향을 어떻게 하시는지 궁금합니다. 저의 부족한 지식을 확장할 수 있게 강사님의 인사이트 공유해주시면 감사하겠습니다!
안녕하세요 강사님, 강사님 설명이 굉장히 상식적으로 자연스럽게 이해가 되다 보니 따로 이해가 어려운 부분 없이 강의 후반부까지 잘 따라 왔는데, 어딘가 마음속에서 걸려있던 의문점 하나가 터졌습니다. 예를 들어 35강 19:46 즈음에 카테고리 테이블에 색깔 컬럼을 진짜중복/가짜중복 을 나누는데 1. HOME의 색을 YELLOW 로 바꾸면 UNIVERSITY 도 YELLOW로 바뀌는가? -> NO 2. HOME의 색인 RED를 '빨강'으로 바꾸면 UNIVERSITY 도 '빨강'으로 바뀌어야 하는가? -> YES 이 두가지 해석이 가능할 것 같습니다.. 물론 결과론적으로 머리로는 colors 테이블을 따로 만들어 FK로 연결하는 것이 맞다는 생각이 들지만 강사님의 6가지 원칙을 차례로 따라가는데 헷갈림이 있어 질문드립니다. 감사합니다.
학습관련 질문을 남겨주세요! 상세히 작성주시면 더 좋아요 🙂 안녕하세요, 재밌는 강의 만들어주셔서 감사합니다! 저는 먼저 구현 후, 강사님의 강의를 보며 리팩토링을 진행하고 있습니다. 제가 궁금한 것은 강사님은 external 모듈에서 naver/kakao 를 하위 모듈로 분리하셨는데, 저는 external 하위에 kakao 패키지, naver 패키지로 분리했었습니다. 그래서, 모듈로 분리하신 이유가 무엇인질 고민하다가 naver 와 kakao 의 수정되는 주기가 달라서 빌드/배포에 이점이 있겠다는 생각이 들었는데 강사님은 어떤 기준으로 모듈과 패키지를 선택하시는지 질문 드립니다.
안녕하세요. 강의 정말 잘 듣고 있습니다. 강의를 듣다가 커버링 인덱스(Covering Index) 관련해서 궁금한 점이 생겨 질문드립니다. 커버링 인덱스는 SELECT 문에서 조회하는 컬럼들이 모두 인덱스에 포함되어 있을 때 , 원본 테이블을 조회하지 않고 인덱스만으로 쿼리를 처리할 수 있는 방식 이라고 이해했습니다. 그렇다면, SELECT 에 포함된 컬럼들이 각각 단일 인덱스로 존재하는 경우에도 커버링 인덱스로 처리될 수 있는지 궁금합니다. 아니면 반드시 하나의 복합 인덱스(composite index) 로 묶여 있어야 커버링 인덱스로 동작하는 것인지 알고 싶습니다. 예를 들어, id 는 Primary Key 라서 자동으로 인덱스가 생성되어 있고 name 컬럼에 대해서도 검색을 위해 인덱스를 추가하려고 할 때 다음 두 방식 중 어떤 것이 더 적절한지 궁금합니다. name 컬럼에 단일 인덱스 를 생성 (id, name) 형태의 복합 인덱스 를 생성 이 경우 커버링 인덱스 관점에서 어떤 방식이 더 올바른 설계인지 설명해주시면 감사하겠습니다 :>