묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결토비의 클린 스프링 - 도메인 모델 패턴과 헥사고날 아키텍처 Part 1
영상 편집에 오류가 있는것 같습니다.
3:10 MemberRegisterResponse 생성3:23 MemberRegisterResponse 생성같은 과정이 반복되는데 편집이 잘 못 된것 같습니다.
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
스프링부트 프로젝트를 windows로 빌드하고 실행한 이후..
[질문 내용]그 이후부터는 intellij에서 localhost:8080으로 접속이 안됩니다. 설정에서 이렇게 변경을 해도 프록시서버 설정을 바꿔야하는건지 알수가 없네요. 프로젝트 다시 만드는 방법보다 설정바꿔서 실행해보고 싶은데 어느 쪽을 변경해야하나요?
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
java 기출변형 22분
22분에 나오는 코드의 실행 순서에 질문이 있습니다.자식 클래스 생성자에 this나 super로 생성자가 적혀있지 않은 경우 자바에서 자동으로 super()를 만들어준다고 알고 있는데 맞나요? 그럼 Chi()에서 this(20)으로 Chi(20)이 실행된 다음, 이 생성자에는 따로 this나 super로 생성자가 적혀있지 않기 때문에 super()로 Par() 생성자가 호출된다고 이해하면 될까요?질문을 정리하자면, 코드의 정확한 실행 순서가Chi() -> Chi(int y) -> Par()인지,Chi() -> Par() -> Chi(int y)인지 알고 싶습니다.
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
강의 구성 관련해서 질문이 있습니다
선생님 안녕하세요 혹시 이 강의는 tensorflow 로 만들어진 강의인가요? 선생님의 torch cnn강의를 듣고도 이 강의를 들을 수 있는 것인지, 아니면 tensorflow 강의를 들어야만 이 강의를 들을 수 있는것인지 궁금합니다.
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
2025년 1회 기출 문제 1번 문제 질문
4분 58초에 for(i=0;i<4;++i){if(Data[i]>'c'){break;}이 문항에서 위에 나온 배열에 B A D E 가 존재하는데요 c 의 아스키코드는 99 로 인지한 상태로 풀고 나머지 배열에있는 값들은 각각 66 , 65 ,68 ,69 이렇게 해서 브레이크가 안걸리고 i가 3까지 나열한 뒤로 끝나는 것으로 인지했었습니다 그런데 영상 강의에선 D의 값에서 break가 걸린다고 들었는데 왜 그런건지 질문드립니다.
-
미해결홍정모의 따라하며 배우는 C언어
14.14 예제 질문
#define CRTSECURE_NO_WARNINGS#include <stdio.h>#include <stdlib.h>#include <conio.h>#define SLEN 101struct book{ char name[SLEN]; char author[SLEN];};void print_books(const struct book* books, int n);void write_books(const char* filename, const struct book* books, int n);struct book* read_books(const char* filename, int* n);int main(){ int temp; int n = 3; struct book* my_books = (struct book*)malloc(sizeof(struct book) * n); if (!my_books) { printf("Malloc failed"); exit(1); } my_books[0] = (struct book){ "The Great Gatsby", "F. Scott Fitzgerald" }; my_books[1] = (struct book){ "Hamlet", "William Shakespeare" }; my_books[2] = (struct book){ "The Odyssey", "Homer" }; print_books(my_books, n); printf("\nWriting to a file.\n"); write_books("books.txt", my_books, n); free(my_books); n = 0; printf("Done.\n"); printf("\nPress any key to read data from a file.\n\n"); temp = _getch(); my_books = read_books("books.txt", &n); print_books(my_books, n); free(my_books); n = 0; return 0;}void print_books(const struct book* books, int n){ for (int i = 0; i < n; ++i) { printf("Book %d : \"%s\" written by \"%s\"\n", i + 1, books[i].name, books[i].author); }}void write_books(const char* filename, const struct book* books, int n){ FILE* fw; if ((fw = fopen(filename, "w")) == NULL) { fprintf(stderr, "Can't open \"%s\" file.\n", filename); exit(EXIT_FAILURE); } fwrite(books, sizeof(struct book), n, fw); fclose(fw);}struct book* read_books(const char* filename, int* n){ FILE* fp; if ((fp = fopen(filename, "r")) == NULL) { fprintf(stderr, "Can't open \"%s\" file.\n", filename); exit(EXIT_FAILURE); } fseek(fp, 0, SEEK_END); long file_size = ftell(fp); rewind(fp); struct book* all_books; int si = file_size / sizeof(struct book); *n = si; all_books = (struct book*)malloc(sizeof(struct book) (n)); if (all_books == NULL) { printf("Failed"); return NULL; } fread(all_books, sizeof(struct book), *n, fp); fclose(fp); return all_books;}예제를 풀다보니 바이너리형식으로 추가,저장되는 코드로 만들어 버렸는데 이 경우에는 메모장에서 텍스트를 추가할 수 없으니 틀렸다고 보는게 맞겠죠?
-
미해결한 입 크기로 잘라먹는 Next.js(v15)
백엔드 서버를 배포했는데, 어쩔 땐 정상적으로 로딩이 되는데 어쩔 땐 500 에러가 발생합니다
무엇이 문제일까요? 간헐적으로 새로고침을 하면 제대로 로딩이 됐다 안 됐다 하는데 그로 인해 당연히 한입북스에 백엔드 데이터도 못 불러오는 거 같습니다!
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
23:29 질문입니다
메인 클래스에서 parent.getA()를 출력하는데 부모와 자식클래스에 똑같이 getA() 함수가 있으면 오버라이딩으로 자식클래스를 호출하나요? parent.getA()로 직접적으로 부모클래스를 호출하더라도요?
-
미해결반드시 알고 넘어가야 할 웹 기술 기초편
URL 인코딩 (18:25)
pw : cre &#cre(공백부분) 인코딩 %20 으로,userpw=cre%20%26%23 아닌가요? '+'기호는 어느 타입의 상황일 때 %20을 대신하여 사용되는지 궁금합니다 좋은 강의 제공해주셔서 감사합니다
-
미해결[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지
<7-5. 시퀄라이즈 사용하기>수업 질문 드립니다.
안녕하세요. 수업 중 막히는 것이 있어서 질문 글 올립니다.수업을 다 따라가고 연결테스트를 하려고 했는데,이렇게 에러가 생겼습니다.분명히 config폴더가 있고 그안에 config.json 파일이 존재하는데 없다고 하길래, 일단 npx sequelize init 을 했더니 이번에는 config 파일이 이미 존재한다는 소리를 하길래 --force 를 하긴했습니다.그런 다음에 다시 실행하니까,이렇게 오류메시지가 생겼어요.강의에는 models 폴더에 user라는 파일을 만들라는 건 듣도보도 못했는데, 뭐가 잘못된건지 잘 모르겠습니다.
-
해결됨6주 완성! 백엔드 이력서 차별화 전략 4가지 - 똑같은 이력서 속에서 돋보이는 법
eventPublisher.publishEvent 시 @Transactional을 걸어야 하지 않나요?
딩코님! 강의 너무 잘 듣고 있습니다~! 강의를 따라가며 디비와 트랜잭션 그리고 락에 관해 심화 내용도 듣고 포폴도 하나하나 잘 채워가고 있습니다! 다름이 아니라 딩코님이 내주신 과제 중에 의문이 있어 질문을 드리게 되었습니다. 1. 현재 학습 진도4주차 수강 후 락과 트랜잭션 최적화를 수행하고 있습니다. 현재 여러가지 작업(일기 작성, 포인트 적립, AI 댓글 작성 예약, 알림 이벤트 발생)에 대해 facade 계층을 만들어 중요한 작업(일기 작성, 포인트 적립)에 대해서는 트랜잭션을 묶어 우선적으로 처리되게 하고 AI 댓글은 TaskScheduler로 특정 시간 후에 비동기적으로 이루어지게 하며 알림은 spring event로 after commit 후 처리하려 합니다. 2. 어려움을 겪는 부분현재 이벤트 발행 (트랜잭션 커밋 후 실행됨, after-commit)에 대해 의문이 있습니다.현재 딩코님이 올려주신 코드에는@Component @RequiredArgsConstructor @Slf4j public class ImprovedEventJoinWithExternalApiUpdateFacade { private static final String TEST_PHONE_NUMBER = "01012341234"; private final EventExternalUpdateService eventJoinService; private final ExternalEventApi externalEventApi; private final ApplicationEventPublisher eventPublisher; public void joinEvent(Long eventId, Long memberId) { // 1. 기존 서비스로 이벤트 참가 처리 EventWithLockParticipant participant = eventJoinService.joinEventWithTransaction(eventId, memberId); // 2. 외부 API 호출 ExternalEventResponse response = externalEventApi.registerParticipant( eventId, memberId, participant.getEvent().getName() ); if (!response.isSuccess()) { throw new RuntimeException("외부 API 호출 실패: " + response.getErrorMessage()); } // 3. 외부 API 응답으로 참가자 정보 업데이트 eventJoinService.updateExternalId(participant, response.getExternalId()); // 4. 이벤트 발행 (트랜잭션 커밋 후 실행됨) eventPublisher.publishEvent(new EventJoinCompletedEvent( eventId, participant.getEvent().getName(), TEST_PHONE_NUMBER )); } }이렇게 코드 내에 @Transactional이 걸려있지 않습니다. 그런데 이벤트 리스너에는@Component @RequiredArgsConstructor @Slf4j public class EventJoinEventListener { private final KakaoTalkMessageApi kakaoTalkMessageApi; @Async @TransactionalEventListener(phase = TransactionPhase.AFTER_COMMIT) public void handleEventJoinCompleted(EventJoinCompletedEvent event) { try { kakaoTalkMessageApi.sendEventJoinMessage( event.getPhoneNumber(), event.getEventName() ); } catch (Exception e) { log.error("알림 발송 실패. eventId={}, eventName={}", event.getEventId(), event.getEventName(), e); } } } 이렇게 transaction이 커밋된 후에 실행되도록 AFTER_COMMIT이 걸려있는데, 이렇게 되면 이벤트 리스너가 제대로 실행이 안되지 않나요? 제대로 이벤트 리스너가 실행이 되려면 joinEvent부터 @Transactional이 걸려있어야 하지 않나요?3. 시도해보신 내용따로 간단하게 코드를 작성하여 테스트해보았습니다. @RequiredArgsConstructor @Component public class StudyFacade { private final StudyService studyService; private final ApplicationEventPublisher eventPublisher; // @Transactional : 주석 처리하면 밑에 eventEvent가 실행되지 않음 public void execute() { studyService.saveStudy(); eventPublisher.publishEvent("event published"); } @Async @TransactionalEventListener(phase = TransactionPhase.AFTER_COMMIT) public void executeEvent(String event) { System.out.println("event = " + event); } } @RequiredArgsConstructor @Service public class StudyService { private final StudyRepository studyRepository; @Transactional public void saveStudy() { studyRepository.save(new Study("test")); } } 실제로 execute 메서드의 @Transactional을 주석처리하면 밑의 이벤트 리스너인 executeEvent가 실행이 되지 않더라구요. 이러면 ImprovedEventJoinWithExternalApiUpdateFacade의 joinEvent부터 트랜잭션을 걸어야 하니까 딩코님이 말씀하신 트랜잭션을 최대한 작게 나누는 트랜잭션 최적화가 어렵지 않나요? 항상 강의 잘 듣고 있습니다! 감사합니다!
-
미해결Airflow 마스터 클래스
chatGPT API 실습은 이제 유료인 거 맞나요??
안녕하세요 강사님 수업 잘 듣고 있습니다!다름이 아니라 이제 chatGPT API 강의를 듣고 있는데print(resp.text)에서 에러가 계속 나서 보니5$이상 결제를 해야 API 이용이 가능하다는 말이 있어서 혹시 맞는지 확인 부탁드립니다..!
-
미해결[UI3 업데이트] 피그마 배리어블을 활용한 디자인 시스템 구축하기
Swap 기능문의
안녕하세요!디자인시스템 제작중에 유지보수를 고려하여 기존에 하나의 파일로 관리했던 Foundation과 Components를 분리하는 작업에 있습니다. Components의 Foundation 요소는 Publishing 을 통해서 적용할 계획입니다.분리하는 작업을 진행할 경우, Variable과 Styled이 깨져버리는데요이름이 동일할 경우 자동으로 교체 할 수 있는 방법이 있나요?
-
해결됨코딩 없이 AI 자동화 전문가가 되는 법, n8n 완벽 가이드
n8n 카카오톡 연동 강의도 해주셨으면 합니다.
안녕하세요.남박사님의 여러가지 강의를 앞전에 많이 들었지만특히 이번 강의는 전혀 지루하지 않고 처음 접하는 강의라서 정말 재미있게 잘 듣고 있습니다. 감사합니다.다름이 아니라 텔레그램이나 디스코드같은 연동은 있지만 실무에서 응용해서 쓸려면 카톡과 연동해서 만드는게 필수라고 보는데 혹시 차후에 카톡과 연동해서 강의를 만드실 예정은 없으신지요? 앞전에 파이썬 강의를 들었을때 다른 플랫폼보다 사전 작업이 굉장히 복잡하다는건 알고 있어서 n8n 중급강의 같은거로 해서 나왔으면 하네요 ㅎ
-
미해결실전! 언리얼 소울라이크 개발: A to Z
적 무기를 들면 패링이 안되는 문제?
안녕하세요, 저는 무기를 만들때 복사해서 BP_Sword1 , 2 , BP_Sword_Enemy 이런식으로 늘리고 Mesh Asset 만 바꿔서 사용중인데, 적이 들고있는 무기를 전용으로 만들고 그 무기도 똑같이 바닥에 배치해두어서 플레이어도 주워 사용할 수있게 했는데, 플레이어가 다른 Sword1,2 사용시에는 Left_Alt를 누르면 패링 애니메이션 기능 , 스태미너 감소 다 잘이루어집니다. 근데 적 무기랑 똑같은걸 들면 스태미너만 차감되고 패링 기능 + 애니메이션같은게 재생이 안되고 캐릭터가 멈춰버립니다. 그리고 좌클릭 ( 공격) , Space(구르기) 같은 모션을 하면 StateClear가 되서 돌아옵니다. 어느 부분을 체크해봐야 이것을 고칠 수 있을까요 ?
-
미해결비전공자도 이해할 수 있는 Docker 입문/실전
container 와 image 사이의 관계 질문
안녕하세요비전공자로 AI 관련 공부를 하면서 기본적인 도커 지식의 필요성을 느껴서 공부하고 있습니다. 실습하면서 궁금한 점이 생겼는대 docker run nginx 해서 container 를 생성해서 image 가 띄워진 것을 확인하고 docker stop 하고 docker rm 해서 해당 container 를 삭제하고 나서 docker image ls 확인해보니까 image 는 남아있습니다. container 삭제와 그 container 에 띄워져 있던 image 가 같이 삭제되지 않는것 처럼 보이는데 이걸 어떻게 이해하는게 좋을까요 너무 쓸데 없을 수 있는 질문 같아 죄송합니다.
-
해결됨GZS - 우리도 자빅스(Zabbix) - 그라파나, 슬랙 연동
인프라 구축에 대해 질문 드립니다.
윈도우01 : 10.0.2.30윈도우02 : 10.0.2.40cluster : 10.0.2.50service : 10.0.2.60 이렇게 host에 설정 했다면,장애조치에 cluster 관리 액세스 지점에는 10.0.2.50을 설정하고리소스 추가 후 ip 추가에는service 이름과 10.0.2.60을 설정하는게 맞는건지요? 그리고 하나의 서버에 대한 설명만 있던데,windows01에만 하는 것인지두 서버에 설정을 하는 것인지도 알고 싶습니다.이 부분에 대한 설명이 영상에는 없이하나의 서버 설정만 하고 종료하여정확한 판단이 어려워서 확인하고자 문의 합니다.
-
해결됨[Unity6] 나만의 서바이벌 게임 만들기
World 좌표
3. Character Movement 강의에서, Player 의 Transform Position 의 Y 값을 5로 잡으신 이유가,Terrain 의 world 좌표가 5 설정해서 라고 하셨는데, 혹시 이 부분은 어디서 설정을 하는건가요? 바로 앞 강의에서는, Terrain 의 Transform 의 Position 이 (-250,0,-250) 으로 설정되어 있고,Water 의 경우 Positon 이 (0,2,0) 으로 설정되어 있는데요.. 혹시, Terrain >> Inspector >> Terrain >> Paint Terrain >> Set Height 로 설정하는게 따로 있는건지요? Terrain 과 Water 의 포지션의 Y 값이 저렇게 잡혀 있어서, 캐릭터의 Y 좌표를 3 으로 잡아야 바닥에 붙는거 처럼 보이는데, 게임을 실행하면, 높이가 안 맞게 나오네요...
-
미해결3D 모델링 입문을 위한 라이노(Rhino) '꿀팁' Part.1
수업자료
안녕하세요~ 이제 막 강의를 듣기 시작했는데 2강 셋팅에서 수업자료가 다운받으면 'new.txt' 파일만 있고 영상에서처럼 셋팅파일이 따로 없습니다. 어디서 받아야 하나요?
-
해결됨PM을 위한 데이터 리터러시(프로덕트 데이터 분석)
데이터 로그 설계 강의에서 궁금한점이 있어 문의 드립니다.
안녕하세요데이터 로그 설계 강의에서 예시 로그를 위와 같이 해주셨었는데요최소 주문금액은 2만원이 되어야만 결제화면으로 넘어가니 아래와 같이 2만원이 넘은 시점에 클릭 이벤트가 한번 더 발생하는 로그가 있어야하는게 아닌가 싶어 문의 드립니다. 실무에서는 그런 로그는 따로 쌓지 않고결제화면으로 넘어갔으니 그걸로 충족을 하고 넘어왔겠구나라고 판단을 하는걸까요?