inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

spotbug + @NonNullApi 로만 Null 방어가 될까요?

미해결

토비의 클린 스프링 - 도메인 모델 패턴과 헥사고날 아키텍처 Part 1

안녕하세요, nullable 프라퍼티가 없다면 null를 방어하는 방식에 대해 궁금한 점이 있어 질문남깁니다. 14. Member 도메인 로직 개발 - 생성자에 requireNonNull() 사용 15. 스프링을 이용한 널(null) 안정성 확보 - SpitBugs 플러그인 - package-info 에서 @NonNullApi 이렇게 세가지 방법을 배웠는데요, SpitBugs 플러그인이 "빌드과정에서 정적 분석을 하여 애노테이션 의미와 부합하지 않으면 에러를 내준다" 라는 말씀에 " 그럼 도메인에 Nullable 프라퍼티가 없으면 requireNonNull() 사용 없이 단순히 @NonNullApi + SpotBug만 사용해도 되지 않을까..? " 의문이 들었습니다. 3가지 모두 사용하는게 Null 방어에 괜찮을까요? 아니면 제가 이해한 대로 SpotBug 플러그인 + @NonNullApi 로만 사용해도 충분할까요?

  • java
  • spring
  • spring-boot
eunseo lay 댓글 2 좋아요 0 조회수 170

13강 질문

해결됨

코드 5줄의 마법, 5줄 머신러닝 PyCaret: 데이터 분석 프로젝트에 AutoML 날개 달기

안녕하세요, 13강에서 2개 질문 있습니다. ch =1로 레이블 되어있던데, shap값이 높으면 음수가 되니까 loyalch가 높을 수록 0으로 분류하는 것 아닌가요? 아래 코드에서 오류가 나는데 어떻게 수정해야 하나요? print("\n--- 4. Local Interpretation (SHAP Reason Plot) ---") interpret_model(tuned_lgbm, plot='reason', observation=0)

  • python
  • 머신러닝
  • automl
  • mlops
  • 인공지능(ai)
콩나물 댓글 2 좋아요 0 조회수 98

rollup시 null값 매출 라벨링

미해결

데이터 분석 SQL Fundamentals

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. select coalesce ( to_char ( b . order_date , 'yyyy' ), '총매출' ) as year , coalesce ( to_char ( b . order_date , 'mm' ), '연매출' ) as month , coalesce ( to_char ( b . order_date , 'dd' ), '월매출' ) as day , sum ( a . amount ) as sum_amount from nw . order_items a join nw . orders b on a . order_id = b . order_id group by rollup ( to_char ( b . order_date , 'yyyy' ), to_char ( b . order_date , 'mm' ), to_char ( b . order_date , 'dd' )) order by 1 , 2 , 3 ; case when 안쓰고 coalesce 해도 괜찮을것 같아요!

  • sql
  • postgresql
  • dbms/rdbms
  • 데이터-엔지니어링
mewpotofficial 댓글 2 좋아요 0 조회수 93

typedef 질문

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

5:50 제일 위에 선언 부분에 Bag이 typedef으로 데이터타입으로 정의한건지 struct 의 변수명으로 정의한건지 헷갈립니다 저렇게 하나만 쓰면 둘다 인가요?

  • python
  • java
  • c
  • 정보처리기사
댓글 2 좋아요 0 조회수 59

for-else는 언제 쓰나요?

해결됨

[왕초보] [누적 5,000명+] Python 프로그래밍 기초 완성 로드맵

안녕하세요. for-else 는 언제 쓰나요? 궁금합니다. 답변 감사합니다.

  • python
  • 머신러닝
  • 빅데이터
  • 인공지능(ai)
  • ax(에이전트-경험)
지오찬 댓글 2 좋아요 1 조회수 114

요즘 바이브코딩이 대세인데 파이썬을 배워야하는 이유가 뭘까요?

해결됨

[왕초보] [누적 5,000명+] Python 프로그래밍 기초 완성 로드맵

열심히 수강중인 학생입니다. 좋은 강의 정말 감사합니다. 개인적으로 궁금하여 문의드립니다. 요즘 바이브코딩이 대세인데 파이썬을 배워야하는 이유가 뭘까요?

  • python
  • 머신러닝
  • 빅데이터
  • 인공지능(ai)
  • ax(에이전트-경험)
지오찬 댓글 1 좋아요 1 조회수 336

코드에서 오류를 찾는 팁이 있을까요?

해결됨

