묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
고아 객체 생성 조건
안녕하세요 영한님!질문드립니다. 고아 객체는 부모 엔티티와 연관관계가 끊어진 자식 엔티티 라고 이해했습니다.고아 객체가 생성되는 조건은부모 엔티티 삭제부모 엔티티가 삭제 되면 자식 엔티티를 고아객체로 판단 합니다.e.g) em.remove(parent); 부모 엔티티에 있는 자식 엔티티 컬렉션 제거연관관계가 끊어진 자식 객체를 고아객체로 판단 합니다.e.g) parent.getChild().remove(0); 결과적으로 orphanRemoval = true를 설정하면자식 엔티티(고아 객체)는 부모 엔티티와 함께 삭제 되거나자식 엔티티(고아 객체)만 삭제 된다. 맞게 이해하고 있는 것 일까요? 감사합니다.^^
-
해결됨[개정판] 파이썬 머신러닝 완벽 가이드
[질문] 파이썬 머신러닝 완벽 가이드 교차검증-2 강의내용
for train_index, test_index in kfold.split(features): # kfold.split( )으로 반환된 인덱스를 이용하여 학습용, 검증용 테스트 데이터 추출 X_train, X_test = features[train_index], features[test_index] y_train, y_test = label[train_index], label[test_index] 제가 이 코드를 이해한 순서대로 써보겠습니다.kfold.split(features)를 하게 되면 feature값을 k개의 fold로 split 해줌for문에 의해 train_index, test_index가 그 fold를 순회하면서 인덱스를 받음(?)이정도까지 이해했는데 제가 이해한바로는 150개의 feature를 5개의 fold로 나누고 f f f f f그 나눠진 f 하나마다 70% train, 30% test로 다시 나눠지는 걸로 이해했는데 for문을 저렇게쓰면 어떻게 인덱스가 매겨지는지 도무지 이해가 잘 안됩니다...첫번째 fold에서 21개의 train(0~19), test(20~29) 이렇게 나눠지고두번째 fold에서 21개의 train(30~49), test(50~59) 이런식으로 된다는건지... 파이썬에 대한 이해부족인 것 같아서 For문에서 변수2개인 상황을 검색해봤는데 그거랑 이거랑은 Kfold 때문에 매치가 잘안되는상황입니다.답변부탁드립니다!
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
마구간 정하기 문제 질문드립니다.
강사님 마구간 문제에서, mid = 5 경우에 9번 마구간에 말을 배치하지 못한다고 말씀하셨는데, 그 이유는 문제에 어떤 부분에 포함되어있는 걸까요??각각의 말이 위치한 거리가 5를 넘어야 되는건가요????
-
해결됨[코드캠프] 시작은 프리캠프
강의자료 레벨업 퀴즈
강의자료에 있는 레벨업 퀴즈의 정답은 어디서 확인할 수 있나요??
-
미해결자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
map 과 filter 함수를 써봤는데, 이렇게 하면 효율적이지 않은가요?
for 문 돌리는게, method 돌리는것보다 빠르다고 하는데, method 들로만 사용하여 풀면 효율적이지 않은건가요?아래 코드로 진행해도 괜찮을까요? function solution(s){ let answer="" const lengths = s.map(str => str.length) const max = Math.max(...lengths) answer= s.filter(str => str.length === max).join('') return answer; }
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
MemberJob 생성자 부분에서 에러가 발생해 질문드립니다.
아래 질문을 올리신 분과 동일한 문제인데 아래처럼 에러가 발생합니다.강의 중간에 std::apply( )를 사용하기 위해 c++ 17로 변경하셨고, c++17 이전 버전에서 동작하기 위한 xapply 코드를 작성하셨습니다. 저의 생각으로는 std::apply( )를지원하지 않는 이전 버전에서 동작하기 위함이니까 저의 원래 환경인 c++14로 변경해서 빌드를 진행하니 에러가 발생합니다.일단 다시 c++17로 변경해서 진행해보니 에러는 발생하지 않는데 강의에서 설명하신 코드(MemberJob)가 c++17 이전 버전에서는 동작하지 않는 것인가요?
-
미해결배달앱 클론코딩 [with React Native]
윈도우 사용자 android, ios
윈도우 사용자입니다.수업에서 android와 ios 파일 두가지를 수정하는데,윈도우 사용자는 android 파일만 수정해도 되는지 ios 파일도 수정해야하는지 궁금합니다.
-
해결됨홍정모의 따라하며 배우는 C++
인터페이스 클래스에서 reportError의 매개변수에 대해 궁금한 것이 있습니다.
교수님께서는 #include <string>을 하셨는데, 모든 클래스의 reportError 매개변수에 const char* errorMessage를 넣으셨는데 이유가 무엇인가요? 아래와 같이 std::string으로 대체해서 실행시켰는데 결과는 똑같이 나왔습니다.#include <iostream> #include <string> using namespace std; class IErrorLog // 인터페이스는 앞에 I를 붙여주는 관습 { public: virtual bool reportError(std::string errorMessage) = 0; virtual ~IErrorLog(){} }; class FileErrorLog : public IErrorLog { public: bool reportError(std::string errorMessage) override { cout << "Writing error to a file" << endl; return true; } }; class ConsoleErrorLog : public IErrorLog { public: bool reportError(std::string errorMessage) override { cout << "Printing error to a console" << endl; return true; } }; void doSomething(IErrorLog& log) { log.reportError("Runtime error!!"); // 위에서 순수 가상 함수를 정의만 해도 reportError의 존재는 알고 있기 때문에 메소드호출 가능 } int main() { FileErrorLog file_log; ConsoleErrorLog console_log; doSomething(file_log); doSomething(console_log); return 0; }
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
액세스토큰을 변수로 저장하면 생기는 문제점
안녕하세요. 강의중에 액세스토큰을 변수로 req.header에 저장하면 아래와 같이 3가지 문제점이 있다는 것을 구글링을 통해서 확인했습니다.1.보안: 액세스토큰을 req.header에 변수로서의 토큰은 공격자에 의해 가로채기에 취약합니다.2.확장성: 애플리케이션에 많은 수의 요청이 있는 경우 req.header의 변수는 크기가 커지고 성능 문제가 발생할 수 있습니다.3.지속성: req.header에 액세스 토큰을 저장하는 것은 영구적이지 않습니다. 사용자가 페이지를 새로 고치거나 브라우저를 닫으면 액세스 토큰이 손실됩니다. 이로 인해 사용자가 보호된 리소스에 액세스하기 위해 다시 로그인해야 할 수 있습니다. 질문1)3번 지속성문제의 경우, 브라우저를 새로고침하게 되면, 액세스 토큰이 사라지게 되니 오히려 보안이 좋다고 생각해야 할까요? accessToken이 수업에서는 10분으 로 만료기간을 설정했는데, restoreAccessToken API가 있기 때문에 acessToken을 req.header에 변수로 저장해도 문제가 되지 않을까요? 질문2)액세스토큰 만료시간을 10분 ~30분 으로 짧게 잡으신 이유가 1번 문제점 보안의 이유라고 생각하면 될까요? 질문3)선생님, 좋은 강의 해주셔서 진심으로 감사합니다. 저는 선생님의 백엔드와 프론트 강의를 수강후 실제 웹 서비스를 런칭하기위해서 수업을 듣고 있습니다. 현재는 백엔드 강의를 수강중입니다.실제 웹 서비스런칭시 accessToken을 req.header에 변수로서 저장하고, refreshToken은 쿠키에 저장하는 게 올바른 방법인가요?refreshToken을 수업에서 가르쳐주신 대로 secure : true, httponly: true와 같이 배포환경으로 바꿔서 배포하게 된다면 보안상 안전할까요? 질문4)구글링을 해보니, 리프레시 토큰을 Redis에 저장하고, 액세스토큰은 쿠키에 저장하는 방법도 있는 것을 확인했습니다. 액세스토큰의 만료기간을 10분으로 잡고, 리프레시토큰의 만료기간을 2주로 잡을 경우, restoreRefreshToken API 때문에 Redis DB에 자주 접속하게 되어서 DB 사용료가 많이 청구 되지는 않을까요? 서버를 stateless 상태로 웹 서비스를 런칭하기 위해서는 액세스토큰과 리프레시 토큰을 어떻게 저장해야 할까요? 가장 안전한 방법이라고 할 수 있을까요? 감사합니다.
-
해결됨GraphQL 완전정복 (키오스크를 만들며 배우는 풀스택 과정) - [2024 부분 리뉴얼]
error 메세지 출력 콘솔 질문 외 1
강의영상에서는 에러메세지를 출력하는 부분을error.message 라고 하는데예제코드에서는 error 라고 되어있더라구요.차이가 어떤게 있을까요?강의영상에는 이부분이 == 으로 되어있던데, 예제코드에서는 ===으로 되어있습니다.===의 의미는 값뿐만아니라 형식까지 확인하는 걸로 알고 있습니다.일단 예제코드랑 똑같이 가려고하는데수정되어야할 중요한 부분인가요?
-
미해결[개념은 호옹~, 실습 빡] 스프링 부트, 입문!
15강 hidden
15강에서 hidden 이건 왜 쓴건가요 ...???? 숨겨서 넣은건 알겠는데 왜 넣은건지 이해가 안돼서요.. 뷰에 나오지도 않게 히든 쓴건알겠는데 저걸 왜 써준건지 이해가안가요 ..
-
미해결[구버전] 웹 애플리케이션 개발을 위한 IntelliJ IDEA 설정 (2020 ver.)
오류 could not find or load main class org . apsche . catalina . startup . Booststrap
C:\work\apache-tomcat-10.1.5\bin\catalina.bat run[2023-02-24 04:16:40,405] Artifact myweb:war exploded: Waiting for server connection to start artifact deployment...Using CATALINA_BASE: "C:\Users\USER\AppData\Local\JetBrains\IntelliJIdea2022.3\tomcat\d2879f62-a42d-4cc2-8525-ff9de9189793"Using CATALINA_HOME: "C:\work\apache-tomcat-10.1.5"Using CATALINA_TMPDIR: "C:\work\apache-tomcat-10.1.5\temp"Using JRE_HOME: "C:\Program Files\Java\jdk-19"Using CLASSPATH: "C:\work\apache-tomcat-10.1.5\bin\bootstrap.jar;C:\work\apache-tomcat-10.1.5\bin\tomcat-juli.jar"Using CATALINA_OPTS: ""Error: Could not find or load main class org.apache.catalina.startup.BootstrapCaused by: java.lang.ClassNotFoundException: org.apache.catalina.startup.BootstrapDisconnected from server 오늘은 또 새로운 오류가 생겼네요... 이거 어떻게 해결하나요 구글에 검색해봐도 무슨 말인지 모르겠어요...
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
다차원 데이터 군집화와 시각화에 대해 질문드립니다
안녕하세요, 현재 군집화까지 강의를 수강한 학생입니다. 다차원 데이터에 대한 군집화를 하려면 어떤 아이디어가 있을지 궁금하여 질문드립니다. 여태까지 배운 내용만 가지고 생각해보면차원축소를 최대한 잘 하여3차원까지 줄여서 3차원공간에 나타내 클러스터링을 할 수 있을것같은데 혹시 4차원이상 데이터의 클러스터링도 가능한지, 관련된 레퍼런스가 있는지 궁금합니다!감사합니다
-
미해결중상급 퍼블리싱을 위한 CSS3의 모든 것
강의자료는 어디서 받을 수 있나요?
비주얼 스튜디오 코드(Visual Studio Code) 사용법 강의를 보고 있는데 자주사용하는 에밋 단축키라던지 vscode 설정법 관련 강의자료 pdf 를 올려주신다고 하시던데.. 그 자료는 어디서 받을 수 있나요?
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
자바 버전이 달라도 되나요?
강사님 지금 제 컴퓨터에 jdk 1.8이 설치되어 있고, 사용중이라 이번 강의도 1.8로 진행해도 되는지 궁금합니다.build.gradle에서 sourceCompatibility = '11' -> sourceCompatibility = '1.8'로 바꾸니 실행은 되는데 계속 이렇게 설정해서 수업을 들어도 될까요?
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 레딧 사이트 만들기(NextJS)(Pages Router)
[커뮤니티 페이지 생성하기 강의부분] authRoute 논리연산자를 추가하면 error가 뜹니다.
_app.tsxexport default function App({ Component, pageProps }: AppProps) { axios.defaults.baseURL = process.env.NEXT_PUBLIC_SERVER_BASE_URL + '/api'; axios.defaults.withCredentials = true; const { pathname } = useRouter(); const authRoutes = ['/register', '/login']; const authRoute = authRoutes.includes(pathname); return ( <AuthProvider> {!authRoute && <NavBar />} <div className={authRoute ? '' : 'pt-12'}> <Component {...pageProps} /> </div> </AuthProvider> ); } 해당 부분에서 !authRoute 논리연산자를 추가하면Error: Hydration failed because the initial UI does not match what was rendered on the server.에러가 나옵니다.강사님 파일을 클론 해서 빌드 확인해보니 이런 에러가 안나오길래, 이 강의까지의 나머지 파일도 클론한 것과 모두 같은 것을 확인했는데 왜 저만 이런 에러가 나오는걸까요?해당 에러를 구글링해서 해결책으로 나오는 것들을 적용해봤는데 어느것도 에러를 해결해주지 못했습니다ㅠ어떤 부분을 확인해보면 좋을까요?
-
미해결기출로 대비하는 개발자 전공면접 [CS 완전정복]
인터넷 계층과 네트워크 엑세스 계층
해당 패킷은 전기신호로 랜선을 통해 네트워크로 전송되고, 목적지 IP에 도달합니다. 라고 설명 하셨습니다. 그럼 이부분이 인터넷 계층과 네트워크 엑세스 계층을 거치는 것이 맞나요??
-
미해결인터랙티브 개발 실무 끝장내기 [역량 강화편]
scrollTo 완성본
scrollTo - 페이지 스크롤 부분완성본 자체가 작동이 안되네요크롬브라우저에서 상하 이동 자체가 안되네요 ..복사해서 붙여넣기 해도요왜그런건가요?다음 페이징 스크롤 이동.html 완성본도크롬 브라우저에서 작동 안합니다콘솔 이거맞죠?console.log(scrollTo());이렇게 하면 아래와같이 나옵니다 아래 저와 같은 분이 있어 https://codepen.io/yahao2512/pen/jOmKgGo\여기서 확인해보니 이동은 하나 크롬에서는 behavior: 'smooth', 이게 안되는것 같아요 ~~
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-E 뮤탈리스크 시간복잡도 질문
<질문>###https://www.acmicpc.net/problem/12869뮤탈리스크문제의 시작복잡도는 BFS로 탐색하기니까O(V+E) = O(60^3 + 6*60^3)=O(150만)이렇게 계산하는게 맞을까요?#####문제를 풀기 전에6가지의 선택지를 최대 14번쯤하고 6^14 는 10억보다 크니까 무식하게 풀기는 안되겠다고 생각을 했습니다 ((9+2+1)*14=182 > 60*3)그런데 강의를 보고 각각 최대 6개의 가지가 있는 60^3의 상태를 탐색하는 문제라고 생각하니까 잘못 생각했다는 걸 알았습니다. 위에처럼 시간복잡도를 계산하는게 맞을까요?이상입니다. 읽어주셔서 감사합니다.
-
해결됨Windows 소켓 프로그래밍 입문에서 고성능 서버까지!
동기/비동기
블록킹/논블록킹 IO동기/비동기 IO이 두가지가 다른 의미로 쓰이는거 같은데항상 어떤 차이가 있는지 잘 모르겠습니다.혹시 차이점 위주로 설명해주실수 있으실까요..