묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결모던 안드로이드 - 코틀린과 Jetpack 활용
지금도 프로그램이 되나요?
공적마스크 api가 종료 됨으로써 지금도 충분히 테스트 가능한건가요? 코틀린 버전으로 다운받아서 해도 안되던데요..ㅠㅠ 혹시 지방에는 대체api에 약국리스트가 없어서 안되는건가 싶기도하고...
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
타임리프 문제
강의 따라가면서 실습하고 있는데요. html 파일 만들 때 자동으로 html 태그에 타임리프 url 이 없는데 어느 부분에서 놓친건지, 하나씩 작성해줘야하는건지 모르겠습니다
-
미해결3dsmax 초급부터 전문가까지 - 한방에 끝내는 3dsmax 강좌
low poly 탱크 모델링 2강좌 문의
11분 08초에서 리셋엑스폼하고 시메트리 적용하면 시메트리 축이 이상하고 영상에 나오는 시메트리의 오브젝트축이 다르네요. 이유를 모르겠네요
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
segmentation 관련 파일이 없습니다.
안녕하세요. PSCAL VOC 파일 다운 중에 접속 불가가 있어 질문 리스트를 찾아보니 다른 사이트를 알려주셔서 파일 다운을 완료하였습니다. 다만 저도 segmentation 파일이 없었고, 이에 대해 답변 해주신 아래의 사이트에서 다운을 시도하였지만 접속이 불가한 상태입니다. 이에 대한 다른 사이트가 있을까요? http://host.robots.ox.ac.uk/pascal/VOC/voc2012/index.html#data
-
해결됨따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
와 겨우겨우 했습니다.
처음이라 그런지 아니면 원래 이런지 정말 어려워요ㅠㅠㅠ 그래도 유익하게 잘 배우고 있습니다. 좋은 강의 감사합니다!
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
postman에서 email값이 null...
안녕하세요, 수업 정말 감사합니다~! 오타인것 같아서, 선생님 깃허브도 보고 비교하면서 했는데, 여전히 고쳐지지가 않아서, 질문드려요 ㅠ console로 찍었을때, user값이 이 값으로 나오는데, 들어노는게 문제인지 어느 부분이 잘못되었을까요? email값이 null이네요.. ㅠ { role: 0, _id: 5fcf43430591df2796372b6c } https://github.com/cocoball200/react-project 위에 제 깃허브에서 commit 메세지에 error부분들을 고쳤습니다! 항상 감사합니다~!
-
미해결아마존 클라우드 무료계정으로 시작하는 서버리스 애플리케이션 프로젝트
다 해줘도 여전히 오류가 발생합니다.
api gateway에서 cors 활성화 시켜주고 각 lambda에 수정한 소스를 넣어주었는데도 오류가 발생하는데 답답하네요 ㅠ
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
gradlew.bat
파일이 없는대 어떻게 해야 하죠?
-
미해결데브옵스(DevOps)를 위한 쿠버네티스 마스터
ubuntu ova 관련해서 질문 드립니다.
안녕하세요. 업무상 VMWare를 사용하고 있어서 VirtualBox로 사용하는데 제약이 있어서 ubuntu VM을 VMWare에 설치해서 진행하려고 하는데, 따로 ova 안에 구성해놓은 것들이 있으신가요? 또 ubuntu가 현재 최신버전으로 나왔는데, 최신버전으로 설치해도 강의를 진행하는데 문제가 없는지도 확인 부탁드립니다.
-
해결됨스프링 데이터 JPA
비동기 쿼리
안녕하세요 기선님 항상 좋은 강의 감사드립니다! 매 영상마다 질문을 남기는 것 같아 죄송하네요.. 비동기 쿼리에 대한 내용을 제 나름대로 요약해서 해석해보려 노력중인데 곡해가 있을까 걱정이 되어 이렇게 글을 남깁니다. 비동기 쿼리를 사용하는 것을 보니, 쿼리를 날리고 데이터를 받아오기 전까지 메인 쓰레드를 놀리지 않기 위해 비동기 쿼리를 사용하는 것으로 보입니다. 그런데 Future 을 사용하면 결국 get 으로 받아오는 작업에서 메인쓰레드가 블로킹이 되니까 Future 보단 콜백메서드를 사용할 수 있는 ListenableFuture 을 사용하는 걸 추천하신거라고 이해 됩니다. 그렇다면 여기서 조금 쓸모없는(?) 작업이긴 하지만 Future 의 get 을 받는 Thread 를 직접 구현해도 되겠다는 생각도 듭니다. 그리고 비동기 쿼리에 대한 테스트 코드 작성이 어려운 이유는 테스트의 특성상 위 테스트는 작업 전체가 한 트랜잭션이 될 테고, save 된 데이터를 가져오기 위한 쓰레드가 작업을 마치기도 전에 메인쓰레드가 끝나버리면서 하이버네이츠의 DB에 변화를 가져오지 않는 쿼리는 날리지도 않는 특성에 의해 insert 쿼리 조차 날라가지 않는 테스트가 되는 거구요. 의도적으로 flush() 를 통해 insert 를 할 수 는 있으나, insert 와 같은 트랜잭션 안에서 시작된 select 쿼리는 그 트랜잭션 내에서 insert가 된 데이터를 인지할 방법은 없게 된다는 설명으로 이해했습니다. 그렇다면.. 테스트를 위해서 @BeforeEach 를 통해 데이터를 먼저 집어넣은 상태로 동작을 확인할 수 있진 않을까 했지만, 이 작업자체도 DB의 변화를 일으키는 작업이 아닌만큼 하이버네이츠가 insert 를 날리지조차 않더군요. 그래서 위 코드에서 flush()를 추가하여 insert를 날렸지만.. 결과는 이렇더군요... 그런데 제 나름대로의 해석으로는 마지막 결과가 조금 이해가 되지 않네요.. 데이터를 집어넣었고 select 를 하는게 보이는데, size 는 0 이뜨고 근데 또 테스트는 성공하네요.. @BeforeEach도 결국은 한 트랜잭션안에서 동작하여 기존의 테스트 코드처럼 내부에서 Comment를 insert 하는 것과 동일한 작업인것인지.. 근데 또 테스트는 어떻게 성공한건지... 어디가 잘못된걸까요? 또 만약,, 제가 이상하게 이해한 부분이 있는 것 같다면 알려주시면 너무 감사하겠습니다!!
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
코랩으로 csv 파일 불러오는 것 질문드립니다.
맥북에 아나콘다 설치돼 있긴한데 데스크탑, 놋북에서 공부하려면 아무래도 코랩이 편해서 코랩 사용중입니다. 여하튼.. 제가 코랩 쓰는 데 csv 파일 불러오는 것에 대해 질문드립니다. 구글 검색해보니 1. 컴퓨터에 저장돼 있는 csv 파일 불러오기 2. 구글드라이브에 있는 csv 파일 불러오기 2가지 방법이 있는데 2번 구글 드라이브에서 csv 파일 불러오는 것을 못하고 있습니당 ㅜ from google.colab import drive drive.mount('/content/drive') 요걸로 계정 액세스하고 filename = '/content/drive/Colab Notebooks/titanic_train.csv' 얘로 불러오려하는데 file notfound 에러가 뜹니당. 경로가 잘못된 것 같은데 지금 csv파일 경로가 내 드라이브 - Colab Notebooks - titanic_train.csv 요렇게 되어있는데.. 잘못된 부분이 있을까요??아님 다른 곳에서 잘못한걸까요 ㅜ 구글 드라이브에서 csv 불러오는 것 설명 부탁드립니당! 참고로 1번 컴퓨터에 있는 csv 파일은 from google.colab import files myfile = files.upload() import io import pandas as pd 이렇게 한다음 pd.read 로 csv파일 잘 불러왔습니당.
-
미해결파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
출력 값 중에 소수점으로 되는건 이유가있나요? (sqrt)
감사합니다
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
리스트 강의에서 질문 있습니다.
변수를 아래와 같이 설정하고 나서 'Ace'의 index를 알고 싶다면 어떻게 사용할 수 있나요? e = [1000, 10000, ['Ace', 'Base', 'Captine']] print(e.index('Ace'))로 작성해 보았는데 에러가 뜨더라고요 어떻게 하면 될까요?
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
강사님, 다음 강의로는 AWS기반의 EKS, NLB, SSL, Nginx, Aurora for mysql을 활용한 쿠버네티스 강의를 만들어주시면 감사하겠습니다.
안녕하세요, 강사님 다음 강의로는 AWS기반의 EKS, NLB, SSL, Nginx, Aurora for mysql을 활용한 쿠버네티스 강의를 만들어주시면 감사하겠습니다. 그럼 부탁 드리겠습니다. 퀄리티 좋은 강의해주셔서 고맙습니다.
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
Dockerfile와 Dockerfile.dev의 배포 관련 질문
docker-compose.yml 등을 본다면 아래와 같이 대부분 아래와 같이 dockerfile의 설정이 Dockerfile.dev로 되어있습니다. 다만 Dockerfile(NginX와 Compose 80등을 설정)가 배포를 위한 도커파일이라고 하셨는데 이를 별도로 지정하지 않아도 괜찮은 건가요? 결국 EBL에서 docker-compose up이 불리는 거라고 생각되는데 이때 Dockerfile.dev을 통해 빌드하는지 Dockerfile을 통해 빌드하는지 알고 싶습니다. version: "3" services: react: build: context: . dockerfile: Dockerfile.dev ports: - "3000:3000" volumes: - /usr/src/app/node_modules - ./:/usr/src/app stdin_open: true tests: build: context: . dockerfile: Dockerfile.dev volumes: - /usr/src/app/node_modules - ./:/usr/src/app command: ["npm", "run", "test"]
-
해결됨만들면서 배우는 HTML/CSS
질문입니다.
prev next 1 2 3 버튼이 안 나오길래 그냥 진행 했더니 동영상을 다 따라한 이후 나와야 할 슬라이드가 나오지 않고 이미지 1 2 3 이 수직으로 나타납니다.
-
미해결Javascript ES6+ 제대로 알아보기 - 초급
template literal 강의에서의 reduce 메소드
안녕하세요 강의를 듣다가 reduce 메소드를 사용한 코드에 대해 제가 잘 이해하고 있는지 한 번 확인해주실 수 있을까요? 아래 코드의 reduce 메소드가 안에서 어떻게 반복하는지 너무 헷갈려서 한 번 적어보았습니다... 1번 ' ' + 이 사과는 하나에 +(2000+' ').replace(/\d{1,3}(?=(\d{3})+(?!\d))/g, '$&,') 2번 2,000+ ' ' + 원이고, 총 +(1234567 + ' ').replace(/\d{1,3}(?=(\d{3})+(?!\d))/g, '$&,') 3번 1,234,567+ ' ' + 개를 구입하시면 총 +(2000*1234567).replace(/\d{1,3}(?=(\d{3})+(?!\d))/g, '$&,')이다. 마무리로 '원 이에요.'의 strs[strs.length -1]을 더해준다 이렇게 안에서 반복한다고 보면 되나요?
-
미해결윤재성의 처음시작하는 JavaScript Tutorials
질문입니다.
var tag_a=document.createElement("a"); 에서 "a" 라고 작성하지 않으면 지정된 페이지로 넘어가지를 않더라구요. 여기에서 "a"가 무엇을 의미하는지 궁금합니다.
-
미해결스프링 부트 개념과 활용
Failed to start component, 포트 사용 오류
지난 어느 강의에서 이미 8080포트를 사용 중인 프로세스를 조회하는 명령어로 찾아봤는데 8080포트를 사용하는 프로세스가 없어요; 그래서 차선책으로 properties 파일에서 다른 포트 번호로 지정해서(server.port=8090 등) 구동을 시켜봐도 바꾼 포트번호 또한 사용 중이라는 오류가 뜹니다 어떻게 해결해야할까요 ㅜㅜ *추가 내용 3달 전 어느 수강생 질문을 참고하여 server.ssl.key-alias의 value 값을 'spring' 대신 'tomcat'으로 바꾸었더니 정상적으로 동작이 됩니다.. 원래 keytstore 생성 작업 중 설정했던 별칭 spring으로 작성해야하는 거 아닌가요?
-
미해결iOS/Android 앱 개발을 위한 실전 React Native - Basic
state 사용에 관하여..
안녕하세요? 질문 답변에 항상 감사드립니다. ..^^ 실제 코딩을 하다보니 state 값을 control 하기가 참 힘드네요..ㅠㅠ 현재 회원가입화면에서 이메일주소와, 비밀번호, 확인 비밀번호를 입력받아 올바른 입력인지 체크하는 단계입니다. 그런데, 첫번째, 두번째 비밀번호 입력할때마다 첫번째, 두번째 비밀번호가 같은지 비교하여야하는데, 첫번째 비밀번호를 입력하여 setState 를 하고 바로 state값을 얻어와 2번째 비밀번호와 비교를 해야하는데. 바로 적용된 state 값을 안 넘어오고 이전의 state값이 넘어옵니다. (마지막 입력 글자는 state값으로 바로 안넘어옵니다.) 이럴때는 어떻게 해야하는지 참 난감합니다. TextInput onChangeText에서 입력값을 setState를 했는데도 다시 state값을 불러오면 바로 반영이 안되어 내부 멤버변수로 그냥 사용을 했습니다. 그런데, 이번에는 err_password 부분도 setState한 부분이 바로 반영이 되질 않습니다. 이것도 멤버변수로 그냥 사용을 해야 하는지, 아님 제가 모르는 부분이 있는지 꼭 답변 부탁드립니다. 소스코드: 클래스 선언 부분) class Join01_Start extends Component { _emailTextInput = '' _passwordTextInput = '' _passwordTextInput2 = '' constructor(props) { super(props) this.state = { emailTextInput : '', passwordTextInput : '', passwordTextInput2 : '', refEmail : React.createRef(), refPassword : React.createRef(), refPassword2 : React.createRef(), err_email : false, //이메일입력 체크 에러 내용 err_password: false, //패스워드입력 체크 에러 내용 err_password2: false, //패스워드입력 체크 에러 내용 password_msg : '', //패스워드 입력 현황 메시지 password2_msg : '', //패스워드2 입력 현황 메시지 isNextDisable: true, //다음 버튼 활성화여부 } } //패스워드 입력 Validation checkPasswordValidation = (passwordTextInput) => { let reg = /^(?=.*[A-Za-z])(?=.*\d)(?=.*[$@$!%*#?&])[A-Za-z\d$@$!%*#?&]{8,}$/; if (reg.test(passwordTextInput) === false) { //잘못 입력시 this.setState({err_password : true}) } else { //에러없음 this.setState({err_password : false}) console.log('err_password false state setting') } console.log('check err_password', this.state.err_password ) this.displayErrPassword() } displayErrPassword = () => { console.log('dis1', this._passwordTextInput, this.state.err_password, this._passwordTextInput2, this.state.err_password2) if (this._passwordTextInput.length === 0 && this._passwordTextInput2.length === 0) { this.setState({password_msg : ''}) this.setState({password2_msg : ''}) } else { if (this.state.err_password) //비번1에 에러 있으면 this.setState({password_msg : '비밀번호가 올바르지 않습니다.'}) else {//비번1에 에러없으면 this.setState({password_msg : '사용가능한 비밀번호입니다.'}) } } } 소스코드: render() 함수 내부 {/* 비밀번호 */} <View> <View style={{ padding: 0, margin: 0, height: 50, flexDirection:'row', alignItems: 'center'}}> <TextInput placeholder="비밀번호(영문,숫자,특수문자 포함 8~12자리)" ref={(password) => {this.state.refPassword = password}} autoFocus={false} secureTextEntry={true} keyboardType='default' //ios에서 키패드 안열리면 command + K 누르면 다음부터 보임 textContentType='oneTimeCode' //yellow strong 패스워드 방지하기 maxLength={12} style={{paddingTop: 0, paddingBottom: 0 , width: '92%', height: '85%', borderColor: '#5378DF', borderBottomWidth : 1, fontSize: 16, textAlign: 'left', marginRight: 5}} value={this.state.passwordTextInput} blurOnSubmit={false} //키보드 깜빡임 방지 returnKeyType='next' onEndEditing={()=>console.log('pw1 endediting')} onSubmitEditing={() => this.state.refPassword2.focus()} onChangeText={(passwordTextInput) => { this._passwordTextInput = passwordTextInput this.setState({ passwordTextInput: passwordTextInput }) this.checkPasswordValidation(passwordTextInput)}} /> 선생님의 경험담을 간절히 기다립니다..