[왕초보] [누적 5,000명+] Python 프로그래밍 기초 완성 로드맵

코드에서 오류를 찾는 팁이 있을까요?

  • python
  • 머신러닝
  • 빅데이터
  • 인공지능(ai)
  • ax(에이전트-경험)
정승혜 댓글 2 좋아요 2 조회수 100

NOT NULL과 DEFAULT 조건의 사용법

미해결

김영한의 실전 데이터베이스 입문 - 모든 IT인을 위한 SQL 첫걸음(SQL부터 차근차근)

강의에서 stock_quantity 칼럼의 제약 조건으로 다음과 같은 구문을 작성하였는데, stock_quantity INT NOT NULL DEFAULT 0 해당 구문에서 NOT NULL 제약조건을 두지 않더라도 DEFAULT 0만 작성하여도 충분히 해당 칼럼이 NULL값이 되는 걸 방지할 수 있으리라 생각이 되어서요. NOT NULL 제약조건을 반드시 작성해야하는 걸까요? 아니면 개발자의 코드 작성 의도를 더 명확히 하고자 작성하는 걸까요?

  • sql
  • mysql
  • dbms/rdbms
  • SQLD
강민정 댓글 1 좋아요 0 조회수 171

flow.plot() 그래프 시각화가 돼지 않네요

해결됨

한 번에 끝내는 AI 에이전트 개발 올인원 (w. LangGraph, Google ADK, CrewAI)

안녕하세요 flow.plot() 그래프 시각화가 돼지 않네요 에러 내용' Warning: No node found for 'decorator' or 'research_by_topic'. Skipping edge. Warning: No node found for 'research_by_topic' or 'handle_make_blog'. Skipping edge. Warning: No node found for 'handle_make_blog' or 'manage_seo'. Skipping edge. Warning: No node found for 'manage_seo' or 'finish_make_blog_content'. Skipping edge. Plot saved as crewai_flow.html 위와 같은 에러가 나타나고 crewai_flow.html은 생성돼지만 클릭하면 그래프가 나타나지 않네요 쳇 지피티 확인결과 아래와 같은 가능성이 있다고 하네요 확인 부탁드립니다 crewai 버전이 아직 flow 시각화 기능( plot() )의 일부 버그를 포함하고 있습니다. ( decorator → 이건 내부 파서가 함수 이름 대신 데코레이터를 텍스트로 읽어버린 흔적이에요.)

  • python
Tora King 댓글 3 좋아요 0 조회수 130

코딩 내용이 같이 출력됨

해결됨

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

코딩을 하던 중 위와 같이 결과 창에 코딩 내용? 같은 문자들이 같이 출력됩니다. 비슷한 경우가 종종 발생하는데 어떻게 해결할 수 있나요?

  • python
  • 머신러닝
  • 빅데이터
  • pandas
  • 빅데이터분석기사
김하민 댓글 2 좋아요 0 조회수 52

도메인 및 dbcore 패키지 구조 질문있습니다

해결됨

제미니의 개발실무 - 커머스 백엔드 기본편

안녕하세요, 강의 보기 전 소스코드부터 보고 있는데 패키지 구조에 궁금증이 생겨 질문드립니다. 현재 domain 및 db core 패키지 하위에 도메인별 세부 패키지 분리 없이 모든 파일이 배치되어 있는데요, 추후 프로젝트 규모가 커져 파일 개수가 수백, 수천 개에 달하게 될 경우에도 이러한 구조(패키지 미분리)를 유지하시는 것을 선호하시는지 궁금합니다. 감사합니다.

  • kotlin
  • spring-boot
  • 도메인
  • dbms/rdbms
  • backend
최민호 댓글 2 좋아요 1 조회수 144

14강 강의 듣는중에 궁금한게 있어서 질문합니다~

미해결

[개정판] 파이썬 머신러닝 완벽 가이드

안녕하세요~ 좋은 강의 잘 듣고 있습니다. 넘파이 ndarray 인데싱(indexing) 이해 - 단일값과 슬라이싱 인덱싱 수업을 듣는중 궁금한게 있어서 질문합니다. 해당 강의 8분 50초 정도에서 array2d[ 1:3, 0:3 ] 과 array2d[ 1:3, : ] 예시가 이해가 안되서요 제가 이해한건 : 앞은 시작 인덱싱 값이고 : 뒤는 가져올 값의 범위 즉 갯수로 이해했는데요 그러면 array2d(3, 3) 의 2차원 ndarray 이면 axio0의 1:3 인덱싱이 범위를 벗어나는거 아닌가해서요

  • python
  • 머신러닝
  • 통계
