묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
isEmpty(), NPE
private void validateDuplicateMember(Member member) { //중복 회원 검증 List<Member> findMembers = memberRepository.findByName(member.getName()); if(!findMembers.isEmpty()){ throw new IllegalStateException("이미 존재하는 회원입니다."); } }중복 회원 검증 메서드에서 위의 코드는 test 돌릴 때 제대로 작동하는데 아래 코드처럼 if문의 조건을 바꾸면 test가 fail합니다..!리스트가 null일 경우 isEmpty() 호출 시 NPE가 발생하기 때문에 가급적 null인지 여부도 함께 확인하라는 글을 본적이 있어서 아래처럼 작성한 것인데, 왜 에러가 나는 건지 궁금합니다!private void validateDuplicateMember(Member member) { //중복 회원 검증 List<Member> findMembers = memberRepository.findByName(member.getName()); if(!findMembers.isEmpty() || findMembers!=null){ throw new IllegalStateException("이미 존재하는 회원입니다."); } }
-
미해결실전! Querydsl
영한님의 솔직한 모습
훌륭함을 넘어 위대하다고 생각됩니다 솔직히 저는 그동안 프로그래밍에 대한 관심보단 인생에서 스스로 어려운 상황을 뚫어오신 분들을 동경심을 이어왔던 것 같습니다 그런 온라인 멘토들의 겉모습을 따라하는 걸 넘어 의존하고 사회적으로 연결되고 싶은 마음에 코딩이라는 수단에 시간과 자원을 쏟아온 것 같은데요 그동안 쏟아온 것에 비해 막상 코딩 이나 기술 자체에 대해 관심가지고 즐거운 마음을 가진지는 얼마 되지 않은 것 같아 부끄럽습니다 분수에 넘쳐보일지 모르지만 어느새 저에게는 사회적으론 '왔을 때보다 좋은 곳으로' 라는 목표. 개인적으론 앞으로 꾸준히 영한님을 돈쭐낼 수 있을만큼 성장하기 라는 목표가 생겼습니다 너무 쉽게 들떠서 일을 그르치거나 실수가 잦다는게 약점이지만 얼마나 꾸준함을 이어갈지 지켜봐주시면 감사하겠습니다 거북이마음 화이팅 화이팅
-
해결됨따라하며 배우는 리액트 A-Z[19버전 반영]
리액트 서버 실행 오류
리액트 설치 npx create-react-app ./ 이후리액트 최초 시작 시 npm run start가 작동하지 않습니다.위와 같은 오류가 발생하여, 아래와 같은 해결 방법들을 실행해보았습니다. 하지만, 위의 코드를 모두 실행했음에도 동일한 오류가 계속해서 발생합니다. node.js와 npm의 버전은 이러합니다. 폴더는 현재 강의자료 코드 폴더 내에 study라는 새로운 폴더를 만들어, 그 안에 리액트를 설치했습니다.프로젝트를 3번 정도 삭제하고 다시 설치했음에도 동일한 오류가 발생합니다. 어떻게 하면 좋을까요? 🥲 VSCode를 재시작하니 서버가 실행되었는데, App.js의 수정사항이 반영되지 않아 다시 VSCode를 재시작했더니 또 동일한 오류가 납니다...
-
해결됨설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
vivado 설치
vivado 설치를 진행하고 있는데 모든 과정을 똑같이 했는데도 permission denied가 떠서 vivado 설치가 진행되지 않습니다.도움을 주시면 감사하겠습니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
강의 소스코드
소스코드 다운로드 가능한가요? 예전에는 가능했던거 같은데요...ㅜ
-
해결됨만들면서 배우는 리액트: 컴포넌트 설계와 리팩토링
컴포넌트 내부/외부에 선언하는 함수 차이
안녕하세요!강의를 들으면 fetchTodos 함수는 App 컴포넌트 밖에 선언하시고 나머지 handleClick, handleInput, handleRemove 함수들은 컴포넌트 내에 선언하시는데 그 차이가 뭔지 궁금합니다.
-
해결됨(UPDATED) Python을 이용한 개인화 추천시스템 | 추천알고리즘 | 추천인공지능
코드 자동완성 속도가 상당히 느린데 개선할 방법이 있을까요?
가령 item_similarity라는 변수를 칠 때 item까지만 치면 item으로 시작하는 변수들의 추천목록을 보여주는데 이 목록이 띄워지는 속도가 약 4초 정도 걸립니다. 강의영상에서 보면 타이핑을 하자마자 바로바로 뜨는 것을 확인할 수 있었는데 혹시 개선할만한 방안이 있을까요?
-
해결됨워드프레스 제대로 개발하기 - 어드민 편
미디어에서 이미지 추가시 시간이 좀 느려서...
디버깅을 해보고 싶은데요.어디에서 시작해야 할 지 모르겠습니다.진입 포인트에 대해 힌트를 주시면 감사하겠습니다.
-
미해결2시간으로 끝내는 프론트엔드 테스트 기본기
안녕하세요. 질문 있습니다.
섹션3 recoil을 테스트하는 방법 3:50에cy.url().should('include','/');를 통해서 root page로 잘 이동하는지 확인한다고 하신부분에서,'/'는 어떤 페이지에서든 include가 되어 테스트가 통과될것 같은데 혹시 rootpage를 검증하기위한 다른 방법은 없을까요?
-
해결됨(UPDATED) Python을 이용한 개인화 추천시스템 | 추천알고리즘 | 추천인공지능
ValueError: setting an array element with a sequence
아래 부분에서 불균일한 데이터임을 나타내는 에러가 발생하는데 이유를 못찾겠습니다.전체 코드입니다.from inspect import Signature import os import pandas as pd import numpy as np from sklearn.model_selection import train_test_split ### 데이터 불러오기 및 필요한 함수 정의 ### # user 데이터 base_src = 'drive/MyDrive/RecoSys/Data' u_user_src = os.path.join(base_src, 'u.user') u_cols = ['user_id', 'age', 'sex', 'occupation', 'zip_code'] users = pd.read_csv(u_user_src, sep='|', names=u_cols, encoding='latin-1') users = users.set_index('user_id') u_item_src = os.path.join(base_src, 'u.item') i_cols = ['movie_id','title','release date','video release date', 'IMDB URL','unknown','Action','Adventure','Animation', 'Children\'s','Comedy','Crime','Documentary','Drama','Fantasy', 'Film-Noir','Horror','Musical','Mystery','Romance','Sci-Fi','Thriller','War','Western'] movies = pd.read_csv(u_item_src, sep='|', names=i_cols, encoding='latin-1') movies = movies.set_index('movie_id') u_data_src = os.path.join(base_src, 'u.data') r_cols = ['user_id', 'movie_id', 'rating', 'timestamp'] ratings = pd.read_csv(u_data_src, sep='\t', names=r_cols, encoding='latin-1') # 정확도(RMSE)를 계산하는 함수 def RMSE(y_true, y_pred): return np.sqrt(np.mean((np.array(y_true) - np.array(y_pred))**2)) # 유사집단의 크기를 미리 정하기 위해서 기존 score 함수에 neighbor_size 인자값 추가 def score(model, neighbor_size=0): id_pairs = zip(x_test['user_id'],x_test['movie_id']) # user_id와 movie_id 쌍을 만든다 y_pred = np.array([model(user, movie, neighbor_size) for (user, movie) in id_pairs]) y_true = np.array(x_test['rating']) return RMSE(y_true,y_pred) # 데이터셋 만들기 x = ratings.copy() y = ratings['user_id'] x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.25, stratify=y) rating_matrix = x_train.pivot(index='user_id', columns='movie_id', values='rating') # 코사인 유사도 계산 # train set의 모든 가능한 사용자 pair의 cosine similarity 계산 from sklearn.metrics.pairwise import cosine_similarity matrix_dummy = rating_matrix.copy().fillna(0) user_similarity = cosine_similarity(matrix_dummy, matrix_dummy) user_similarity = pd.DataFrame(user_similarity, index=rating_matrix.index, columns=rating_matrix.index) ### 사용자 평가 경향을 고려한 함수 ### rating_mean = rating_matrix.mean(axis=1) rating_bias = (rating_matrix.T - rating_mean).T # 평점 평균에 대한 편차 ##################################### rating_binary_1 = np.array(rating_matrix > 0).astype(float) # 0 초과의 값이 있는 셀은 true, 나머지는 false로 rating_binary_2 = rating_binary_1.T counts = np.dot(rating_binary_1, rating_binary_2) counts = pd.DataFrame(counts, index=rating_matrix.index, columns=rating_matrix.index).fillna(0) def CF_knn_bias_sig(user_id, movie_id, neighbor_size=0): if movie_id in rating_bias: sim_scores = user_similarity[user_id].copy() movie_ratings = rating_bias[movie_id].copy() no_rating = movie_ratings.isnull() # 평가가 없는 common_counts = counts[user_id] # 주어진 user_id를 기준으로 다른 user들과 공통으로 평가한 영화의 개수들을 담은 배열 low_significance = common_counts < SIG_LEVEL # 공통 평가한 영화 개수가 미리 정해진 level보다 낮은 사용자에 대해 false 처리 none_rating_idx = movie_ratings[no_rating | low_significance].index # 추천 알고리즘에서 제외할 인덱스 추출 movie_ratings = movie_ratings.drop(none_rating_idx) sim_scores = sim_scores.drop(none_rating_idx) if neighbor_size == 0: prediction = np.dot(sim_scores, movie_ratings) / sim_scores.sum() prediction = prediction + rating_mean[user_id] else: if len(sim_scores) > MIN_RATINGS: neighbor_size = min(neighbor_size, len(sim_scores)) sim_scores = np.array(sim_scores) # 행렬 연산을 위해 배열 형태로 변환 movie_ratings = np.array(movie_ratings) user_idx = np.argsort(sim_scores) sim_scores = sim_scores[user_idx][-neighbor_size:] movie_ratings = movie_ratings[user_idx][-neighbor_size:] prediction = np.dot(sim_scores, movie_ratings) / sim_scores.sum() prediction = prediction + rating_mean else: prediction = rating_mean[user_id] else: prediction = rating_mean[user_id] # RMSE 개선을 위한 조정 # if prediction <= 1: # prediction = 1 # elif prediction >= 5: # prediction = 5 return prediction SIG_LEVEL = 3 MIN_RATINGS = 3 score(CF_knn_bias_sig, 30)
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part3: 자료구조와 알고리즘
iterator의 begin, end, insert, erase함수에서 iterator를 반환할 때 일어나는 현상이 궁금합니다
반환할 때 return iterator(node) 이런식인데이러면 임시객체를 생성해서 리턴하니까return 하고 나서 사라지지 않을까요??? 예상은 해봤는데list가 iterator를 하나만 가지기 위함이라고 생각해봤습니다.new를 써서 동적할당으로 하면 함수를 호출할때마다 iterator가 늘어나니까 그럴 수 있다고 생각했는데만약 맞다면임시객체를 리턴할 때 어떤 현상이 일어나는지 알고 싶습니다
-
미해결
교육자료
Verilog FPGA Program 3를 수강중인데 PDF와 소스는 어디에서 다운받나요?
-
미해결카프카 완벽 가이드 - ksqlDB
group by 리파티션에 대한 질문
안녕하세요, 만약 group by의 경우 일반 컬럼을 지정해서 리파티션이 되었다면 해당 source topic 레코드를 조회하면 그 때부터 key값에 group by로 지정한 일반 컬럼이 key로 나오게 되는건가요? 아니면 group by 만을 위한 리파티션 수행 내부 토픽이 별도로 생성되는거고 source 토픽은 그냥 유지되는건가요?
-
해결됨SW 개발자를 위한 성능 좋은 SQL 쿼리 작성법
강의 연장 신청
안녕하세요~! 수강기간이 내일까지인데 강의 수강을 끝내지 못해서... 강의 연장 신청 가능할까요?
-
미해결15일간의 빅데이터 파일럿 프로젝트
각 서버에 설치하는 프로그램은 어떻게 정하나요?
안녕하세요!강의 듣다 궁금한 점이 몇 가지 있어 질문 드립니다.먼저 강의에서는 빅디님께서 각 서버에 설치할 프로그램을 알려주셔서 편하게 설치는 했는데, 어떤 기준으로 설치할 프로그램을 선택하고 각 서버에 설치할 프로그램을 나눠서 아키텍처를 짜셨는지 빅디님의 관점?이 궁금합니다.예를 들어 postgreSQL는 서버 1에만 설치하고, HBase Region 같은 경우는 서버 세 곳 모두 설치 한 이유와, 다른 RDBMS 중에서도 postgreSQL을 선택한 특별한 이유 같은거요..!그리고 서비스 중간에 서버를 늘리려고 할 때 추가해야 하는 서버 수는 어떻게 정하나요? 모니터링 하다가 서버 전체 메모리의 몇 퍼센트를 차지하게 되면 서버를 늘려야 한다 이런 기준이 있을까요? 비용은 제외하고 기술적인 부분에서 기준으로 세울만한 건 어떤게 있는지 궁금합니다. 현업에서는 프로젝트 특성마다 다 다르게 설계를 해야 할 테고 3V 관점으로 봐야 한다는 건 알겠는데 조금 더 구체적인 예시가 있으면 이해하는데 도움이 많이 될 것 같습니다! 감사합니다:]
-
미해결[아파치 카프카 애플리케이션 프로그래밍] 개념부터 컨슈머, 프로듀서, 커넥트, 스트림즈까지!
카프카 적용 시 API 를 조회 해야 된다면 어떻게 해야 되는지 궁금합니다.
카프카 인강을 듣고 처음 적용하려고 하고 있는데요.혹시 프로듀서에서 컨슈머로 데이터를 받고, API 통신을 4회 정도 하여 DB에 넣는다고 하면, 적정하지 않은 컨슈머 렉으로 진행되는 부분이 있지 않을까 고민이 되어서요.비동기 방식으로 진행하고 큐에 데이터를 쌓고 진행하려고 하는데, 큐에 데이터가 많이 쌓인다면 메모리 이슈로도 진행될 것 같아서요. 요점은프로듀서에서 컨슈머로 데이터가 들어오면 비동기 방식으로 큐에 쌓은다.큐에 쌓은 데이터를 API 통신으로 데이터를 가공한 후 DB에 넣어준다.이렇게 되면 카프카에서 컨슈머로 렉이 발생되지는 않겠지만 큐에 데이터가 쌓이면서 메모리 문제가 되지 않을까 고민이 있습니다.
-
미해결[핵집] 2025 빅데이터 분석기사(필기)_과목 1~2
강의자료 통합본 요청합니다.
빅분기 1~2와 3~4 모두 강좌 신청했습니다. 강의 자료 통합본 요청드립니다.kwonej89@naver.com
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
JPQL 숫자 연산 함수 관련해서 문의드립니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]여기에 질문 내용을 남겨주세요. COUNT(*) 함수를 사용해서 Member의 수를 카운트 하는 테스트를 했는데, 반환 타입을 Integer로 넣어서 Integer가 나올 것으로 기대했으나 IillegalArugumentException이 발생했습니다. 문제는 아래 쿼리에서 컴파일 오류가 발생하지 않았다는 점인데, 실제로 실무에서는 SELECT절 함수를 통한 값을 얻어 올 때 어떻게 사용하는지 궁금합니다.예를 들어 타입드 쿼리 대신 Query를 사용해 Object를 받아 인티저 타입으로 캐스팅한다던지, 함수가 반환하는 명확한 타입을 모두 알고 사용해야 하는 것인지, 또는 위 문제를 해결 할 수 있는 다른 방법이 있는지 알려주실 수 있나요 ? TypedQuery<Integer> query1 = em.createQuery("SELECT count(m) from Member m", Integer.class);
-
해결됨
스프링 오류
Java HotSpot(TM) 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended 이 문구가 나와서 localhost:8080도 들어가지지 않습니다. 구글에 검색해보니 properties의 async로 들어가서 체크해제해보라는 말 있어서 해봤는데도 해결되지 않았습니다.이 오류때문에 localhost:8080도 못들어가서 강의 진행도 안되고 있습니다. 빠른 해결책 주시면 감사하겠습니다.
-
해결됨
데이터베이스 h2 실행
안녕하세요? 현재 김영한 강사님의 스프링 입문강의를 수강중인 학생입니다.데이터베이스 h2 다운받았고 강의에 따라 몇 번 실습해보고 컴퓨터를 부팅했습니다.다시 데이터베이스 h2를 실행하는 방법이 무엇인가요??