[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요, 강의를 듣다가 앞에 배운 부분과 충돌하는 부분이 있는 것 같이 질문을 남깁니다! [8. 빈 생명주기 콜백]의 강의에서 초기화 메서드는 주입 완료 후에 적절히 호출된다 는 내용을 배웠습니다. 강의노트 8장 3페이지에도 나온 내용입니다. 따라서 hello.core.lifecycle 패키지의 NetworkClient에서는 setUrl로 url이 주입된 이후에 init( ) 메서드가 호출 되었습니다. 하지만 9장에서 hello.core.common 패키지의 MyLogger에서 soutm으로 메서드 로그를 출력해보니 init( ) 메서드가 먼저 호출되고 이후 setRequestUrl 메서드로 url이 주입 되었습니다. 주입(set메서드) 이후에 초기화 함수가 호출되는게 아닌가요? 강의에서는 그렇게 배운 것 같은데 MyLogger에서는 그 반대가 되니 어떤게 맞는건지 모르겠습니다. 긴 글 읽어주셔서 감사합니다 :)
[깃헙주소] https://github.com/Dongha922/reservation/tree/main/guestshop [에러 콘솔창] xhr.js:178 GET http://localhost:3000/api/product/products_by_id?id=6372c02521d17f4108aac938$type=single 400 (Bad Request) Uncaught (in promise) Error: Request failed with status code 400 at createError (createError.js:16:1) at settle (settle.js:17:1) at XMLHttpRequest.handleLoad (xhr.js:61:1) [해본 방법 ] 변수 명 확인 -> 이상없음 방법을 알려주시면 감사하겠습니다. 강의 잘 듣고있습니다.
안녕하세요 강사님. 강의를 수강 중인 학생입니다. console.log을 통해서는 현재 user가 담은 상품들이 잘 보여지는데 table에는 표시가 안됩니다. 혹시 왜 이런 결과가 나오는지 알 수 있을까요? UserCardBlock.js 코드 CartPage.js 코드 MongoDB
어느 영상인지 잘 기억은 안나는데 insert 내용을 x 로 받아서 inserted_id 로 인서트가 잘되었는지 확인 하는 내용이 있었습니다. x.inserted_id 이런식으로요 갑자기 update할때는 inserted_id 처럼 업데이트 되었는지 확인할수 있는 방법이 있는지 너무 궁금해져서 구글에 찾아보니, 딱히 방법이 보이지 않는데, 혹시 확인할수있는 방법이 있는지 궁금해서 선생님께 문의드립니다.
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요, 좋은 강의 정말 잘 듣고 있습니다. 그리고 친절한 답변을 달아주시는 서포터즈 분들께도 항상 감사드립니다 :) 다름이 아니라, 강의노트 9장 25페이지에 나온 여기서 중요한점이 있다. request scope를 사용하지 않고 파라미터로 이 모든 정보를 서비스 계층에 넘긴다면, 파라미터가 많아서 지저분해진다. 더 문제는 requestURL 같은 웹과 관련된 정보가 웹과 관련없는 서비스 계층까지 넘어가게 된다. 웹과 관련된 부분은 컨트롤러까지만 사용해야 한다. 서비스 계층은 웹 기술에 종속되지 않고, 가급적 순수하게 유지하는 것이 유지보수 관점에서 좋다. 내용이 잘 이해가 되지 않아서 질문 드립니다. 첫번째 문장의 '이 모든 정보'란 무엇을 말하나요? 코드만 봤을 때는 서비스 계층에 넘어가는 정보가 없는 것 같아서 질문 드립니다. 파라미터를 통해 서비스 계층으로 정보를 넘긴다는게 잘 와닿지 않습니다 .. 예시를 들어주시거나 조금 더 설명을 해주시면 감사하겠습니다!
선생님 설명 듣고 실력이 많이 늘었습니다 감사합니다! 처음부터 커뮤니티앱 강좌를 들을 때 이런식으로 만들고 싶었습니다. 그래서 레이아웃이랑 boardmodel이나 다른 액티비티도 좀 바꿔보았는데 안되네요..ㅠㅠㅠ 꼭 이런식으로 만들어서 구현하고 싶은데 귀찮으시겠지만 혹시 알려주실 수 있으신가요?ㅠㅠ
ignoring header x-firebase-locale because its value was null 오류가 발생하여 익명 혹은 이메일 인증이 바로 이루어지지 않거나, Realtime Database가 안되시는 분들은 Sdk 버전이 문제일 수 있습니다. 구글링하면서 찾아본 방법들을 다 해봐도 변화가 없었는데, sdk 버전을 낮추니 바로 되네요. 제 블로그는 아니고 저도 방법 찾다가 발견한 블로그 글인데, 참고하시면 될 것 같습니다!(문제가 된다면 바로 삭제하겠습니다) https://zynar.tistory.com/165#5.1.6.%205.%20%EC%95%88%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9C%20%EC%8A%A4%ED%8A%9C%EB%94%94%EC%98%A4%EB%A5%BC%20%EC%BC%9C%EC%84%9C%20%EC%8B%A4%ED%96%89%ED%95%B4%EB%B3%B4%EA%B3%A0%20%EC%95%88%EB%90%98%EB%A9%B4%20%EB%94%94%EB%B0%94%EC%9D%B4%EC%8A%A4%20%EB%A7%A4%EB%8B%88%EC%A0%80%EB%A1%9C%20%EB%93%A4%EC%96%B4%EA%B0%80%EC%84%9C%20AVD%EC%9E%AC%EC%84%A4%EC%B9%98%20%ED%95%B4%EC%A3%BC%EB%A9%B4%20%EB%90%9C%EB%8B%A4 . 개인적으로 30.9.5 sdk로 하시는게 제일 빠르게 해결하는 방법이라 생각합니다. 다들 열공해요!
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 11분 48초를 보면, 스프링컨테이너를 생성할때 생성자 파라미터를 넘겨주는건 컴포넌트 스캔을 해주는것이고, 자동빈등록이 된다고 말씀하시는데 지금까지 설명해주신거를 바탕으로 되돌아보면 스프링컨테이너를 생성할때 생성자 파라미터로 넘겨주는건 직접 스프링빈으로 등록하는것이라고 알고있었는데, 왜 @Component가 없는데 왜 이게 컴포넌트 스캔을 해주는것이고 ,직접빈등록이 아닌 자동빈등록인건지 질문드립니다
안녕하세요. 고양이끼리 소통 API를 끝내면서 백엔드는 아래와 같이 다 마친 상태입니다. 그런데 웹개발 페이지를 보려면 아무래도 프론트엔드 파트가 필요할 것 같은데 깃허브의 어떤 폴더를 받아서 어디에 설치하면 되는지 나와있는 강의가 있을까요? frontend/frontenddev 폴더가 각각 있고, 또 정확한 설치 방법(npm 모듈이나 라이브러리 등)을 확인하기가 어렵네요.
★작성하다보니 글이 길어졌는데, 번호로 굵은 표시 해놓은 부분과 그림 만 살펴봐주셔도 될 것 같습니다. -------------------- #define CRTSECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> int main() { /* Flexible array member (struct hack in GCC) */ struct flex { size_t count; double average; double values[]; //flexible array member (last member!) }; const size_t n = 3; printf("%zd\n", sizeof(float)); struct flex* pf = (struct flex*)malloc(sizeof(struct flex) + n * sizeof(double)); if (pf == NULL) exit(1); printf("%lld\n", (long long)pf); printf("%lld\n", (long long)&pf->count); printf("%zd\n", sizeof(pf->count)); printf("%lld\n", (long long)&pf->average); printf("Address of pf->values %lld\n", (long long)&pf->values); printf("Value of pf->values %lld\n", (long long)pf->values); printf("Sizeof pf->values %zd\n", sizeof(pf->values)); pf->count = n; pf->values[0] = 1.1; pf->values[1] = 2.1; pf->values[2] = 3.1; pf->average = 0.0; for (unsigned i = 0; i < pf->count; ++i) pf->average += pf->values[i]; pf->average /= (double)pf->count; printf("Average = %f\n", pf->average); 현재 구조체 flex는 main함수 내에서 선언하여 스택 메모리에 위치하고 있습니다. 구조체 flex의 멤버 size_t형 count와 double형 average는 구조체 포인터가 선언됨과 동시에 스택에 메모리 공간을 차지하였습니다. 구조체 flex의 마지막 멤버는 가변길이 배열(flexible arrays)으로서 동적할당으로부터 변수를 통해 크기를 할당받는다고 이해했습니다. Q1 . 구조체 포인터를 선언할 때 struct flex* pf;라고 하는데, 이때 pf는 내부적으로 구조체 flex의 데이터들을 가리키는 것인지 궁금합니다. : 이 순간부터 pf는 구조체 flex와 관련이 있는것인가요? 관련이 있다면 어떤 것인가요? *지금까지 너무 자연스럽게 Q1-1처럼 struct 구조체Tag 를 하나의 자료형으로만 생각해왔습니다. Q1-1 . 단순히 struct flex 라는 것은 하나로 묶어 (구조체를 다루는) 하나의 자료형 으로 취급하는 것이 아닌가요? Q2 . 스택 내에 구조체 flex에 대한 메모리 공간 , 구조체 포인터 pf에 대한 메모리 공간 서로 따로 존재하며 구조체 포인터 pf가 동적할당받은 메모리 주소를 가리킨다고 이해했습니다. *사진 첨부 그런데 어떻게 구조체 포인터 pf를 통해 스택에 있는 구조체 멤버인 count와 average에 접근할 수 있는 것인지 잘 모르겠습니다. Q3 . 구조체 flex의 멤버인 배열 values가 동적할당 메모리를 이용한 가변길이 배열로 설정하기 위함이라면 동적할당을 받을 때, 배열이 필요로하는 n * sizeof(double)만 할당받아오면 됐을 것 같은데 sizeof(struct flex) 를 추가로 받아오는 이유 가 궁금합니다. +구조체 포인터 pf를 통해 count와 average에 접근할 수 있던 것과 관련이 있을 것 같습니다. -------------------- : 앞에서 말씀하셨듯 구조체 포인터 pf는 ' flex라는 Tag를 갖는 구조체 변수 '의 포인터'라고 하는데 Tag는 모든 멤버의 데이터를 담고있는 것인가요? 구조체 멤버 또는 구조체 포인터가 선언됨에 따라 구조체의 멤버들은 메모리 공간을 할당받고 구조체 포인터를 ->연산자를 통해 멤버에 접근할 수 있다는 것은 이해했습니다. ( Q2 )※다만 제가 여기서 궁금한 것은 구조체 포인터에 단순히 동적할당 받은 힙 메모리의 주소 를 대입했음에도 어째서 동적할당 메모리를 가리키는 포인터 pf를 통해 멤버에 접근이 가능한지..입니다.
43:00에서 같은 헤더 파일 include했지만 다른 주소가 나오는데 헤더의 역할을 그냥 코드를 복사 붙여넣기 하는 것인가요? 그래서 43분에 나온 현상은 각각 불러온 include한 파일에서 지역변수로 셋팅이 된거고 그래서 다른 주소값이 나오는 것인가요? 사실 제 생각이 맞냐 안맞냐보다는 43분에서 왜 다른 메모리 주소가 나오는지 궁금합니다.
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] 안녕하세요. 테스트케이스 작성 중 실무에서는 테스트 케이스를 어떻게 작성하는지 궁금합니다! 현재 저는 3년차 C# 개발자인데 이직을 위해 영한님 영상을 보면서 공부중입니다. 사이드 플젝에서 테스트케이스를 작성하려고 하는데 Q1.JPA를 사용하는데 실무에서도 테스트 케이스는 서비스만 작성하나요? Q2.컨트롤러도 테스트 케이스를 작성한다면 AssertJ는 어떤식으로 컨트롤러를 테스트 하나요?