댓글 3 좋아요 0 조회수 107

2-1 파이썬 가상환경 설정에서 python실행이 안됩니다.

해결됨

(GPT-5) 챗GPT와 파이썬으로 주식 자동매매 앱 및 웹 투자 리포트 만들기

안녕하세요. 강사님 맥북에서 강의 2-1 파이썬 가상환경 설정을 따라 하고 있는데, 1, 가상환경 생성 가상환경 활성화 32비트 환경 설정 파이썬 설치 여기까지는 잘 됐는데, 5번 32비트 파이썬 정상 작동 확인 여기서 zsh: command not found: python 이렇게 에러가 발생합니다. 그러다보니 다음 강의로 진행을 못하고 있는데, 뭐가 잘못된건지 모르겠습니다. 답변 부탁드립니다.

  • python
  • 인공지능(ai)
  • chatgpt
  • ai-활용-(ax)
토니야 댓글 3 좋아요 0 조회수 198

강의자료중 github 자료

해결됨

스프링부트로 직접 만들면서 배우는 대규모 시스템 설계 - 게시판

학습 관련 질문을 최대한 상세히 남겨주세요! 고민 과정도 같이 나열해주셔도 좋습니다. 먼저 유사한 질문이 있었는지 검색해보세요. 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 혹시 github 자료도 받아볼 수 있나요?

  • java
  • mysql
  • spring-boot
  • kafka
  • redis
쭈도리 댓글 2 좋아요 0 조회수 81

consumer가 topic을 전부 사용하기 전에 사용자에게는 쿠폰이 발급된것으로 확인하는 과정에서 발생가능한 문제.

미해결

실습으로 배우는 선착순 이벤트 시스템

운영중인 서비스에서 선착순 100명 이벤트를 적용한다고 가정하겠습니다. redis를 통해 100명을 제한했고, kafka를 적용하여 부하를 줄여주는 것은 까지는 이해했습니다. 부하를 줄이는 방법이 kafka를 적용할때 때 provider가 topic을 생성하고 consumer가 topic을 가져와서 DB에 입력하는 작업을 하는 것으로 이해했는데요. 만약 이게 실제 운영 환경이라고 가정했을때 궁금한것은 다음과 같습니다. 사용자가 이벤트 신청 redis에서 쿠폰 생성 수량 확인 결과 생성 가능한 조건 임으로 새로운 쿠폰 발급 provider가 새로운 토픽을 생성 토픽을 생성한 그 순간 바로 직후, 사용자는 새로운 쿠폰이 발급된 것으로 확인 해야함. 그치만 consumer에서 topic을 가져오기 전으로 DB에는 새로운 쿠폰이 생성되지 않음. 쿠폰을 사용(또는 확인) 하려고 DB에서 select해보니 쿠폰이 없음 consumer가 이제서야 쿠폰 생성 이 경우에서 보는 것과 같이. provider가 topic을 생성하고 consumer가 topic을 가져와서 DB에 넣는 과정 사이에 사용자가 select를 진행하는 케이스가 있을것같습니다. 이 부분은 어떻게 해결할 수 있을까요? 혹시 다음과 같이 해결 할 수 있을까요? provider가 topic을 생성하는 과정에서 발급 내역을 redis에 입력 consumer가 모든 토픽을 전부 사용하여 DB에 입력하기 전까지 redis에 입력되어 있는 쿠폰 정보로 사용자에게 보여줌 consumer가 모든 토픽을 사용했을때(= 생성된 모든 쿠폰정보를 DB에 입력했을때) redis에 있는 쿠폰정보는 삭제하고 DB에서 select해서 보여줌. 궁금합니다.

  • java
  • docker
  • spring-boot
  • kafka
  • redis
황준성 댓글 1 좋아요 0 조회수 102

문제 풀이 해설 요청

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

