안녕하세요 강사님 강의 정말 잘보고 있는 수강생입니다! 제가 이번에 사이드 프로젝트를 진행하는데, 정말 오랫동안 고민해보고 조사해봐도 답이 안나와서 질문드립니다. 답변해주시면 정말 감사하겠습니다! 이 프로젝트에서는 유저 중 일부만 아티스트 상태를 갖습니다. 그래서 일단 상태 중 일부를 잘라보면, 위와 같이 database를 설계했습니다. Artist가 User의 상태 전부를 갖고 있으므로 Artist가 User를 상속받게 Entity 설계를 했습니다. 그런데 이와 같이 설계를 하면 Artist는 독립적인 Id가 없습니다. 그래서 artist_id에 직접적으로 접근할 수가 없어서 두가지 문제가 발생합니다. 첫번째로 아티스트를 생성하려면 직접적으로 접근해서 생성하지 못하고, 유저 정보가 생성될 때만 생성할 수 있습니다. 그래서 artist를 생성할 때 현재 다음과 같이 생성되게 로직을 짰습니다. 만약 7번 유저가 이미 등록돼있고, 7번 유저에 대해서 artist 등록을 한다고 가정해보겠습니다. 그러면 아래와 같은 로직을 따라갑니다. 7번 유저를 가져옴 -> builder를 통해서 artist를 생성. 그러면 8번 유저가 생성되고 8번 유저가 artist와 연결됨 -> 7번 유저는 삭제 그런데 위와 같이 로직을 따르는게 최적화에 있어서 좋지 못하다는 생각이 듭니다. 또한 7번 유저 인덱스가 비어서 빈 인덱스가 생겼기 때문에 데이터를 볼때도 좋지 않을 것 같다는 생각이 듭니다. 두번째로 artist_id가 없기 때문에 artist와 다른 테이블을 mapping 시킬 때 까다로운 부분이 있습니다. 그래서 artist_id를 따로 만들어야 하나 생각이 들다가도 로직상으로 맞지 않는 것 같기도 합니다... 조언 주시면 정말로 감사하겠습니다...!!
1. 제곧네입니다. 사실 td 나 button 이나 똑같을거같은데, button 으로 만들면 장점이 있는걸까요? 차이점이 뭘까요? =========== 2. 강의 내용중에 (10:42) !! v 가 있었는데 이게 이해가 안가서... 저걸 뭐라고 부르나요? 용어가 궁급합니다.
int main() { Fruit apple(APPLE); if (apple.getType == APPLE) //강의 코드 //if(apple.getType() == APPLE) 수정 후 코드 { cout << "Apple" << endl; } return 0; } apple.getType은 compile eror를 발생시켜서 apple.getType()으로 수정해줘야 할것같습니다.
printf("\a"); 터미널을 실행시켜 실행파일 작동시키면 소리가 들리지만 자체 터미널에서 작동하지 않는 문제에 대해 단순히 vscode에서 기능을 지원하지 않는 것 일까요? https://github.com/microsoft/vscode/issues/47711 해당 문제를 겪거나 해결하신 분이 계시다면 말씀 부탁드립니다.
안녕하세요 강사님, 좋은강의 감사합니다. 한가지 질문드릴것이 있는데요, object_tracking_opencv에서 동영상파일을 다른것으로 바꿔서 실습해보려고 하는데, 11프레임까지만 실행이 되고 그 이후에는 자동으로 프로그램이 종료됩니다. 이런 현상의 원인이 무엇이고, 해결하려면 어떻게 하는것이 좋을까요?
redefinition 컴파일 에러를 잡아내는 원리가 궁금합니다. (자료형) (변수명) ; 변수명이 데이터의 메모리에 할당되는 것은 아니라고 생각이드는데 , 저장되기 전에 중복되는가? 여부에서 X로 바로 컷이 되는 건지 저장하고 보니까 호출할 때 데이터가 중복돼서 컴파일에러가 나는 것인지 궁금합니다.
안녕하세요. 강사님 강의를 듣다가 갑자기 궁금한게 생겨서 질문드립니다. 제가 리액트를 아주 잘 알지 못하지만 예전에 잠깐 했을 때 최적화하는 부분이 떠올랐습니다.(갑자기 떠오른거라 제가 하는 말이 사실과 조금 다를수도 있습니당) 예를 들어 map을 통해서 리스트를 화면에 출력해야하는 경우에 리액트의 경우 상위 컴포넌트가 바뀌면 아래 하위컴포넌트를 다시 렌더링하는 것으로 알고 있는데요. 그 과정에서 변경된 자식만 렌더링하기 위해 라이프사이클 또는 React.memo로 별도의 작업을 해줬던걸로 기억합니다. 스벨트도 비슷한 작업을 해주어야하나요?
안녕하세요? 강의를 보고 RootPage로 로그인 정보가 있을때는 바로 TabPage로 이동하는 것을 구현하였는데요. 로그인 하고, 앱을 다시 실행했을때는 로그아웃이 제대로 되어 Root로 돌아가 LoginPage로 이동하는데, 로그인을 하자마자 로그아웃을 하면, Root로 돌아가지 않고, TabPage에서 사용자 데이터만 잃어 인디게이터가 돌아가는 장면으로 바뀌게 됩니다. 제가 잘못한줄 알고 몇일째 씨름하다가 영상을 유심히 보니까, 영상에서도 일단, 로그인을 하고 앱을 다시 실행하여 로그아웃을 하더라구요. 혹시 로그인 하자마자 앱을 다시 실행하지 않고 종료했을때 잘 되시나요?
1. 서버를 실행하려고 sudo npm start를 하고 pm2 monit으로 로그를 보면 Error: bind EACCES null:80 위와 같은 에러가 나옵니다. sudo를 입력했는데도 왜 안될까요?? 애매한 질문입니다만 예상되는 부분만이라도 이야기 해주셨으면 합니다. 2. 80번 포트가 되지 않는 것 같아서 포트를 바꿔보기로 했습니다. package.json의 "start": "cross-env NODE_ENV=production PORT=80 pm2 start app.js -i -1"에서 PORT=8080으로 바꾸고 GCP 방화벽에서 8080번 포트 설정을 하고 실행하니까 서버에 접속은 됐습니다. 그런데 main.css가 불러와지지 않고, 크롬 개발자도구 네트워크 탭을 보니 http://(제 아이피):8080 이후에 https://(제 아이피):8080/main.css https로 시도하고 있어서 안되고 있는 것 같습니다. layout.pug에서 link(rel='stylesheet' href='/main.css')에서 href를 http://(제 아이피):8080/main.css로 바꿔도 되지가 않고... 어떻게 해야 css를 http로 요청해서 받을 수 있을까요?