묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨실전! 코틀린과 스프링 부트로 도서관리 애플리케이션 개발하기 (Java 프로젝트 리팩토링)
Gradle 관련 질문입니다.
안녕하세요. 신규 프로젝트를 생성하여 강의를 따라하려고 하다가 스프링부트의 그래들과 관련하여 궁금한 점이 있어서 질문드립니다. 인텔리제이의 스프링 이니셜라이저로 스프링부트 프로젝트를 생성할 때 그래들이 두 가지로 나뉘어지더라구요. 확인해보니 Gradle-Groovy가 보편적인(?) 기존 그래들인것 같고, Gradle-Kotlin은 그래들 파일이 build.gradle.kts로 되어있고 문법도 조금 다른것 같았습니다. Gradle-Kotlin에 코틀린이 적혀있다보니 저의 개인적인 생각으로는 이게 코틀린 프로젝트에 좀 더 맞지 않을까?(호환성 등등...) 하는 생각이 들게 되었는데 두 종류 중 어떤것을 쓰는게 더 좋을지, 혹은 어떤것을 쓰더라도 별 문제는 없는지에 대한 의견이 궁금합니다!
-
미해결스프링 데이터 JPA
@EnableJpaRepositories 설정을 스프링부트가 어디에서 자동설정하나요?
안녕하세요!@EnableJpaRepositories 설정을 스프링부트가 어디에서 자동설정하나요? 자동설정의 흐름 (예를 들면 스프링부트의 어떤 애노테이션에서 타고 들어가면 소스코드에서 @EnableJpaRepositories를 확인할 수 있는지) 가이드를 주시면 감사하겠습니다!
-
미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
프론드엔드 파일 관련 질문드립니다! ( 오류 )
안녕하세요 고양이 CRUD 프로젝트 듣고있는 학생입니다. 프론트 엔드 파일을 받아서 npm i 후 서버를 키려 하는데 npm run build : 에러 미 발생 ( .next 파일에 아무것도 없어요 ㅠ)npm run start : npm run dev:이렇게 에러 메시지가 노출됩니다npm run dev의 에러메시지에 react 버전 업데이트 필요해 보여서 npm install react 하면은 package.json의 정해진 버전보다 상위로 올라가서 그런가 설치가 안되더라구요 ㅠㅠ 어떻게 하면 해결이 될까요 ㅠㅠ
-
미해결비전공자를 위한 진짜 입문 올인원 개발 부트캠프
마켓 키보드 부분이 밑으로 가게 됩니다
다른 수강생분들에게도 문제 해결에 도움을 줄 수 있도록 좋은 질문을 남겨봅시다 :) 1. 질문은 문제 상황을 최대한 표현해주세요.2. 구체적이고 최대한 맥락을 알려줄 수 있도록 질문을 남겨 주실수록 좋습니다. 그렇지 않으면 답변을 얻는데 시간이 오래걸릴 수 있습니다 ㅠㅠex) A라는 상황에서 B라는 문제가 있었고 이에 C라는 시도를 해봤는데 되지 않았다!3. 먼저 유사한 질문이 있었는지 꼭 검색해주세요! 키보드를 붙이면 위에 그림처럼 농구공 오른쪽이 아니라 밑으로 가게 되어서요 어떤점이 문제인지 잘 모르겠습니다 ..!!
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
프론트엔드 쪽을 보면서 궁금한게 생겼습니다
안녕하세요 강의 잘 듣고 있습니다!1) MVC에서 V는 view잖아요 그리고 view를 제공하는 jsp나 thymeleaf같은 템플릿이 있구요... 그러면 MVC라는건 BE가 프론트 엔드 없이 혼자서 개발할때 View를 고려하며 개발하는 과정인가요?? 프론트엔드 개발자가 같이 일을 할텐데 MVC에서 view를 고려하는 맥락이 무엇인지 궁금합니다...!! BE에서는 그냥 기능구현만 하고 view 필요없이 데이터만 넘겨주면 될 것 같아서요... View는 왜 있는걸까요 .. ?2) 그리고 강의 내용과는 큰 상관 없는 것 같지만, BE에서 FE로 데이터를 어떻게 넘겨주는지 이해가 안돼서 질문드립니다... 검색해보면 rest API 를 사용하여 json을 넘겨주는거로 이해를 했는데, 영한님 강의 들어보면 json을 넘겨주는 과정은 없는 것 같아서 FE와 어떻게 소통하는지가 궁금합니다!알려주시면 감사하겠습니다 !!
-
해결됨[개정판] 파이썬 머신러닝 완벽 가이드
4.4 random forest부분, GridSearchCV 질문
안녕하세요. 강의 잘 듣고 있습니다. 감사합니다. 강의 내용을 실습하던 중 궁금한 점이 생겨 질문 남깁니다. 4.4 랜덤포레스트를 실습하던 중, 그리드서치CV가 어떻게 작동하는지 궁금하여 여러번 실험해보다가, 답을 찾지 못해 교수님께 여쭙습니다. 제가 생각한 것은 이렇습니다. 먼저 데이터셋을 나눈 뒤,random forest classifier를 하나 생성하여 f1스코어를 측정합니다.(처음엔 accuracy로 했었는데 같은 결과였고, f1스코어를 선호하여 바꾸었습니다) 그후 GridSearchCV의 성능향상정도를 측정하기 위해random forest classifier를 동일한 random_state로 생성하여,max_depth, min_samples_split, min_samples_leaf 3가지 그리드 파라미터를 설정하여GridSearchCV를 수행했습니다. 이후 같은 X_test셋으로 predict하여 f1스코어를 측정하였는데,baseline이 되는 첫번째 랜덤포레스트 클래시파이어보다 성능이 떨어지는 경우가 생겼습니다. 샘플셋도 같고, 그리드파라미터 설정도 baseline estimator의 파라미터를 포함하여 설정했는데,GridSearchCV() 어떻게 작동하길래 더 f1스코어가 더 낮게 파라미터를 선택하는 것일까요? 제가 놓치고 있는 부분이 있을 것 같은데, 무엇인지 알려주시면 정말정말 감사드리겠습니다. 코드와 실행결과를 첨부합니다. (10번정도 돌린다고 하면, 6번정도는 두 f1스코어가 같고, 3번정도는 GridSearchCV의 best_estimator_가 더 높았으며, 1번정도는 첫번째 GridSearchCV를 적용하지 않은 랜덤포레스트가 더 높았습니다. 이 마지막 경우가 생기는 원인이 궁금합니다.) from sklearn.datasets import load_breast_cancer from sklearn.model_selection import train_test_split from sklearn.ensemble import RandomForestClassifier from sklearn.metrics import f1_score from sklearn.model_selection import GridSearchCV import random import pandas as pd # 위스콘신 유방암 데이터 로드, train_test_split으로 데이터 나누기 cancer = load_breast_cancer() X_train, X_test, y_train, y_test = train_test_split(cancer.data, cancer.target, test_size=0.2) # 대조군과 변수를 통일시키기 위해 같은 난수 이용 rs = random.randrange(1,50) # 기본설정 랜덤포레스트 돌려보기. 디폴트 n_estimators=100 rf = RandomForestClassifier(n_jobs=-1, random_state=rs) # 모든 코어 사용 rf.fit(X_train, y_train) pred = rf.predict(X_test) f1 = f1_score(y_test, pred) print('랜덤 포레스트 f1스코어: {0:.4f}'.format(f1)) print('\trf max_depth:', rf.get_params()['max_depth']) print('\trf min_samples_split:', rf.get_params()['min_samples_split']) print('\trf min_samples_leaf:', rf.get_params()['min_samples_leaf']) print('\trf random_state:', rf.get_params()['random_state'], '\n') # 그리드서치 적용해보기 # 비교를 위해 디폴트값인 None, 2, 1을 모두 포함했다. params = { 'max_depth': [None, 4,9,16], 'min_samples_split':[2,6,12], 'min_samples_leaf':[1,4,8] } # 같은 random_state로 RF 랜덤포레스트 재생성 rf = RandomForestClassifier(n_jobs=-1, random_state=rs) grid = GridSearchCV(rf, param_grid = params, n_jobs=-1, scoring='f1') grid.fit(X_train, y_train) # refit된 rf에 테스트데이터를 돌려보기 pred = grid.best_estimator_.predict(X_test) f1 = f1_score(y_test, pred) print('GridSearchCV 후 refit된 RF f1스코어: {0:.4f}'.format(f1)) print('\tgrid max_depth:', grid.best_params_['max_depth']) print('\tgrid min_samples_split:', grid.best_params_['min_samples_split']) print('\tgrid min_samples_leaf:', grid.best_params_['min_samples_leaf']) print('\trf random_state:', rf.get_params()['random_state'])
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
실행 시 흰 화면으로 나오고 있습니다.
안녕하세요.열심히 강의를 듣고 있는 수강생입니다. 다름이 아니라 강의 내용과 동일한 코드를 작성하였을 때 빈화면이 나타나 많은 검색을 해보았습니다. 그런데 ssl 관련 문제일수도 있다고 하여 어떻게 해결할 수 있는 방법이 있을까해서 질문드리게 되었습니다.(사내망에서 강의를 듣는 중이라 해당 문제가 발생한거 같긴합니다만, 제가 집에서도 다시 작업을 진행해볼 예정입니다.) WebView 내에서 ssl을 무시할 수 있는 방법이 있을까요? 있다면 시도해보고 싶습니다 ㅜㅜ E/chromium(21723): [ERROR:ssl_client_socket_impl.cc(999)] handshake failed; returned -1, SSL error code 1, net_error -202
-
해결됨모든 개발자를 위한 HTTP 웹 기본 지식
application/x-www-form-urlencoded 사용 시 숫자를 보낼 수 있나요?
Content-Type을 application/x-www-form-urlencoded 로 지정하여 form hidden 값으로 숫자를 넣어서 보내더라도 서버쪽으로 넘어갈 때는 문자열 인코딩되서 넘어 가기에 최종적으로 서버쪽에서는 숫자로 받을 수는 없는 것이죠!?
-
해결됨[코드캠프] 시작은 프리캠프
싸이월드 만들기 1탄에서 피그마 링크를 어디서 확인하나요?
싸이월드 1탄 강의를 듣고 있는데 제공했다는 피그마 링크를 통해서 진행하는데 피그마 링크를 확인할수 있는 안내가 없어 강의를 진행하기가 어렵습니다.학습용으로 제공된 피그마 계정을 공유부탁드립니다
-
미해결이미지 관리 풀스택(feat. Node.js, React, MongoDB, AWS)
세션에 관한 질문이 있습니다.
안녕하세요 선생님.이번 세션 강의가 조금 저에겐 어렵게 다가오는 부분이 있네요.궁금한게, 여러번 로그인을 하게 되면 세션이 여러개 생성되는데, 로그아웃 할 때는 저희가 입력한 sessionid만 사라지는 것을 볼 수가 있습니다.그러면 나머지 sessionid는 현재 저장되어 있는 상태인데, 이렇게 없애지 않는 sessionid가 있어도 보안상 괜찮은건가요~?
-
미해결
three.js 수업에 webpack error..ㅠㅠ
1 ERROR in child compilations (Use 'stats.children: true' resp. '--stats-children' for more details)npm start를 해서 실행하면위와 같은 에러가 나네요.ㅠㅠ선생님께서 수업하는거 그대로 하는데 뭐가 문제인지 모르겠습니다ㅠㅠ
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
@Temporal 과 @CreatedDate 차이가 궁금합니다.
안녕하세요 해당 강의에서 날짜에는@Temporal 어노테이션을 사용하셨는데 김영한님과 친하신 배민 개발자 출신 jojoldu님은 @CreatedDate @LastModifiedDate를 사용하여생성일 / 수정일을 나타내더라고요 @Temporal과 @CreatedDate @LastModifiedDate의 차이점이 궁금합니다@Temporal은 Time, Date, TimeStamp 이렇게 3가지 타입으로 나타낼 수 있다 날짜,시간을 나타내고 싶지만 Created, Modify가 아닌 경우에 사용한다. 이렇게 2가지 차이점을 생각해봤는데 이게 맞을까요...?
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
2:51초 부분 GoogleMapController? mapController
GoogleMapController? mapController;이 부분에 대한 질문입니다.변수명을 mapController로 작성할 때 자동완성이 되던데 꼭 변수명이 mapController여야만 하나요?
-
미해결Python 입문자를 위한 강의
섹션 1 미션 답 제출합니다.
(사진)
-
미해결Vue.js 중급 강좌 - 웹앱 제작으로 배워보는 Vue.js, ES6, Vuex
transition 관련 질문 있습니다
소스는 위와같이 강의내용대로 적용되었으나, 트랜지션이 작동하지 않는 부분이 발생합니다.TODO 목록을 삭제할때는 트랜지션이 작동하는데 TODO 목록을 추가하는 경우는 트랜지션이 작동하지 않네요.그래서 혹시나 싶어 style 부분에 아래 css를 추가하였습니다.이렇게 적용하니 TODO 목록 추가에 트랜지션이 적용되었습니다.하지만, translateY 때문인지 아래로 30px 내려가면서 추가되는 애니메이션이 적용되더군요. 혹시 강의내용처럼 위로 올라오면서 추가되게 하려면 어떻게 해야할까요??
-
미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
passport와 jwt
강의에서는 session을 사용하고 있는데 만약 로그인을 jwt토큰으로 구현한다면session: false 옵션을 주고isLogginde와 isNotLogginedIn 미들웨어처럼 accessToken과 refreshToken에 대한 인증절차를 직접 작성해서미들웨어로 등록해주면 될까요?패스포트가 다양한 소셜 로그인 구현시 편리함을 주는건 알겠는데 jwt를 사용한다면 패스포트를 어떤 방식으로 사용해야 할 지 잘 모르겠습니다
-
미해결남박사의 파이썬 기초부터 실전 100% 활용
변수의 type을 일치시켜야 하나요?
안녕하세요! 숫자맞추기 게임만들기를 수강하다가 질문이 생겼습니다.강의에서 보면 number = random.randint(1,99) user_input = input("몇일까요?")를 작성하는데요number에 저장된 값을 그대로 user_input으로 입력해도 같지 않다고 나옵니다. 예를들어 number 에 5가 저장되어있고user_input에 5를 입력하면 string으로 '5'가 입력되는데요number는 integer 형이고강의하고는 다르게user_input은 string 형으로 변수 type이 다르면 값이 다르다고 인식하는 것 같습니다.따라서user_input = int(input("몇 일까요?"))로 입력해 줘야 같은 값을 받았을 때 정답이라고 출력이 되고 있습니다. string으로 받은 값을 int로 변환해 준 후 사용해야 하는건가요?
-
해결됨스프링 핵심 원리 - 기본편
'주문과 할인 도메인 실행과 테스트' 강의에서 질문합니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예[질문 내용]여기에 질문 내용을 남겨주세요.'주문과 할인 도메인 실행과 테스트' 강의의 4:41 부분입니다.OrderServiceTest 는 memberService와 orderService 둘을 모두 인스턴스로 갖고 있습니다. 19줄에서 memberService.join(member)를 하게 되면, memberService가 가리키고 있는 memberRepository에 member를 저장하게 됩니다. 그러나 orderService가 가리키는 memberRepository에는 위에서 저장한 member가 저장되지 않습니다. 그래서 제가 해보았을때, 21줄에서 Order order = orderService.createOrder(memberId, "itemA", 10000); 이 부분에서 NullPointerException이 발생생하였습니다. 그런데 강의에서는 해당 테스트 코드가 정상적으로 통과가 되더라구요. 분명 지금까지의 강의에서는 다른 추가적인 설정이나 이런것들이 없는것 같은데, 어떻게 통과가 될 수 있었는지 의아합니다.제가 작성한 MemberServiceImpl와 OrderServiceImpl도 첨부합니다.
-
해결됨나도코딩의 자바 기본편 - 풀코스 (20시간)
문자열 비교 질문
코드 내에서 s1 이 "1234"이고, s2 가 "1234" 라면 같은 메모리에서 참조되는 것이어서== 이 같다라고 인식된다면 ==는 주소값을 기준으로 판단하는 것인가요?
-
미해결[신규 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)
첫번째페이지크롤링 질문~!!!!
import requests from bs4 import BeautifulSoup main_url = "https://www.coupang.com/np/search?component=&q=%EA%B2%8C%EC%9D%B4%EB%B0%8D+%EB%A7%88%EC%9A%B0%EC%8A%A4&channel=auto" # 헤더에 User-Agent, Accept-Language 를 추가하지 않으면 멈춥니다 header = { 'Host': 'www.coupang.com', 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:76.0) Gecko/20100101 Firefox/76.0', 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', 'Accept-Language': 'ko-KR,ko;q=0.8,en-US;q=0.5,en;q=0.3', } response = requests.get(main_url, headers=header) html = response.text soup = BeautifulSoup(html, 'html.parser') links = soup.select("a.search-product-link") # select의 결과는 리스트 자료형 for link in links: sub_url = "https://www.coupang.com" + link.attrs['href'] response = requests.get(sub_url, headers=header) html = response.text soup = BeautifulSoup(html, 'html.parser') #try: #brand_name = soup.select_one("a.prod-brand-name").text #except: #brand_name = "" # 브랜드명 #try: #brand_name = soup.select_one("a.prod-brand-name").text #except: #brand_name = "" #print(brand_name) # 상품명 #product_name = soup.select_one("h2.prod-buy-header__title").text #product_name = "" # 가격 #product_price = soup.select_one("span.total-price > strong").text #product_price = "" #print(brand_name, product_name, product_price) for 문 안에 soup 를 print로 찍어보니 <html lang="en"> <head> <script type="text/javascript"> document.location.replace("https://www.coupang.com/"); </script> </head> <body></body> </html><!DOCTYPE html> <html lang="en"> <head> <script type="text/javascript"> document.location.replace("https://www.coupang.com/"); </script> </head> <body></body> </html> 이렇게 나와서 아래의 soup.select_one 값이 공백으로 나오네요.brand_name = soup.select_one("a.prod-brand-name").text 강의랑 코드를 몇번씩 계속 돌려보는데도 이해가 안가네요