묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결정말 쉽게 풀어보는 코딩 테스트 top 기본 문제 (with 자바)
문제 원본을 어디에서 볼 수 있나요?
강의자료의 github는 풀이 java파일만 있는거같아서요.
-
미해결타입스크립트 입문 - 기초부터 실전까지
선생님 질문이 있어서 뷰에 대하여 여쭤봅니다...
리액트 요새 클래스에서 훅을 쓰는 추세인데.. 저희 회사에서는 뷰 nuxt.ts기반으로 개발하면서 클래스 기반을 쓰는 데 그게 최신 추세인가요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
열거형 앞에 캐스팅 하는 거 불편하네요
C에서는 그냥 Choice.sicissors라고 써도 괜찮았던 것 같은데 C#은 일일히 캐스팅해줘야 하는 건가요? 이런 Rule이 장단점이 있는 것 같네요. 설정에서 뭔가 바꿔줄 수 있을 것 같은데...
-
미해결Node.js - Express
main.js 소스중 일부 log, logout_process 소스가 빠져있어 부탁드립니다.
안녕하세요. 수고많으십니다. main.js 소스중 일부 log, logout_process 소스가 빠져있어 부탁드립니다. 감사합니다.
-
미해결작정하고 장고! Django로 Pinterest 따라만들기 : 바닥부터 배포까지
회원가입 구현시 에러
에러 메시지가 아래와 같이 출력됩니다. 뒷부분 로그인/로그아웃까지 진행했는데, 회원가입 후 로그인, 로그아웃은 제대로 돌아갑니다. 아마 회원가입 후 db에서 넣고 그 다음부터 에러가 나는 듯 합니다. django.urls.exceptions.NoReverseMatch: 'acocuntapp' is not a registered namespace
-
미해결공공데이터로 파이썬 데이터 분석 시작하기
value_counts() 관련
선생님 df_last['"전용면적"].value_counts() 하면 전용면적별로 해당 빈도수가 나오는데.. 혹시 결측치 제외하고 보려면 어떻게 해야 하나요? df_last['"전용면적"].notnull().value_counts() 도 해봤고.. df_last['"전용면적"].value_counts().notnull() 도 해봤고.. df_last['"전용면적"].notnull.value_counts() 도 해봤는데.. 제가 원하는 값이 안나오네요..ㅠ
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
Raycast에서 카메라 위치를 transform.position이 아닌 _delta 로 하는 이유
영상의 3:24초 경에서 Player(유니티짱)에서 Camera로 향하는 Raycasting을 할 때 왜 카메라 위치에 transform.position이 아니라 _delta를 하나요? _delta는 플레이어에서 카메라까지의 거리를 담은 vector3라고 알고 있어서요. 그래서 제가 생각했을 땐 _delta가 아닌 transform.position을 넣어야 잘 작동할 것 같은데 막상 transform.position을 넣었더니 카메라 위치가 아닌 곳으로 ray를 쏘고 있더라고요. Camera의 position을 넣어야 할 것 같은 Physics.Raycast()의 두번째 인자에 _delta 를 값을 넣어야 잘 작동하는 이유가 무엇인가요?
-
미해결공공데이터로 파이썬 데이터 분석 시작하기
강의 17분 캡처내용
선생님 안녕하세요 강의 17분에서 캡처한 그림인데요.. 맨윗줄에서 2번째 그림 2번째 줄에서 1번째 그림 그 2개의 그림에서는 왜 서울 지역만 점이 찍힌걸로 보이나요..? 다른 scatterplot 의 그림들과 달리 확연히 서울 지역의 분홍색점만 찍혀 있는 것 같아서요..
-
미해결바닥부터 시작하는 STM32 드론 개발의 모든 것
4-1 FS-i6 수신 테스트
안녕하세요. 강의대로 따라한다고 하지만 결과가 항상 달라 애를 먹고 있습니다. 현상 : 수신 결과가 깨져서 나옵니다 UART5에서 수신된 데이터를 UART6으로 보는 것에서 각 통신속도가 115200으로 같은데 왜 안나올까요. 아래 코드에서 확인 가능할까요? ? ?. void MX_UART5_Init(void) { LL_USART_InitTypeDef USART_InitStruct = {0}; LL_GPIO_InitTypeDef GPIO_InitStruct = {0}; /* Peripheral clock enable */ LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_UART5); LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOC); LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOD); /**UART5 GPIO Configuration PC12 ------> UART5_TX PD2 ------> UART5_RX */ GPIO_InitStruct.Pin = LL_GPIO_PIN_12; GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; GPIO_InitStruct.Pull = LL_GPIO_PULL_UP; GPIO_InitStruct.Alternate = LL_GPIO_AF_8; LL_GPIO_Init(GPIOC, &GPIO_InitStruct); GPIO_InitStruct.Pin = LL_GPIO_PIN_2; GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; GPIO_InitStruct.Pull = LL_GPIO_PULL_UP; GPIO_InitStruct.Alternate = LL_GPIO_AF_8; LL_GPIO_Init(GPIOD, &GPIO_InitStruct); /* UART5 interrupt Init */ NVIC_SetPriority(UART5_IRQn, NVIC_EncodePriority(NVIC_GetPriorityGrouping(),0, 0)); NVIC_EnableIRQ(UART5_IRQn); USART_InitStruct.BaudRate = 115200; USART_InitStruct.DataWidth = LL_USART_DATAWIDTH_8B; USART_InitStruct.StopBits = LL_USART_STOPBITS_1; USART_InitStruct.Parity = LL_USART_PARITY_NONE; USART_InitStruct.TransferDirection = LL_USART_DIRECTION_RX; USART_InitStruct.HardwareFlowControl = LL_USART_HWCONTROL_NONE; USART_InitStruct.OverSampling = LL_USART_OVERSAMPLING_16; LL_USART_Init(UART5, &USART_InitStruct); LL_USART_ConfigAsyncMode(UART5); LL_USART_Enable(UART5); } /* USART6 init function */ void MX_USART6_UART_Init(void) { LL_USART_InitTypeDef USART_InitStruct = {0}; LL_GPIO_InitTypeDef GPIO_InitStruct = {0}; /* Peripheral clock enable */ LL_APB2_GRP1_EnableClock(LL_APB2_GRP1_PERIPH_USART6); LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOC); /**USART6 GPIO Configuration PC6 ------> USART6_TX PC7 ------> USART6_RX */ GPIO_InitStruct.Pin = LL_GPIO_PIN_6|LL_GPIO_PIN_7; GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; GPIO_InitStruct.Alternate = LL_GPIO_AF_8; LL_GPIO_Init(GPIOC, &GPIO_InitStruct); /* USART6 interrupt Init */ NVIC_SetPriority(USART6_IRQn, NVIC_EncodePriority(NVIC_GetPriorityGrouping(),0, 0)); NVIC_EnableIRQ(USART6_IRQn); USART_InitStruct.BaudRate = 115200; USART_InitStruct.DataWidth = LL_USART_DATAWIDTH_8B; USART_InitStruct.StopBits = LL_USART_STOPBITS_1; USART_InitStruct.Parity = LL_USART_PARITY_NONE; USART_InitStruct.TransferDirection = LL_USART_DIRECTION_TX_RX; USART_InitStruct.HardwareFlowControl = LL_USART_HWCONTROL_NONE; USART_InitStruct.OverSampling = LL_USART_OVERSAMPLING_16; LL_USART_Init(USART6, &USART_InitStruct); LL_USART_ConfigAsyncMode(USART6); LL_USART_Enable(USART6); }
-
미해결공공데이터로 파이썬 데이터 분석 시작하기
pairplot관련
pairplot으로 나온 9개 그림에서요.. 왜 9개가 나오는 건가요.. 수치데이터가 연도, 월, 평당분양가격 3개로 인식해서 3*3이라면.. 서로 행과 열이 겹치는 그래프는 예를 들어 맨아래 맨오른쪽 그래프의 경우에는 x축 평당분양가격, y축 평당 분양가격..인건가요? 가운데 그림은 x축- 월, y축-월 이렇게 되는 건가요..?(이 그래프가 무슨 의미가 될 수 있는지도 의문입니다..ㅠ) 9개의 그림에서 각 그림마다 x축과 y축을 어떻게 이해해야 하는 건지..ㅠ자세히 설명 부탁드립니다. 그리고 마지막으로 pairplot 그림이 저는 다 붙어져서 그려지고 있는데 서로 간격을 두고 그리려면 어떻게 해야 하나요..ㅠ? plt.figure(figsize=(10,3)) 이 코드를 seaborn 그래프 코드 쓰기 전에 써도 적용이 안되더라고요.. ㅠ
-
미해결홍정모의 따라하며 배우는 C++
네트워킹 맛보기 - Boost.Asio Socket에서 멀티쓰레드 채팅프로그램 예제
안녕하세요. 교수님의 c++강의를 정말 잘듣고 있는 학생입니다. 유튜브로부터 시작해서 인프런으로 넘어와서 강의를 오늘 끝까지 다 들었습니다. 마지막 챕터중에 boost asio로 네트워크 프로그램을 짜는 강의가 있는데 여기에서 숙제로 멀티쓰레딩을 사용해서 채팅프로그램을 작성해봐라 라고 숙제를 내주신 부분이 있는데 이 부분에 대해서 숙제 예제 코드같은것을 없는지 궁금합니다. 답변주시면 감사하겠습니다. 좋은 강의 들려주셔서 정말 감사합니다.
-
미해결공공데이터로 파이썬 데이터 분석 시작하기
FacetGrid 관련
기존 강의에서는 kdeplot 서브플롯만들 때 FacetGrid 이용해서 아래의 코드였는데 g = sns.FacetGrid(df_last, row="지역명", height=1.7, aspect=4,) g.map(sns.distplot, "평당분양가격", hist=False, rug=True); 똑같이 알려주신 페이지에 가보니 g = sns.FacetGrid(df_last, row="지역명", height=1.7, aspect=4,) g.map(sns.kdeplot, "평당분양가격") 이 코드로 변경되어있더라고요..! 이 부분도 seaborn이 업데이트되면서 업데이트 된 부분인거지요? 그리고 업데이트 공지가 어디있나요? ㅠ 강의 새소식에 찾아봤는데 제가 잘 못찾는건지.. 못찾았어요..ㅠ
-
미해결공공데이터로 파이썬 데이터 분석 시작하기
kdeplot 설명 관련
선생님 10:55~58초 쯤에 평균 분양가격이라서 cumulative가 의미가 없다고 하셨는데요.. price = df_last.loc[df_last["평당분양가격"].notnull(), "평당분양가격"] price 변수에 저렇게 되어있는데 왜 평균 분양가격이라고 하시는건가요..?..? 평균값이 아닌 평당분양가격의 결측치와 공백값 제거해서 총 3957개가 모두 들어있는데.. cumulative 해주면 의미 있는 것 아닌가용..? 그리고 kdeplot 에서.. multiple=layer/level=10/thresh=0.05/bw_method='scott' 값들이 default로 들어가 있는 것 같은데.. 각각 무슨 의미인가요...ㅠ?
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
안녕하세요! 영한님! 질문 하나 드려도 될까요?
안녕하세요 영한님! 인프런과 타사 플랫폼으로도 강의를 잘 보고 있습니다. 추운 날씨에 감기 조심시고 고생 너무 많습니다! 다름 아니라 쿠키 Secure과 HttpOnly 설명을 들었습니다 Secure는 Https일때만 쿠키를 세팅해주고 HttpOnly는 XSS를 방지해주고 자바스크립트에서 쿠키를 세팅 못하고 HTTP 전송에만 사용하신다고 하셨는데, 이 때 HTTP전송이란 Http/Https의 구분이 아닌 Http 프로토콜을 이용한 전송을 말씀하시는 건가요? Https일때만 쿠키를 세팅하고(Secure 활용), XSS 방지를 같이 하고 싶을땐(HttpOnly 활용) 이렇게 세팅하면 되는건가 싶어서 여쭤봅니다!
-
해결됨따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
작성자 이름을 가져오고 싶을 때
ProductInfo.js 파일에서 props.detail.writer.name 이런 식으로 받아올 수 없는건가요? 이렇게 하면 오류가 발생하네요 ㅠㅠ json 데이터 안에 포함되어 있는 것은 확인했는데 어떤 식으로 불러와야 할 지 모르겠습니다.
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
terminateEnvironment completed successfully.
terminateEnvironment completed successfully. 환경 세부 정보에 이렇게 나오고 env에 더 이상 접근 할 수 없다면 완전히 삭제된거고 요금이 청구 될 일도 없는 건가요?
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
지역변수와 값 전달에서 질문
지역변수와 값 전달부분에서 스택 프레임과 관련된 질문이 있습니다. void IncreaseHp(int hp) { int finalHp = hp + 1; hp = hp + 1; } int main() { int hp = 1; int localValue = 1; cout << "increase 호출 전 : " << hp << endl; IncreaseHp(hp); // 사실 이건 IncreaseHp(1); 이거다. 인수 값을 복사해서 넘기고 있다 이게 중요한 사실 cout << "Increase 호출 후 : " << hp << endl; return 0; } 이 코드에 디스 어셈블리를 사용하면 int hp = 1; 00142658 mov dword ptr [hp],1 int localValue = 1; 0014265F mov dword ptr [localValue],1 cout << "increase 호출 전 : " << hp << endl; 00142666 mov esi,esp 00142668 push offset std::endl<char,std::char_traits<char> > (01412A8h) 0014266D mov edi,esp 0014266F mov eax,dword ptr [hp] 00142672 push eax 00142673 push offset string "increase \xc8\xa3\xc3\xe2 \xc0\xfc : " (0149B30h) 00142678 mov ecx,dword ptr [__imp_std::cout (014D0D8h)] 0014267E push ecx 0014267F call std::operator<<<std::char_traits<char> > (014120Dh) 00142684 add esp,8 00142687 mov ecx,eax 00142689 call dword ptr [__imp_std::basic_ostream<char,std::char_traits<char> >::operator<< (014D0A0h)] 0014268F cmp edi,esp 00142691 call __RTC_CheckEsp (0141285h) 00142696 mov ecx,eax 00142698 call dword ptr [__imp_std::basic_ostream<char,std::char_traits<char> >::operator<< (014D0A4h)] 0014269E cmp esi,esp 001426A0 call __RTC_CheckEsp (0141285h) IncreaseHp(hp); 001426A5 mov eax,dword ptr [hp] 001426A8 push eax 001426A9 call IncreaseHp (0141370h) 001426AE add esp,4 // 사실 이건 IncreaseHp(1); 이거다. 인수 값을 복사해서 넘기고 있다 이게 중요한 사실 cout << "Increase 호출 후 : " << hp << endl; 001426B1 mov esi,esp 001426B3 push offset std::endl<char,std::char_traits<char> > (01412A8h) 001426B8 mov edi,esp 001426BA mov eax,dword ptr [hp] 001426BD push eax 001426BE push offset string "Increase \xc8\xa3\xc3\xe2 \xc8\xc4 : " (0149B48h) 이런 값이 나옵니다. 위 어셈블리어에서 00142658 mov dword ptr [hp],1 를 통해 main 에서 hp에 1을 복사대입해주고 IncreaseHp(hp); 001426A5 mov eax,dword ptr [hp] 를 통해 hp = 1을 eax 레지스터에 복사대입해줍니다 001426A8 push eax 를 통해 eax를 스택에 넣습니다. 여기서 질문 있습니다. 1. 지금 스택에 들어간 eax(값은 1) 이건 main의 매개변수 인건가요? 아니면 IncreaseHp 함수의 매개변수hp인가요? 강의 설명에 따르면 매개변수와 반환 주소값은 이전 함수가 정해준다고 했으니 main이 IncreaseHP 함수의 매개변수를 정해준 것 같지만 IncreaseHP 함수의 매개변수가 맞는 생각인지 궁금합니다. 2. 001426A9 call IncreaseHp (0141370h) => 여기서 call을 통해 IncreaseHp 함수로 넘어가려는 것을 알았습니다. 이 때 강의 설명에 따르면 IncreaseHp에서 작업이 끝나면 돌아올 수 있게 반환 주소 값이 저장될 것입니다. 여기서 궁금한점이 그럼 main의 지역함수인 hp와 localValue는 언제 스택에 쌓이게 되는건가요? 어셈블리어로 CALL을 때리는 순간 돌아올 주소를 스택에 저장하고 IncreaseHp 함수 속으로 넘어가게 되는데 그렇다면 main의 지역변수는 스택에 쌓이지 못하게 되는 것 아닌가요? (마찬가지로 만약 func1()안에 func2()가 있다면 func1()의 지역변수 또한 쌓이지 못하고 CALL을 만나는 순간 func2()로 넘어가는 것 아닌가요?) 첨부한 스크린샷을 보면 main()에서 매개변수 -> 반환 주소 값 -> 지역변수를 스택에 쌓고 func1()으로 넘어가는 것처럼 묘사가 되어있는데 이게 어떻게 가능한건지 궁금합니다.. 3. 우리 main 함수는 IncreaseHp와 다르게 매개변수가 없으니까 스택에 쌓이는 main 부분은 반환 주소값(뭔가 return이 있으니 메인도 반환될 것 같습니다) -> 지역변수(2번 질문에 따르면 언제 쌓이는지 모르겠지만) 이런식으로 2개의 값만 가지게 되는건가요?
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
상속과 접근제한자
안녕하세요! 강의 너무 잘듣고 있습니다. 다름이 아니라 상속과 접근제한자에 관하여 궁금한 점이 생겨 아무리 찾아봐도 해결되지않아 질문을 남기게되었습니다. 파생 클래스는 기본 형식보다 높은 액세스 수준을 가질 수 없습니다. internal 클래스 A에서 파생된 public 클래스 B를 선언할 수 없습니다. 이것이 허용된다면 파생 클래스에서 A의 모든 protected 또는 internal 멤버에 액세스할 수 있게 되므로 결과적으로 A가 public이 되는 것과 같아집니다. 출처 : https://docs.microsoft.com/ko-kr/dotnet/csharp/programming-guide/classes-and-structs/access-modifiers 위의 경우 파생 클래스에서 A의 모든 protected 또는 internal 멤버에 액세스할 수 있게 되므로 결과적으로 A가 public이 되는 것과 같아집니다. 라는 이유로 파생클래스에서 더 높은 엑세스 수준을 가질 수 없다고 하는데 해당 부분이 이해가 잘 가지 않습니다. 혹시 예시를 들어 안되는 이유를 알려주실 수 있나요? (public 접근 제한자를 갖는 메서드안에서 private 멤버를 사용할 수 있는 것처럼 public 클래스가 internal 클래스를 상속할 수 있다고 생각이 되어 헛갈립니다.) (public 메서드 안에 private변수에 접근할 수 있다고해서 private변수가 결과적으로 public인것은 아니지 않습니까?)
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
오픈소스 분석
안녕하세요 선생님. 강의에서 나오는 오픈소스를 분석하는 방법에 대해서 질문드립니다. 제가 yolo모델에 관심이 많아 소스코드를 분석해보고 싶지만, 아직 오픈소스를 제대로 분석해본적이 한번도 없습니다. 일단 선생님의 강의를 통하여 큰 숲은 본것같은데, 막상 코드를 한줄한줄 분석하다보면 막히는 부분이 너무나 많습니다. 물론 소스를 분석하는 것이 차근히 하나하나 하는것 밖에는 방도가 없겠지만, 분석을 하는 방법에 대한 팁(조언)을 받고싶습니다. 가령 https://github.com/qqwweee/keras-yolo3에 대한 소스를 분석하고 싶은데, 선생님께서 이러한 오픈소스 분석을 처음부터 하시게 된다면 어떠한 순서와 방법으로 분석을 하시는지 궁금합니다.
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
아톰에서 input 실행하려고 터미널 패키지 다운받았는데 경로 오류가 자꾸 뜹니다
다운받은 패키지는 platformio-ide-terminal 인데 실행만 했다 하면 'chapter05_02' 용어가 cmdlet, 함수, 스크립트 파일 또는 실행할 수 있는 프로그램 이름으로 인식되지 않습니다. 이름이 정확한지 확인하고 경로가 포함된 경우 경로가 올바른지 검증한 다음 다시 시도하십시오. 위치 줄:1 문자:1 이런 오류가 자꾸 뜹니다 검색해본 대로 환경변수 설정도 다시 해봤고 파이썬 제거 후 다시 다운받아보기도 했는데 절대안되네요...ㅜㅜㅜㅜㅜㅜㅜㅜ 파이썬은 사용자 폴더에, 예제 파일은 내 문서 폴더에 다운받았는데 뭐를 더 어떻게 해봐야 할까요.....ㅜㅜㅜ