묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 기반 REST API 개발
spring doc 관련 파일 생성 관련 배포 관련 질문 드립니다.
안녕하세요. 설 연휴 잘 보내셨는지 궁금하네요.늦었지만 새해 복 많이 받으셨으면 좋겠습니다. 설 연휴에 처음부터 끝까지 재수강하여 재밌게 잘 배웠네요. 다름이 아니라 배포관련하여 질문이 있습니다. 일단 배포 전 항상 테스트 하는 것에 대해서 부정적인 입장은 아닙니다. 만약에 MSA를 구축하지 않고 단일 프로젝트에서프로젝트 규모가 커진다면 배포 할 때 마다 모든 테스트를 돌리기가 버거워질 텐데요. 그래서 테스트 스킵을 고려하는 팀에서는 spring doc snippet생성을 어떻게 해야 할까요..?
-
해결됨구글 애드센스 수익형 워드프레스 블로그 만들기
반응형 설정 오류
강사님 안녕하세요!워프 반응형 설명하실때 PC, 테블릿, 모바일 각각 설정을 다르게 변경해주시는데 저는 테블릿에서 설정을 바꾸면 그게 전체에 적용되어서 각각 설정이 안되고 전체 변경이 됩니다ㅠㅠ계속 이부분을 설명하시는데 방법이 없어서 질문드립니다...ㅠㅠ제가 설정을 잘못한걸까요?PC에서 저장하고 테블릿 부분 다르게 변경해도 동일하게 PC에도 해당 설정이 반영됩니다ㅠㅠ
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
사다리타기질문
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.import sys def DFS(L,x,y): global cnt if a[x][y]==2: print(cnt) sys.exit(0) else: if L==0: for i in range(10): cnt=i ch[x][y]=1 DFS(L+1,x,y+i) ch[x][y]=0 else: path_count=0 next_path=-1 for j in range(3): xx=x+dx[j] yy=y+dy[j] if 0<=xx<10 and 0<=yy<10 and a[xx][yy]==1 and ch[xx][yy]==0 : next_path=j path_count+=1 #갈 수 있는 방향이 아래로 하나만 있는 경우 if path_count==1: ch[xx][yy]=1 DFS(L+1,x+dx[next_path],y+dy[next_path]) ch[xx][yy]=0 #여러 방향으로 이동이 가능 elif path_count>1: for k in range(3): xx=x+dx[k] yy=y+dy[k] if 0<=xx<10 and 0<=yy<10 and a[xx][yy]==1 and ch[xx][yy]==0 : ch[xx][yy]=1 DFS(L+1,xx,yy) ch[xx][yy]=0 if __name__=="__main__": a=[list(map(int,input().split())) for _ in range(10)] dy=[1,-1,0]#우 좌 히 dx=[0,0,1] cnt=0 ch=[[0]*10 for _ in range(10)] DFS(0,0,0) 저는 up-bottom형식으로 탐색을 했는데 출력값이 아예나오지 않습니다. 어느 부분이 잘못되었는지 알 수 있을까요? ㅠㅠ
-
미해결[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
다음 강의는 언제쯤...
안녕하세요 코드 팩토리님..강의 너무 잘듣고 있습니다.혹시 nestjs part2 강의는 언제 계획되어 있으신지 궁금합니다.빨리 보고 싶어서요^^;;
-
해결됨[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
RegisterAccept를 여러번 호출해줘야 하는 흐름이 잘 이해가 안됩니다.
강의 39분쯤 그림판을 켜서 설명해주시는 부분에서accept 또한 iocp 흐름을 따라 낚싯대를 다시 던져줘야 한다고 설명해 주셨는데요,Listener의 accept가 왜 다시 호출되어야 하는지가 잘 이해가 안됩니다. 한번 연결된 후에 작업이 완료되고 기존의 클라이언트가 여전히 연결되었는지 재확인 하는 과정인가요?
-
미해결
안드로이드 스튜디오 프로젝트 생성 시 빌드 오류
안드로이드 스튜디오로 프로젝트 만드려고 하는데 만들 때마다 에러가 발생합니다. gradle 문제 같은데 어느 부분이 문제인지 모르겠어요.No Activity로 생성했습니다.
-
미해결HTML+CSS+JS 포트폴리오 실전 퍼블리싱(시즌1)
input 요소 높이값 부여 관련 질문
실전 퍼블리싱 제작 part2의 배경이미지 풀스크린 검색창 강의를 듣고 있습니다.input 요소에 높이값을 부여했더니 첨부한 스샷과 같이 text input과 submit input의 위치가 어긋나는데요, 어떤 이유에서 이러는건지 잘 모르겠습니다.CSS의 다른 속성들은 모두 강의 내용과 동일하게 했고, 두 input 요소에 공통으로 높이값만 추가한 상태입니다. 감사합니다
-
미해결쉽고 빠르게 배우는 Vue 3 기본 (Composition API)
vuejs devtools가 안깔립니다 ㄷ;
이거 버전 문제로 안깔리는건지 모르겠습니다 ㅠㅠ;크롬문제인가요??
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
2depth의 @OneToOne, @ManyToOne N+1문제
Shop, Business, User라는 세 엔티티에 연관관계가 각각 맺어져 있습니다.Shop - Business(연관관계 주인은 Business, OneToOne관계)Business - User(연관관계 주인은 Business, ManyToOne-OneToMany 관계)여기서, 모든 관계는 Lazy로딩으로 설정되어 있고, shop의 business는 null로 존재하는 상황입니다.문제의 상황은 크게 두가지인데요.Shop을 조회할 때 Business Lazy로딩으로 설정되었지만, Business에 대한 조회 쿼리가 발생위 상황에서 Business가 조회되고, 거기에 ManyToOne으로 연관된 User도 조회 쿼리 추가로 발생그래서 1개의 조회를 했는데, 2개가 추가로 나옵니다. 사실 첫 번째 문제는 찾아보니 null값을 Proxy객체가 담을 수 없어서 조회쿼리가 발생하는 것이라고 들었습니다. 그런데 두 번째 쿼리(User의 조회 쿼리)는 왜 발생하는지 도저히 모르겠네요..ㅠ 아래는 Shop, Business, User의 코드입니다. 코틀린으로 작성된 점 양해부탁드립니다.@Entity class Shop( @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "shop_id") var id: Long = 0L, ... @OneToOne(mappedBy = "shop", cascade = [CascadeType.ALL], orphanRemoval = true) var business: Business? = null, )@Entity class Business ( @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "business_id") var id: Long = 0L, ... @OneToOne(fetch = FetchType.LAZY) @JoinColumn(name = "shop_id") var shop: Shop, @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "user_id") val seller: User )@Entity class User( @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "user_id") var id: Long = 0L, ... @OneToMany(mappedBy = "seller", cascade = [CascadeType.PERSIST], orphanRemoval = true) val businessList: MutableList<Business> = mutableListOf(), )
-
미해결백엔드 개발자 성능 개선 초석 다지기
LRU 알고리즘 질문
memoryStoreEvictionPolicy 에 가장 최근에 액세스된 항목을 먼저 제거하는 LRU 알고리즘을 사용했습니다. 라고 자료에 나와있는데, 제가 알기로 LRU 알고리즘은 가장 오랫동안 사용되지 않은 데이터를 삭제하는 것으로 알고 있습니다. 자료에서 설명하신 의미가 잘 이해가 되지 않아서 질문 드립니다.
-
미해결스프링 시큐리티 OAuth2
ExceptionTranslationFilter에서 this.authenticationEntryPoint.commence(request, response, reason)에 중단점이 걸리지 않습니다ㅠ
안녕하세요.거의 동일한 환경에서 실습 진행 중입니다.스프링부트 2.7.2 버전입니다.리소스 서버 인증 방식으로 해서 루트 경로 접근 시 401 error가 뜨려면 기본 엔트리포인트 객체인 BearerTokenAuthenticationEntryPoint의 commence 함수가 호출되어야 할 텐데요..그 로직을 안 탑니다. 그런데 401 error은 정상적으로 떠요.ExceptionTranslationFilter의 sendStartAuthentication 함수 안에도 중단점을 걸어보고 BearerTokenAuthenticationEntryPoint의 commence 함수에도 중단점을 모두 걸어봤는데도 안 되네요. 미스테리입니다. yml 파일만 작성했으므로 코드 상의 실수도 없을 텐데 말이죠ㅠ+다른 엔트리 포인트에도 전부 중단점을 걸어보았는데 어디에도 걸리지 않네요브랜치 링크입니다!
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-C 질문있습니다.
http://boj.kr/5e6cf7cdc6fc4d2c8d4cbfe08d65038c y,x기준이 아닌 x,y기준으로 풀어보았습니다.오버플로우 조건식도 &&으로 바꾸어보았습니다. 테스트 케이스는 모두 통과했는데 또 오답입니다. 무엇을 잘못하고 있는 걸까요 ㅠ
-
해결됨독하게 시작하는 C 프로그래밍
문자(배)열 복사하는 함수 만들기
질문드립니다. 1.size_t를 하시는 이유는 nsiez처럼 예외처리를 위해서 표시하는 건가요?문제에서 첫번째 매개변수의 메모리 크기가 되도록 구현하기 위해서 사용하는 건가요?해당 for문만(strlen 사용 없이)위에 작성하더라도 구현은 되는 것으로 처음에 작성했습니다. 그렇게 해도 Deepcopy에는 어긋나는게 없는지 궁금합니다.만약 위 사진과 같이 return을 하면 지역 변수 주소 반환 오류에 해당하나요? 여기서 szBufferDst는 주소상수 즉 &szBufferDst[0]이 기준요소 이므로 위에 함수에서 포인터를 붙여서 사용하는 건가요? 약 반나절 동안 고민해서 풀어봤습니다만 속이 시원하게 풀리지 않네요 ㅠㅠ 제가 이해를 잘한건지 궁금해서 오늘은 질문이 조금 많습니다. 양해부탁드려요.🤓
-
미해결홍정모의 따라하며 배우는 C언어
이게 왜 120이랑 5가 나올까요
나름 잘 이해했다고 생각했는데 어떤 부분을 잘못 이해하고 있길래... #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> long loop_factorial(int n); long recursive_factorial(int n); int main() { int num = 5; printf("%d\n", loop_factorial(num)); printf("%d\n", recursive_factorial(num)); } long loop_factorial(int n) { int sum = 1; for (int i = 1; n >= i; n--) sum *= n; return sum; } long recursive_factorial(int n) { int sum = 1; sum *= n; if (n > 0) recursive_factorial(n - 1); return sum; }
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
PlayerController의 존재 의미
지금까지 컨트롤에 관련된 강의를 들으면서 PlayerController는 무슨 역할을 하는지 궁금합니다. 제가 2~3강을 듣고 이해한 흐름은 다음과 같습니다. AABCharacterPlayer의 BeginPlay함수에서 맵핑 컨텍스트(IMC)를 설정하는데 PlayerController를 가져와 Subsystem을 선언하는데 쓰인다. (추후엔 SetCharacterControl로 바뀜)Subsystem은 IMC를 운영하는 클래스로 Subsystem에서 InputSystem을 가져와서 DefaultMappingContext을 맵핑 컨텍스트 에셋으로 추가한다. DefaultMappingContext는 AABCharacterPlayer의 CDO에서 주소값으로 가져온다. DefaultMappingContext는 IA_Jump, IA_Move, IA_Look가 등록된 IMC로 이걸 SubSystem에 등록시킨다. 이는 Move또는 Look함수에 있는 AddControllerYawInput 함수를 파보면 PlayerContoller에 Rotation값을 계속 갱신하는 것으로 움직인다는 것을 알 수 있다. 그렇다면 PlayerController는 그냥 GameMode에서 지정만 하고 실질적인 구현은 없는건가요?
-
미해결스프링 DB 1편 - 데이터 접근 핵심 원리
테스트코드에서 transactionManager() 사용이유
안녕하세요@Bean PlatformTransactionManager transactionManager(){ return new DataSourceTransactionManager(dataSource()); }테스트코드에서 이 로직을 제거해도 작동이 잘 되는데요MemberServiceV3_3 클래스 에서@Transactional 을 사용해서트랜잭션 설정하는 로직이 필요없을것 같았는데위 코드를 사용하신 이유가있으실까요?
-
해결됨실무에 바로 적용하는 프런트엔드 테스트 - 1부. 테스트 기초: 단위・통합 테스트
3.4. 타이머 테스트의 마지막 테스트 질문입니다.
it('연이어 호출해도 마지막 호출 기준으로 지정된 타이머 시간이 지난 경우에만 함수가 호출된다.', () => { const spy = vi.fn(); const debouncedFn = debounce(spy, 300); // 최초 호출 debouncedFn(); // 최초 호출 후 0.2초 후 호출 vi.advanceTimersByTime(200); debouncedFn(); // 두번째 호출 후 0.1초 후 호출 vi.advanceTimersByTime(100); debouncedFn(); // 세번째 호출 후 0.2초 후 호출 vi.advanceTimersByTime(200); debouncedFn(); // 👈 4번째 호출 // 네번째 호출 후 0.3초 후 호출 // 최초 호출 후에 함수 호출 간격이 0.3초 이상 -> 다섯번째 호출이 유일 vi.advanceTimersByTime(300); debouncedFn(); // 👈 5번째 호출 // 다섯번을 호출했지만 실제 spy함수는 단 한 번만 호출 expect(spy).toHaveBeenCalledTimes(1); }); 안녕하세요. 새해 복 많이 받으세요 :)다름이 아니라 위 코드에서 4번째 호출 후 바로 뒤, vi.advanceTimersByTime(300);로 인해 0.3초가 흘렀고 이로 인해 expect(spy).toHaveBeenCalledTimes(1); 이 맞다고 나온 것이 아닌지 궁금해서 질문드립니다.강의에서는 4번째 호출이 아닌 5번째 호출로 인해 호출된다고 하셨는데(최초 호출 후에 함수 호출 간격이 0.3초 이상인 경우는 다섯번째 호출이 유일하다고 하신 것 같아요) 5번째 호출 후에는 0.3초가 흘렀다는 가정 (vi.advanceTimersByTime(300);)이 없고 제가 혼자 테스트 해보며 5번째 호출 후에 vi.advanceTimersByTime(300);를 넣어 0.3초가 흘렀다고 가정을 하니 호출이 2번 되었다고 떠서요.제가 debounce를 헷갈려 했는데 제가 아직 잘 이해하지 못한 부분이 있는 건지 아니면 실제로 잘못 설명된 부분이 있는 건지 모르겠어서 질문 드립니다. 감사합니다.
-
해결됨그림으로 쉽게 배우는 운영체제
질문
복습을 하는 중에 의문점이 생겨서 조심스럽게 질문 남겨드립니다. 제가 찾아보기로는 0번 프로세스는 윈도우 기준 탐색기, 리눅스 기준 shell로 알고 있습니다. 그런데 강의 설명중에 자식 프로세스가 종료되어 exit status값을 부모 프로세스에게 전달하고 자식프로세스를 종료시키고 부모프로세스도 종료된다고 말씀하셨는데 그러면 리눅스 환경에서 shell의 자식 프로세스인 A라는 프로세스가 실행되다가 종료되고 exit status값을 반환하고 종료가 되었다고 가정하면 shell도 조만간 종료가 되어야 하는데 실제로는 그렇지 않습니다. 혹시 이 부분에 대해서 알려주실 수 있으실까요?
-
해결됨스프링 DB 1편 - 데이터 접근 핵심 원리
h2 데이터베이스 관련
안녕하세요 h2 데이터베이스에 대한 질문이 있습니다. h2 데이터베이스는 "연결" 누르고 sql 실행할 수 있는 창에 들어왔다면 이게 데이터베이스 서버를 띄운건가요?그럼 이 데이터베이스 창을 닫으면 자동으로 데이터베이스 서버를 다운시킨건가요? 그러니까 종료시킨건가요?그럼 spring 실행을 시킬때 항상 이 h2 데이터베이스에 연결해서 접속한다음에 실행해야하는건가요?그리고 현재는 저 한명만이 h2로 테스트하는거니까 그냥 계속 Embedded mode로 접속해도 되는거죠?감사합니다.
-
해결됨2주만에 통과하는 알고리즘 코딩테스트 (2024년)
1강 4번 예시 답안에 대한 질문
문제 4. 숫자야구 ( # 2503 )A 는 3 자리 숫자로 된 정답을 하나 정합니다.B 는 3 자리 숫자를 제시해서 A 가 생각하고 있는 정답을 맞히려고 합니다.B 가 말한 숫자가 정답에 포함되어 있다면 1 Ball 입니다.B 가 말한 숫자가 정답에 포함되어 있고, 자리도 동일하다면 1 Strike 입니다.다른 숫자로 이루어진 세 자리수Strike 와 Ball 의 결과를 보고, 가능한 숫자를 계산하는 프로그램을 작성하세요.4123 1 1 356 1 0 327 2 0 489 0 1 2백준 사이트 들어가보니 가능한 숫자 324,328 이렇게 두 개이어서 결괏값이 2라고 나와있는데,329를 생각하고 있어도 위와 같은 s,b 가 가능한 것이 아닌가요?