ASCII 코드 챕터 18:12 printf(%s\n", p+1) printf(%c\n", *(p+1)) printf(%s\n", *p+4) 위 3가지 경우에 대해서 해설 부탁드립니다. 1번 경우 KOREA에서 한칸 오른쪽으로 이동하여 OREA되는 것은 이해가 되고 2번 경우 *p가 K를 가르키기에 +3하면 E가 되는 것도 이해되고 3번 경우에는 1번과 2번을 바탕으로 이론을 숙지하고 있는상황에서 이해가 되지 않습니다.

  • python
  • java
  • c
  • 정보처리기사
dhkdxo12 댓글 2 좋아요 0 조회수 55

삭제 기능 구현에 대한 질문입니다.

해결됨

제미니의 개발실무 - 커머스 백엔드 기본편

안녕하세요. 오늘도 재미있게 잘봤습니다. 감사합니다. // ReviewManager.kt @Transactional fun delete(user: User, reviewId: Long): Long { val found = reviewRepository.findByIdAndUserId(reviewId, user.id) ?: throw CoreException(ErrorType.NOT_FOUND_DATA) found.delete() return found.id } 이 코드를 보면서 삭제를 구현할 때 두 가지 방식이 있겠다는 생각이 들었습니다. 첫번째는 조회 + 삭제, 두번째는 정확한 key를 넘겨주어서 한번에 삭제. 둘 가운데 어떤 방식을 선호하시는지 궁금합니다. 처음에는 두 번째 방식으로 구현을 한다면 메서드 이름과 동작이 더 일치해서 좋고 코드도 한 줄에 끝나서 더 좋은게 아닌가? 라고 생각을 했었는데 그렇다면 첫번째 방식을 하면 좋은점이 무엇일까 다시 생각을 해보니 만약 삭제할 때 ORM 예외가 발생한다면 ReviewManager가 몰라도 된다는게 장점일 수 있겠다는 생각이 들었습니다.

  • kotlin
  • spring-boot
  • 도메인
  • dbms/rdbms
  • backend
비비비비빅 댓글 1 좋아요 1 조회수 69

confirm 로직에서 amount를 검증하는 부분에서 질문이 있습니다.

미해결

견고한 결제 시스템 구축

현재는 클라이언트에서 넘어온 amount를 검증하고 있는데 이는 조작 위험이 있지 않은지 궁금합니다. 예를 들어 1원만 결제하고 서버에는 10000원을 결제했다고 보내면 서버에서는 결제 승인 API를 호출하여 totalAmount를 확인하기 전까지는 알 수 없는걸까요? 결제 승인 API에서 반환되는 Paymet 객체에 totalAmount 필드가 있기는 하지만 결제를 승인하기 전에 toss 서버에서 실제 결제된 금액을 조회하는 방법이 따로 없는건지 궁금합니다

  • spring
  • spring-boot
  • dbms/rdbms
  • backend
  • payments
김정환 댓글 1 좋아요 0 조회수 83

findSections 메서드 위치에 관련하여 질문 드립니다

해결됨

제미니의 개발실무 - 커머스 백엔드 기본편

강의를 듣고 재민 님이 말씀해주신대로 코드를 옮겨 봤는데요. ProductFinder에 findSections 메서드가 있지 않고 ProductSectionService에서 ProductSectionRepository를 통해 바로 조회하는 것도 꽤 자연스럽고 괜찮다고 느껴졌습니다. 그런데 여기서 궁금한게 있습니다. Product 관련한 건 ProductFinder 라는 별도의 객체가 책임을 갖게 해서 코드를 짜다가, ProductSection에서 갑자기 바로 Repository에 접근해서 조회를 하도록 하면 코드 통일성 측면에서 바람직한가? 하는 의문이 문득 들더라구요. 그렇다고 ProductSectionFinder를 또 만들어서 하자니 너무 과한가? 싶은 생각도 들었습니다. 추가로 ProductSection 조회에 다른 요구사항이 생기거나, 복잡한 구현을 해야 된다면 ProductSectionFinder 같은 걸 만들어도 좋을 것 같은데, 현재 시점에서 만드는 것이 좋은 접근인지 확신이 안 생긴달까요 ㅎ 만약 이런 고민이 들 때는 어떤 것에 우선순위를 두어서 결정하는 것이 좋을 지 재민 님의 의견이 궁금합니다. 좀 더 자연스러운 흐름대로 짜는 것이 나을지, 혹은 코드 통일성 유지를 위해서 바로 Repository에 접근하는 것은 지양 하면 좋을지 등등 말이죠! 이건 회사나 팀마다 정해진 규칙이 있을 가능성이 높지만 공부하는 입장에서 궁금증이 들어 이렇게 질문을 드립니다. 감사합니다 😀

  • kotlin
  • spring-boot
  • 도메인
  • dbms/rdbms
  • backend
비가싫어요 댓글 1 좋아요 1 조회수 167

인기 태그

인프런 TOP Writers

주간 인기글