묻고 답해요
160만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨제미니의 개발실무 - 커머스 백엔드 기본편
격벽의 의미
안녕하세요! 격벽은 주요 개념을 나누고 가능한 직접 의존하지 않게 하는 판단 기준이라고 생각이 들었습니다! 그런데 예를 들어 복잡한 조회 쿼리의 경우에는 컨트롤러단에서 각 개념 간 조회를 하고 이를 어플리케이션 단에서 데이터를 필터링하는 것보다 join을 하는 경우가 성능적으로나 구현적으로 나은 방식이 될 수 있을 거 같습니다! 이런 경우 서로 다른 두 개념이 있을 때 한 개념 내 테이블과 다른 개념 내 테이블을 직접 join하는 경우가 있을 거 같은데요, 혹시 이런 경우도 가능한 지양하시는 편이실까요?? 벽을 침범하지 않는다는 것이 이런 경우에도 적용되어야 하는 것인지 궁금합니다!
-
미해결제미니의 개발실무 - 커머스 백엔드 기본편
개념 간 격벽을 침범하는 경우
안녕하세요! 보통 실무를 하다보면 여러 개념이 명확히 떨어지지 않는 경우도 있을 거 같습니다. 예를 들어 예약의 경우는 상품을 고르고, 여러 할인정책이 있고, 쿠폰, 포인트 등 여러 개념이 혼합되어 생기는 개념이라고 생각합니다! 혹시 이런 경우에는 예약도 한 개념이라고 볼 수 있을까요? 그리고 예약이 한 개념이라면 ReservationService를 만들었을 때 ReservationService는 godObject같은 형태가 만들어지기 쉬울 거 같은데, 이런 경우 재민님이라면 어떻게 예약과 다른 개념 간 격벽을 치고, 구현적으로는 어떻게 풀어나갈 것인지 알고 싶습니다!
-
미해결
Next.js API Route를 이용한 API 통합이 BFF 패턴에 해당하는지 궁금합니다
안녕하세요. 프론트엔드 취준생입니다.최근 대시보드 페이지를 리팩토링하면서 Next.js의 API Route를 사용해 여러 API 호출을 하나로 통합했습니다. 이 방식이 BFF(Backend for Frontend) 패턴을 올바르게 적용한 것인지, 혹은 제가 오해한 부분이 있는지 궁금해서 질문을 올립니다. AS-IS (기존 방식)기존 대시보드 페이지에서는 두 개의 다른 API를 직접 호출했습니다.이로 인해 다음과 같은 문제들이 있었습니다.프론트엔드에서 두 번의 개별 네트워크 요청이 발생했습니다.두 API에서 받은 데이터를 프론트엔드에서 직접 조합 후 가공 했습니다. TO-BE (개선한 방식)문제를 해결하기 위해 Next.js의 API Route를 도입했습니다.프론트엔드는 이제 새로 만든 엔드포인트 하나만 호출합니다.Api Route 내에서 Promise.all을 사용해 기존의 두 API를 서버 사이드에서 병렬로 호출합니다.두 API의 응답을 서버에서 조합하고 데이터 가공 로직까지 수행합니다.프론트엔드에는 렌더링에 즉시 사용할 수 있는 가공된 단일 JSON 객체를 반환합니다.-> 코드양 약 47% 감소했으며 데이터 가공 로직을 컴포넌트에서 제거 질문제가 위에서 적용한 방식(Next.js의 API Route를 중간 레이어로 사용하여 API를 통합하고 데이터를 가공)이 BFF 패턴을 올바르게 구현한 사례가 맞을까요?만약 맞다면, 이런 방식의 장점을 극대화하기 위해 추가로 고려하면 좋을 점이 있을까요?만약 잘못된 접근 방식이라면, 어떤 점을 오해하고 있는지 궁금합니다.현업 전문가분들의 조언을 부탁드립니다. 감사합니다!
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
에뮬레이터와 시뮬레이터 동시 실행 관련 문의드려요
안드로이드 에뮬레이터와 ios 시뮬레이터를 동시 실행한 후 핫 리로드를 했을 때 두 기기에 모두 반영이 되도록 하는 방법이 있을까요?
-
미해결
코드 해설 강의 쿠폰 관련 문의
안녕하세요? 밑바닥부터 만들면서 배우는 LLM 완독 챌린지 수강생입니다.해설강의 쿠폰이 발행된 줄 모르고 이제야 메일을 확인했는데쿠폰기간이 만료가 되었는지 다운받아지질 않습니다.죄송하지만 다시 한번 발송해 주실 수 있을까요?번거로우시겠지만 부탁드리겠습니다~!!
-
미해결김영한의 실전 데이터베이스 - 설계 1편, 현대적 데이터 모델링 완전 정복
역할 및 발생 시점에 따른 엔티티 분류
역할 및 발생 시점에 따른 엔티티 분류를 설명하는 파트에서 궁금한 점이 있습니다. 지난 강의까지 주문 엔티티는 사건 발생의 결과물(즉, 주문 이력)이 기록되는 엔티티라고 이해했었는데요."엔티티 분류1" 강의에서는 기본, 중심, 행위 엔티티로 나눠서 생각해볼 수 있다고 했습니다. 그때 중심 엔티티에서도 예시가 주문으로 나와있고, 행위 엔티티에서도 주문 이력으로 나와 있는데, 이 두 개가 다른 경우인가요? 중심 엔티티의 주문과 행위 엔티티의 차이가 무엇인가요? 감사합니다.
-
미해결절대강좌 유니티6 - 네트워크 게임 개발 마스터클래스 (Part3) : Netcode로 개발하는 2D RPG
Warrior의 InputHandler.cs 의 OnEnable(), OnDisable() 메서드 부분에서 공격에 문제가 있는 것 같아요.
Warrior의 공격에 문제점 발견마우스 왼쪽 버튼 Down 할 때 공격 애니메이션 동작마우스 왼쪽 버튼 Up 할 때 공격 애니메이션 동작마우스 한번 클릭(Down, Up) 동작에서 두 번의 공격 동작을 함.이 부분에서 canceled 부분==>마우스 Up 에서 애니메이션이 발생함.수정 전 코드attackAction.preformed += HandleAttack; attackAction.canceled += HandleAttack;수정 후 코드attackAction.started += HandleAttack; //attackAction.canceled += HandleAttack;이렇게 수정하면 정상적으로 마우스 한 번 클릭에 한 번 공격함.전체 수정 코드private void OnEnable() { inputActions.Enable(); // 이벤트 연결 moveAction.performed += HandleMove; moveAction.canceled += HandleMove; attackAction.started += HandleAttack; // attackAction.canceled += HandleAttack; // 버튼을 뗄 때 공격이 발생하는 문제를 막기 위해 제거 }private void OnDisable() { inputActions.Disable(); // 이벤트 해제 moveAction.performed -= HandleMove; moveAction.canceled -= HandleMove; attackAction.started -= HandleAttack; // attackAction.canceled -= HandleAttack; }
-
미해결
브라우저의 SOP 정책의 실효성 질문
Same Origin Policy가 CSRF 공격을 막기 위해 필요하다고 배웠습니다. 그런데 정말 SOP가 꼭 필요한지가 의문입니다. SOP가 없더라도, 쿠키의 SameSite=Strict 옵션을 사용하고, 타 사이트 localstorage에 접근하는 것을 차단하기만 한다면, 다른 사용자의 자원을 탈취하는 것을 막을 수 있을 것 같은데요. 그 외의 자원에 대한 SOP는 어차피 브라우저 주소창에 주소를 입력하기만 하면 누구나 접근할 수 있는 데이터에 대한 접근을 막을 뿐이지 않나요?
-
미해결한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
새일기쓰기하고 새로고침하면 새로쓴일기가 사라져요
🚨 필독) 질문하시기 전에 꼭 읽어주세요 (10초 소요)제목을 구체적으로 작성해 주세요✅ 좋은 예 : 감정일기장 Home 구현중 xx 이슈가 발생합니다.⛔️ 나쁜 예 : 이거 왜 안되나요?, 오류나요 도와주세요 등비슷한 궁금함을 갖고 계신 분들께 도움이 될 수 있어요! 코드의 이슈는 전체 프로젝트를 "링크 형태"로 올려주셔야 원인을 파악할 수 있습니다.깃허브, 구글드라이브 등의 수단을 통해 링크 형태로 전달해주세요직접 실행해보며 원인을 파악해야 하기 때문에 텍스트 형태로 붙여넣는건 삼가해주세요 https://drive.google.com/drive/folders/1lRO0fOAae3cWJUtuNK7L5atrGTgFFRWO?usp=drive_link 답변이 도움이 되셨다면 답글 or 해결완료 버튼을 클릭해주세요비슷한 궁금함을 갖고 계신 분들께 도움이 될 수 있어요!제 답변이 여러분께 도움이 되었는지 저도 알고 싶어요 강의 내용에 궁금한 점이 있다면 몇 챕터의 몇 분 몇 초인지 알려주시면 더 좋아요더 빠른 답변이 가능합니다!
-
미해결토비의 클린 스프링 - 도메인 모델 패턴과 헥사고날 아키텍처 Part 1
spotbug + @NonNullApi 로만 Null 방어가 될까요?
안녕하세요, nullable 프라퍼티가 없다면 null를 방어하는 방식에 대해 궁금한 점이 있어 질문남깁니다.14. Member 도메인 로직 개발 - 생성자에 requireNonNull() 사용15. 스프링을 이용한 널(null) 안정성 확보 - SpitBugs 플러그인 - package-info 에서 @NonNullApi이렇게 세가지 방법을 배웠는데요, SpitBugs 플러그인이 "빌드과정에서 정적 분석을 하여 애노테이션 의미와 부합하지 않으면 에러를 내준다" 라는 말씀에 "그럼 도메인에 Nullable 프라퍼티가 없으면 requireNonNull() 사용 없이 단순히 @NonNullApi + SpotBug만 사용해도 되지 않을까..? "의문이 들었습니다.3가지 모두 사용하는게 Null 방어에 괜찮을까요? 아니면 제가 이해한 대로 SpotBug 플러그인 + @NonNullApi 로만 사용해도 충분할까요?
-
해결됨2025 언리얼 공인강사 – UE5 스파르타 클래스: 심화편
GetRandomPointInNavigableRadius 함수가 없어요
안녕하세요. 언리얼 5.6으로 따라가는 중인데 Context Sensitive를 끄고 검색해봐도 GetRandomPointInNavigableRadius 함수가 없습니다. 대신 GetRandomReachablePointInRadius 함수를 사용하니까 똑같이 동작은 하는데 이걸 사용해도 되는건가요?
-
미해결비전공자도 이해할 수 있는 쿠버네티스 입문/실전
이미지가 없다고 에러가 계속 떠요
apiVersion: v1 kind: Pod metadata: name: spring-pod spec: containers: - name: spring-container image: spring-server ports: - containerPort: 8080 imagePullPolicy: IfNotPresentspring-pod.yaml파일을 작성을 한뒤 kubectl delete pod spring-pod 명령어로 pod를 삭제하고kubectl apply -f spring-pod.yaml 명령어를 입력했는데 계속 사진처럼 ErrImagePull이 됩니다.이미지를 pull로 당겨오지 못해서 발생하는 오류인것 같은데 이미지는 있는것으로 확인 됩니다. 뭐가 문제인걸까요?
-
미해결유니티 시스템 프로그래밍 Pt.2 - 상용 게임 구현을 위한 핵심 시스템 올인원 패키지
로컬 알림과 다국어 지원에 대해 궁금합니다.
안녕하세요. 유니티 시스템 프로그래밍 파트 1, 파트 2 강의 잘 듣고 있습니다. (두개 모두 번갈아 가며 필요한 부분 먼저 듣고 있는 상태입니다. ) 모바일 게임 서비스에 중요한 요소중에 하나로 로컬 알림과 서버 알림이 있는데 이 중에서도 로컬 알림에 대한 강의는 없는 것 같습니다. 혹시 제가 못 찾은 건지 아니면 이 강의가 없다면 추가로 강의를 만들어주실 수 있으신지 궁금합니다. 다국어 부분에서 CSV 파일을 로드해서 각 나라에 맞게 언어를 바꾸고 있긴 한데 CSV 파일 내 문자열에서 , 가 포함되어 있는 경우는 문제가 되지 않을까 싶습니다. 혹시 이런 경우일 때 어떻게 처리를 하실지 궁금합니다. 이상입니다. 유용한 강의 감사드립니다~
-
미해결코드 5줄의 마법, 5줄 머신러닝 PyCaret: 데이터 분석 프로젝트에 AutoML 날개 달기
13강 질문
안녕하세요, 13강에서 2개 질문 있습니다.ch =1로 레이블 되어있던데, shap값이 높으면 음수가 되니까 loyalch가 높을 수록 0으로 분류하는 것 아닌가요? 아래 코드에서 오류가 나는데 어떻게 수정해야 하나요?print("\n--- 4. Local Interpretation (SHAP Reason Plot) ---") interpret_model(tuned_lgbm, plot='reason', observation=0)
-
미해결데이터 분석 SQL Fundamentals
rollup시 null값 매출 라벨링
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.selectcoalesce(to_char(b.order_date, 'yyyy'), '총매출') asyear, coalesce(to_char(b.order_date, 'mm'), '연매출') asmonth, coalesce(to_char(b.order_date, 'dd'), '월매출') asday, sum(a.amount) assum_amountfromnw.order_itemsajoinnw.ordersbona.order_id = b.order_idgroupbyrollup(to_char(b.order_date, 'yyyy'), to_char(b.order_date, 'mm'), to_char(b.order_date, 'dd'))orderby1, 2, 3;case when 안쓰고 coalesce 해도 괜찮을것 같아요!
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
인라인 코드가 인텔리제이 IDE 에서 오류라고 표기되고 있습니다.
서버를 켜서 소스코드를 보면 의도된 대로 잘 작동하는것 같긴 한데,인텔리제이에서 아래처럼 오류 표기가 계속떠서 혹시 설정을 건드려야 하는 부분이 있는지 궁금합니다 .참고로 현재 Ultimate 버전 사용 중입니다.
-
미해결QGIS 지도 시각화 A to Z (벡터/기초편)
qpt 파일 연결프로그램 문의
안녕하세요.공유해주신 qpt 파일을 열어보려고 기본프로그램으로 pdf를 설정햇는데 열리지가 않습니다. 보통 qpt파일 연결프로그램은 어떤 프로그램으로 디폴트 설정을 해두나요?
-
미해결한 번에 끝내는 자바스크립트: 바닐라 자바스크립트로 SPA 개발까지
영상 편집 관련 문의
혹시 5:50 초 쯤 인사 후 뒤 영상은 편집이 덜 된걸까요?
-
미해결CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조
공유 캐시 관련 질문 드립니다.
안녕하세요.https://inf.run/j6Fso위 질문과 답변이 제가 궁금했던 내용과 유사하여 글을 읽어보게 되었습니다.그리고 추가로 궁금한 점이 있어 질문을 드리고 싶습니다.먼저 제가 이해한 내용은 다음과 같습니다.공유 캐시는 클라이언트와 서버 사이에 있으며 사용자간에 공유할 수 있는 응답을 저장할 수 있고, 공유 캐시는 중간 프록시 서버에 저장하는 건데, 이 프록시의 종류는 forward proxy와 reverse proxy가 있다. 그리고 reverse proxy의 경우는 대표적으로 nginx서버가 있다.그리고 질문드리고 싶은 내용은,nginx의 경우는 서버 앞단에 있기 때문에 ip 주소를 알아야지 접근할 수 있다고 알고 있습니다. 그래서 위에서 말씀하신 '브라우저 캐싱과 공유 캐싱이 DNS캐시보다 먼저 수행됩니다.' 의 뜻은 '브라우저 캐싱과 공유 캐싱(forward proxy, CDN 캐시)이 DNS캐시보다 먼저 수행되고, 공유 캐싱(reverse proxy)이 수행된다.'로 이해하면 되는지 여쭙고 싶습니다.질문 읽어주셔서 감사합니다.
-
미해결<밑바닥부터 만들면서 배우는 LLM> 완독 챌린지
해설 쿠폰 관련 문의
안녕하세요.밑바닥부터 만들면서 배우는 LLM 완독 챌린지 수강생입니다. 메일이 스팸함으로 분류되어 쿠폰을 확인하지 못해 현재 등록이 어려운 상황입니다.혹시 쿠폰 재발급이 가능할지 확인 부탁드립니다. 감사합니다.