묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 핵심 원리 - 기본편
제어의 역전 IOC
Ioc,DI,그리고 컨테이너 5분 28초에서제어의 역전 설명이 나오는데, 프로그램의 제어 흐름을 직접 제어하는 것이 아니라 외부에서 관리하는 것이 IoC 라고 하는데 여기서 현재 외부에서 관리하는 것이 AppConfig인거고, 내가 작성한 코드를 직접 제어의 흐름을 담당한 것이므로 현재 프레임 워크가 아닌 라이브러리로 개발한 상태라고 이해하는 것이 맞을까요?
-
해결됨스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
여러 헤더를 조회 하는 방법에 대해서 학습 중에 이렇게 조회를 하는 이유가 있을까요?
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]강의에서 알려주신 내용 대로 코드를 통한 request, response 조회 외에도 크롬에서 관리자 페이지에서 조회 하는 방법도 학습 중에 알게 되었는데코드를 통해 조회 하면 어떤 장점이 있나요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
th:field 정리
checkbox의 th:field에 관하여..개인적으로 설명이 부족하다고 느껴서 혼자 요것저것해보고 내린 결론입니다 검증 부탁드립니다~ 기본형태<input type="checkbox" th:field="${A}" th:value="${B}"> th:field가 기본형th:value적용 필수(없으면 에러)th:field의 값이 th:value와 일치하면 checkedth:field가 리스트형th:value적용 필수(없으면 에러)리스트에 th:value가 있으면 checked 예외)th:field가 boolean 타입th:value 생략 가능 th:field의 값이 true이면 checked특이사항 : th:value가 뭐든 무시하고 true로 강제로 씀 => 이렇게 하는 이유는 선택 안 하면 어차피 서버로 true값이 안 넘어오기 때문th:value가 생략 가능한 이유 : 위에 두 유형과 다르게 th:filed와 th:value를 비교하는 것이 아닌 th:filed의 true/false값 만을 보고 checked를 판별하기 때문임자세한 내용은 밑에https://www.inflearn.com/questions/255425/%ED%8E%98%EC%9D%B4%EC%A7%80-%EC%86%8C%EC%8A%A4%EB%B3%B4%EA%B8%B0%EC%97%90%EC%84%9C-true-%EA%B0%92-%EC%A7%88%EB%AC%B8)
-
미해결스프링 핵심 원리 - 기본편
관심사의 분리19분24
인터페이스 discountpolicy에만 의존이 이라고 pdf 에 써있는데 사실상 memberrepository 인터페이스도 의존 이어서 2개 아닌가요? 근데 그냥 생략해서 pdf에 썼다고 보면 될까요?
-
미해결스프링 핵심 원리 - 기본편
관심사의 분리 9분12초 final
final 로 필드 선언하면 무조건 생성자가 기본 할당이 되어야 한다고 하는데 왜 그런건가요?
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
titanic_df['Cabin'].str관련 에러
안녕하세요 선생님, 다름이 아니라 타이타닉 생존자 예측1 강의를 복습하다 코드에 에러가 생겨 질문드립니다. titanic_df['Cabin']에서 첫 번째 문자열만 가져오기 위해서 titanic_df['Cabin'].str[:1]을 실행하였으나 'PandasArray' object has no attribute '_str_getitem' 라는 에러가 나왔습니다. 해당 에러를 고치기 위해 어떻게 코드를 수정해야 하는지 혹은 어떤 다른 방법으로 조치해야 하는 지 여쭙기 위해 질문드립니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
학습순서
이제 3강까지 2회독 정도하니 대략 이해가 됩니다. 한번 정도 더 볼 생각인데. 샘이 올리신 실전게임 2개를 서버 들어가기 전에 해 보는 것이 나을까요? 바로 서버로 들어가는 것이 나을까요? 학습 순서 문의 드립니다. 감사합니다
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
터미널 실행 시 SyntaxError: invalid syntax >>> 오류 발생
터미널 실행 후 python 3 입력 -> python 파일 주소 입력 시 SyntaxError: invalid syntax >>> 이런 오류가 발생합니다. 어떻게 해결해야할까요?
-
미해결[실전 게임 코드 리뷰] 유니티 캐주얼 게임 (엘리스팡)
스테이지 찾는부분 조금만 더 자세히 설명부탁드려요 ㅠㅠ
GetButton((int)Buttons.ChapterButton_1).gameObject.BindEvent(() => { OnClickChapterButton(1); });UI_SelectStageScene.cs 에서 왼쪽에 배치된 챕터 버튼들 같은 경우에는 위처럼 바인드해서 ChapterButton_1 은 OnClickChapterButton 메서드에 1을 전달하니까 너무 직관적인데요 Stage는 잘 이해가 안가요 ㅠㅠfor (int i = 0; i < _stageBlockUI.Length; i++) { _stageBlockUI[i] = Utils.FindChild<UI_StageBlock>(gameObject, "UI_StageBlock" + (i + 1), recursive: true); }Child에서 "UI_StageBlock" 를 전부 찾아서 _stageBlockUI[i] 에 저장하고UI_StageBlock.cs 에서 아래처럼 바인드를하고..?GetButton((int)Buttons.SelectStageButton).gameObject.BindEvent(OnClickStageButton);OnClickStageButton() 으로 넘어가서 _selectStageSceneUI?.OnSelectStage(_stage); OnSelectStage를 실행하면서 _stage를 전달하는데_stage가 몇인지는 어디서 판단하는건지 모르겠어요.그러다보니 Refresh()함수에서도 _stage로 Text입히는것도 연결이 안되네요.그리고 눌렀을때 콜백을 받아서 ShowStartStagePopup()으로 넘어가는데public void ShowStartStagePopup() { Managers.UI.ShowPopupUI<UI_StartStagePopup>(callback: (popup) => { int templateID = (_selectedChapter - 1) * 20 + _selectedStage; popup.SetInfo(Managers.Data.Stages[templateID]); });여기서도 tempateID 를 가져오기 위한 _selectedStage가 몇스테이지인지 어디서 판단하는건지를 모르겠어요 ㅠㅠ 저만 계속 질문하는것 같아 너무 죄송스럽습니다. C# 1편이랑 3편이랑 하고 넘어왔는데도 여전히 어려워요... 자꾸 질문하는게 죄송스러워서 맘편히 질문만 할수있는 강의 그런거라도 있으면 구입하고싶어요. 좋은 주말되세요!
-
해결됨혼자 공부하는 머신러닝+딥러닝
.score() 메소드에 대해 질문이 있습니다
안녕하세요 강사님 책으로 공부하고 있는 학생입니다.다름이 아니라 sklearn의 score()함수에 대해 질문이 있습니다.책의 158p 다중 회귀모델 훈련하기에서 예시코드로 print(lr.score(test_poly, test_target))이라는 코드를 작성하고, -144.40... 이라는 값을 얻게 됩니다. 제가 알기로는 score 메소드가 반환하는 것은 R^2 상관계수인데, 이게 보통은 0~1의 값을 가질텐데 이렇게 큰 음수가 나오는건 무엇을 의미하는걸까요? 대략적으로 이게 맞지 않다는 것은 이해하겠는데, 어째서 큰 음수가 나오는 것인지 통 이해가 되질 않습니다.사실 이 부분은 로지스틱 회귀를 공부하다 생긴 일부의 질문입니다.183p에서 시그모이드 함수를 학습하는 중, z값은 어떤 값이든 가능하다고 하셨는데 어째서 그것이 가능한걸까요? '3장에서 다룬 다중 회귀를 위한 선형 방정식과 같다'고 하셨는데 z값이 정확히 의미하는 바가 무엇인지 모르겠습니다. z값이 무엇인지 모르니 왜 (-∞~∞)의 범위를 가지는지 이해할 수 없고 더 나가지를 못하고 있습니다... 몇번을 싸매고 봐도 정말 잘 모르겠습니다..
-
해결됨직장인에게 꼭 필요한 파이썬-아래아한글 자동화 레시피
엑세스가 거부되었습니다가 뜨네요.
여러개 한글 파일을 열려고 하지만 엑세스가 거부되었습니다가 떠서 실행이 안되는데 원인이 무엇인지 모르겠네요 ㅠ
-
미해결만들면서 배우는 프론트엔드 DO IT 코딩 (Next.js, Typescript)
router 관련 질문입니다.
안녕하세요. 항상 잘 듣고 있는 학생입니다.다름이 아니라 '상세 메세지 보기' 버튼 클릭 시window.location.href 을 사용해서 상세 페이지로 이동하게 구현 하셨는데, next/router 말고 window.location이 사용된 이유가 있을까 문득 궁금해서 질문 남깁니다.외부 URL로 이동하는 건 아니고상세 페이지에서 back버튼은 next/Link를 사용하셔서, 혹시 window.location 방법이 서버사이드 측면에서 기능적 이점이 있는 걸까요? - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
-
해결됨it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
14번 뒤집은 소수 문제 Time Limit 왜일까요?
/*선생님의 문제풀이와 일치한데 모든 테스트케이스에 대해서 Time Limit이 뜹니다ㅠ 왜일까요?*/ #include <iostream> using namespace std; int n,i,k,c,v; inline int reverse(int x){ int d,res=0; while(x>0){ d=x%10; x/=10; res=res*10+d; } return res; } inline bool isPrime(int x){ int i; if(x==1) return false; for(i=2; i<x; i++){ if(x%i==0) return false; } return true; } int main(void){ scanf("%s", &n); while(n-->0){ scanf("%d",&v); k=reverse(v); if(isPrime(k)) printf("%d ",k); } return 0; }
-
해결됨토비의 스프링 부트 - 이해와 원리
애노테이션 관련 질문입니다.
안녕하세요 토비님 강의 잘 듣고 있습니다. 다름이 아니라 항상 스프링을 공부하면서 궁금한내용이 있어서 질문 드립니다.스프링을 보면 정말 많은 곳에서 애노테이션을 사용합니다.해당 강의에서도 @Controller안에 @Component를 적용해서 마치 자바에서 상속을 받는 것 처럼 작동합니다.하지만 제가 자바를 공부 할때 애노테이션을 이용해서 해당 클래스를 불러와 코드를 작성하거나 혹은 애노테이션 끼리의 상속 관계를 만드는 방법은 없었던 걸로 알고 있습니다.그렇다면 누군가가 애노테이션을 불러와서 이러한 작업을 대신 수행하고 있다는 뜻인데 이런 작업들은 '자바'를 이용해서는 어렵다고 생각합니다.그럼 이러한 작업은 스프링이 어떻게 하는지 궁급합니다.많이 부족한 질문 읽어 주셔서 감사합니다. ㅎㅎ
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
혼자 코드를 짜봤는데
안녕하세요. 강사님자료구조 공부하다가 방금 전 숫자만 추출하는 강의를 보고 이번 강의에서 응용해 보았는데 출력 값은 동일하나 채점 사이트에서는 오답이라고 나와서 어떤 부분에서 틀렸으며 어떻게 고쳐야 할까요?완전 코드를 잘못 구현했다면 제가 설명에서 어느 부분을 이해하지 못한 것일 까요? import java.util.Deque; import java.util.LinkedList; import java.util.Scanner; public class Main { public int solution(String s) { String answer = ""; s = s.replaceAll("[^0-9]", ""); // 숫자만 추출 while (s.length() > 0 && s.charAt(0) == '0') { s = s.substring(1); } Deque<Character> deque = new LinkedList<>(); // Deque 선언 (제네릭 타입 명시) // 문자열 s의 각 자리를 Deque에 추가 for (int i = 0; i < s.length(); i++) { deque.offer(s.charAt(i)); } // Deque에서는 0 제거 이후 while (!deque.isEmpty()) { char c = deque.peek(); if (c != '0') { answer += c; } deque.poll(); } return Integer.parseInt(answer); } public static void main(String[] args) { Main T = new Main(); Scanner sc = new Scanner(System.in); String str = sc.nextLine(); System.out.println(T.solution(str)); } }위 코드는 오류가 나고 아래 코드는 컴파일 에러가 납니다.import java.util.Scanner; public class Main { public int solution(String s) { String answer = ""; s = s.replaceAll("[^0-9]", ""); // 숫자만 추출 while (s.length() > 0 && s.charAt(0) == '0') { answer = s.substring(1); } return Integer.parseInt(answer); } public static void main(String[] args) { StringTest1_9 T = new StringTest1_9(); Scanner sc = new Scanner(System.in); String str = sc.nextLine(); System.out.println(T.solution(str)); } }
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
인텔리제이 에디터 관련 질문드립니다
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]함수를 연속으로 호출할 때 함수().함수().함수() 이런 형식으로 사용하곤 합니다. 인텔리제이에서 이런 문법을 쓰면 자동완성으로 탭이 연달아 일어나 보기가 껄끄럽습니다. 자동완성을 일자로 해주는 해결방법 있을까요??
-
미해결파이썬을 활용한 머신러닝 딥러닝 입문
모델 적용에 대한 문의 사항
안녕하십니까.2월에 인공지능 서비스 모델 설계을 수강후 주신 쿠폰으로 좋은 교육 듣고 있습니다.몇가지 문의 사항이 있어서 연락드립니다.1. 학습된 모델을 “Model 적용” regr.predict()를 사용하여 모델적용 결과를 도출하는게 맞는지요?2. 모델에 지속적인 학습을 위해서는 regr.fit()으로 전체 데이터를 재구성하여 재 학습시키는지, 아니면 추가 데이터만 학습 시키는 방법이 있는지요?예) regr.fit(diabetes_X_curr, diabetes_y_curr)3. . 모델을 계속 적용하여 결과를 도출하고, 학습을 지속적으로 하면서 결정계수가 계속 낮아진다면 어떤 작업을 해야 하는지요?010.Simple Linear Regression 정리 자료
-
미해결[NarP Series] MVC 프레임워크는 내 손에 [나프2탄]
파일 업로드 부분에서 이녀석이 계속 에러가 뜨네요
java.lang.Error: Unresolved compilation problems: The type javax.servlet.http.HttpServletRequest cannot be resolved. It is indirectly referenced from required .class files The method parseRequest(HttpServletRequest) from the type ServletFileUpload refers to the missing type HttpServletRequest톰캣 10버전을 쓰고 있는데 자꾸 javax로 인식하고 있는 것 같습니다.....임포트 부분을 보면 jakarta로 받고 있는데 왜 이런 에러가 생기는지 알 수 있을까요?
-
미해결호돌맨의 요절복통 개발쇼 (SpringBoot, Vue.JS, AWS)
Testcase 상에서 @Trasactional 사용시
당연히 구글링 해보셨져? 원하는 결과를 못찾으셨나요? 어떤 검색어를 입력했는지 알려주세문제가 발생한 코드(프로젝트)를 Github에 올리시고 링크를 알려주세요.안녕하세요. 호돌맨님 강의 잘 보고 있습니다! Post 관련 테스트를 작성할 때, 저는 @Transactional을 이용해서 DB에 데이터가 반영되지 않도록 시도했습니다.그리고 테스트를 진행하였습니다. 메서드를 각각 테스틀 할 때는 통과했지만, 메서드 모두 동시에 돌릴 때는 테스트 통과에 실패하였습니다. @Transcational, 영속성 컨텍스트로 구글링을 시도했었습니다. @DirtiesContext(classMode = ClassMode.AFTER_EACH_TEST_METHOD)를 사용하면 영속성 컨텍스트를 새로 생성함으로써 테스트가 모두 통과가 되었지만, 매번 영속성 컨텍스트를 새로 생성하는 것은 비효율적이라고 생각했습니다.. 결론적으로 제가 본 바로는 유의미한 결과를 얻을 수 없었습니다.. 아래 코드와 그에 출력되는 결과를 이미지로 첨부해두었습니다. 혹시 어떤 것이 원인인건지 힌트라도 알려주실 수 있을까요?? 구글링 키워드를 알려주셨으면 좋겠습니다..! (해결법은 제가 찾겠습니다!!)PostService.java @Service @RequiredArgsConstructor @Transactional(readOnly = true) public class PostService { private final PostRepository postRepository; @Transactional public void save(PostCreateDto postCreate){ // Post post = new Post(postCreate.getTitle(), postCreate.getContent()); Post post = Post.builder() .title(postCreate.getTitle()) .content(postCreate.getContent()) .build(); postRepository.save(post); } public Long findPostById(Long postId){ Post post = postRepository.findById(postId) .orElseThrow(() -> new IllegalArgumentException("존재하지 않는 게시물입니다.")); return post.getId(); } } PostServiceTest.javaimport com.toktok.core.domain.post.Post; ... @SpringBootTest @Transactional. //똑같이 영속성 컨텍스트를 공유하고 있기 때문에 save가 롤백되어야 하지 않나요??.. class PostServiceTest { @Autowired private PostService postService; @Autowired private PostRepository postRepository; @Test @DisplayName("데이터가 저장 되어야합니다.") void save_test(){ //given PostCreateDto postDto = PostCreateDto.builder() .title("제목입니다.") .content("내용입니다.") .build(); //when postService.save(postDto); //then Post post = postRepository.findAll().get(0); assertThat(post.getId()).isEqualTo(1L); assertThat(post.getTitle()).isEqualTo(postDto.getTitle()); } @Test @DisplayName("데이터는 하나 조회") void find_test(){ //given Long postId = 1L; PostCreateDto postDto = PostCreateDto.builder() .title("글 제목입니다.") .content("글 내용입니다.") .build(); postService.save(postDto); //when Long postById = postService.findPostById(1L); //then assertThat(postById).isEqualTo(1L); } @Test @DisplayName("존재하지 않는 데이터 확인") void not_exist_post(){ //given Long notExistPostId = 2L; Post post = Post.builder() .title("글 제목입니다.") .content("글 내용입니다.") .build(); Post savedPost = postRepository.save(post); //when postService.findPostById(savedPost.getId()); //then assertThrows(IllegalArgumentException.class, ()-> postService.findPostById(notExistPostId)); } }
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
오류
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.set get 오류 해결하려고 import 바꾸니 이렇게 오류가 생기네요..