묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
질문드려요
python = Python is amazing print(python.find("java")) 출력값은 -1 print(python.find("amazing")) 출력값은???? 해본 결과 10이나오던데 왜 그런가요??
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
회원가입이 안돼요..
회npm을 키면 이런 오류가 나오고 회원가입버튼 눌러도 반응이 없네요..
-
미해결React로 NodeBird SNS 만들기
안녕하세요
next에서 동적으로 page 처리 하는 부분이 있는데, 이걸로는 처리 못하나요?
-
미해결프로그래밍, 데이터 과학을 위한 파이썬 입문
atom실행시키면 자꾸 꺼져버려요
atom실행시키면 자꾸 꺼져요 ㅠㅠ 왜그런가요? 다시 지우고 설치해도똑같네요
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
새로 생성하는 테이블과 기존의 테이블 조인시 엔티티를 만들어야 하나요?
1.새로 런칭하는 서비스의 이벤트 테이블과 기존에 상용서비스에 이용되고 있는 카테고리테이블을 조인해야 할경우 카테고리 entity를 카테고리 스키마와 동일하게 생성을 해야 하나요? 당연한거 같긴한데 확인차 여쭤봅니다. 2.그리고 1:1관계시 강의에서 설계하신대로 메인테이블에서 키를 가지고 있는형태로 설계를 했는데, 확장성이 떨어진다는 지적을 받았습니다. 1:1 관계 테이블이 늘어날수도 있고 기존테이블이 없어지거나 합쳐질수 있다고 하는데, 어떻게하는게 좋은 설계인가요? Jpa가 처음인데 jpa설계까지 생각하니 복잡해지네요 ㅜㅜ
-
미해결화이트해커가 되기 위한 8가지 웹 해킹 기술
MYSQL Database
여기서 스타를누르고 그아듬 러닝이되야하는데 안되고 스탑으로 바꿔요..
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
CS8321오류
다른 C언어는 공부하지 않고 선생님 강의만 듣고 시작한 C언어 4일차인 수강생입니다!! TEXT RPG강의까지 수강 후 여러가지 TEXT RPG를 만들어보다가 아래와 같은 코드를 만들어봤는데요 CS8321 로컬함수 'Main'이(가) 선언되었지만 사용하지 않았습니다. 라는 오류가 뜨면서 실행이 안됩니다 ㅠㅠ 혼자 정말 많이 고민해봤는데 답을 못찾겠어요.. 어떻게 해야할까요?? 그 외에도 잘못된 문법이나 필요없는식이 있을까요?? 여쭤볼 수 있는분이 쌤 뿐입니다!! 부탁드릴게요! using System; namespace Fishisland { class Program { enum FishType { None = 0, Smallfish = 1, Octopus = 2, Crucian = 3, Mackerel = 4, Marlin = 5, Tuna = 6, Dolphin = 7, Shark = 8, Whale = 9, } struct Fish { public int None; public int Smallfish; public int Octopus; public int Crucian; public int Mackerel; public int Marlin; public int Tuna; public int Dolphin; public int Shark; public int Whale; public static implicit operator Fish(int v) { throw new NotImplementedException(); } } static void PutinAquarium(int a, out Fish fish) { fish.None = 0; fish.Smallfish = 0; fish.Octopus = 0; fish.Crucian = 0; fish.Mackerel = 0; fish.Marlin = 0; fish.Tuna = 0; fish.Dolphin = 0; fish.Shark = 0; fish.Whale = 0; while (true) { if (a <= 30) { fish.Smallfish++; break; } else if (a <= 50) { fish.Octopus++; break; } else if (a <= 70) { fish.Crucian++; break; } else if (a <= 82) { fish.Mackerel++; break; } else if (a <= 89) { fish.Marlin++; break; } else if (a <= 94) { fish.Tuna++; break; } else if (a <= 97) { fish.Dolphin++; break; } else if (a <= 99) { fish.Shark++; break; } else if (a == 100) { fish.Whale++; break; } } Console.WriteLine("물고기를 집어넣었습니다"); Console.WriteLine("[1] 낚시를 계속하기"); Console.WriteLine("[2] 로비로 돌아가기"); string input = Console.ReadLine(); if (input == "1") { GoFishing(); } else if (input == "2") { EnterLobby(); } static void EnterLobby() { Console.WriteLine("[Fish island]"); Console.WriteLine("시작하려면 아무키나 누르세요"); Console.WriteLine("Press any key to start"); Console.ReadLine(); } static void StartMenu() { Fish fish = 0; Console.WriteLine("[1] 낚시하기"); Console.WriteLine("[2] 수족관 보기"); string input = Console.ReadLine(); while (true) { if (input == "1") { GoFishing(); break; } else if (input == "2") { EnterAquarium(fish); break; } } } static void EnterAquarium(Fish fish) { while (true) { Console.WriteLine("[수족관]"); Console.WriteLine($"[잔챙이] {fish.Smallfish}마리]"); Console.WriteLine($"[문어] {fish.Octopus}마리]"); Console.WriteLine($"[붕어] {fish.Crucian}마리]"); Console.WriteLine($"[고등어] {fish.Mackerel}마리]"); Console.WriteLine($"[청새치] {fish.Marlin}마리]"); Console.WriteLine($"[참치] {fish.Tuna}마리]"); Console.WriteLine($"[돌고래] {fish.Dolphin}마리]"); Console.WriteLine($"[상어] {fish.Shark}마리]"); Console.WriteLine($"[고래] {fish.Whale}마리]"); Console.WriteLine("[1] 낚시를 계속하기"); Console.WriteLine("[2] 로비로 돌아가기"); Console.WriteLine("[3] 수족관 보기"); string input = Console.ReadLine(); if (input == "1") { GoFishing(); break; } else if (input == "2") { EnterLobby(); break; } else if (input == "3") { EnterAquarium(fish); break; } } } static void GoFishing() { Random rand = new Random(); int RandomFish = rand.Next(1, 101); while (true) { if (RandomFish <= 30) { Console.WriteLine("[ 잔챙이를 잡았습니다 ]"); break; } else if (RandomFish <= 50) { Console.WriteLine("[ 붕어를 잡았습니다 ]"); break; } else if (RandomFish <= 70) { Console.WriteLine("[ 문어를 잡았습니다 ]"); break; } else if (RandomFish <= 82) { Console.WriteLine("[ 고등어를 잡았습니다! ]"); break; } else if (RandomFish <= 89) { Console.WriteLine("[ 청새치를 잡았습니다! ]"); break; } else if (RandomFish <= 94) { Console.WriteLine("[ 참치를 잡았습니다! ]"); break; } else if (RandomFish <= 97) { Console.WriteLine("[ [돌고래]를 잡았습니다!! ]"); break; } else if (RandomFish <= 99) { Console.WriteLine("[ [상어]를 잡았습니다!! ]"); break; } else if (RandomFish == 100) { Console.WriteLine("[ 대박!! [고래] 를 잡았습니다!!! ]"); break; } } Console.WriteLine("[1] 놓아주고 낚시 계속하기"); Console.WriteLine("[2] 수족관에 집어넣기"); Console.WriteLine("[3] 수족관 보기"); string input = Console.ReadLine(); Fish fish; fish = 0; while (true) { if (input == "1") { GoFishing(); break; } else if (input == "2") { PutinAquarium(RandomFish, out fish); break; } else if (input == "3") { EnterAquarium(fish); break; } } } static void Main(string[] args) { while (true) { EnterLobby(); StartMenu(); } } } } }
-
미해결TDD 개발 방법론을 활용한 React Native 앱 개발
테스트 케이스의 작성 범위
안녕하세요 선배님 좀 어리석은 질문일수도 있습니다만, TDD 방법론으로 코드를 작성하는 경우 모든 코드에 대해 테스트 코드가 작성되는 것이 원칙인것 같습니다. 하지만 한국에서의 전통적인 SI 프로젝트는 기간과 범위가 매우 타이트하게 정해져 있기 때문에 TDD 방법론을 원칙에 따라 적용하기에는 한계가 있는 것도 사실입니다. 만일 모든 코드에 대한 테스트 작성이 어려운 상황이라면, 어떤 종류의 코드 또는 함수를 작성할 때는 테스트 코드를 작성하는게 좋다 라고 할만한 범위에 대한 가이드라인 같은게 있는지 궁금합니다.
-
미해결윤재성의 스프링 프레임워크 개발자를 위한 실습을 통한 입문 과정
slf4j 인스턴스화 실패 오류
Failed to instantiate SLF4J loggerFactory 라는 오류가 계속 뜨는데 어떻게 해결해야할까요..
-
해결됨자바스크립트 비기너: 튼튼한 기본 만들기
안녕하세요 선생님.
label을 사용하지 않는 이유에 대해 궁금합니다. 찾아보니 중첩된 반복문을 빠져나갈때 유용하게 쓸 것 같은데 검색해 보아도 사용하지 않거나 사용하지 말라는 이야기는 찾기 어렵습니다. 그래서 잘 생각해보아서 내린 결론은 label을 사용하면 1. 디버그에 문제가 있거나 2. 내부적으로 성능상 문제가 있는게 아닐까 싶은데 잘 모르겠습니다 ㅠㅠㅠㅠ 사용하지 않는 이유에 대해 살짝 힌트라도 알려주실 수 있나요??
-
업무 자동화를 위한 파이썬 pyautogui, beautifulsoup 크롤링 기초
실행어떻게 해요?
삭제된 글입니다
-
미해결Vue.js 끝장내기 - 실무에 필요한 모든 것
가드에 대해 질문있습니다
안녕하세요 강의 잘듣고있습니다. 제가 스프링개발을 하다가 vue js공부를 하게되었는데 자바의 기술? 하고 비교하면서 공부를 하고있습니다 그런의미에서 네비게이션 가드가 스프링의 인터셉터라고 볼수있는건가요?? 그리고 axios인터셉터의 경우 ajax의 setup과 비슷한 기능인지 조금 헷갈리는데 비슷한 기능이맞는건가요??
-
해결됨자바 머신러닝 weka(웨카) 중급
알고리즘 예측확률
안녕하세요 이번에 weka 중급 강좌를 수강하게된 수강생입니다. 현재 제가 몇가지 요인들을 가지고 ( 나이, 성별, 현재상태 등등) 21가지 정도의 요인을 가지고 질병인지 아닌지 예측을 하는걸 돌리고있는데 확률이 아무리 높아도 70~80%대 더라구요 ... 종류별로 거의 모든 알고리즘을 써봤는데 현재 153개의 데이터를 가지고 있어서 예측 확률을 90%이상을 나오게하려면 153개중에 90%를 트레이닝 시켜야 90%가 넘기던데 사실상 .. 153개중에 90% 트레이닝 시키고 10%를 테슽해봤자 15개밖에안하는거라 .. ㅠㅠ.. 다른방법으로 예측 확률을 높이는 방법이 있을까해서 질문을 남겨봅니다 .. 제가 어떤걸 해야 확률이 올라갈까요 ? 구글링을 통해서 예측하는데 관여율이 높았던 변수들 수치를 봐도 가장 높은게 0.15 정도고 나머지도 0.1 정도씩 요인들이 많아서그런지 고만고만하더라구요 .. 그래서 어떤 변수들을 빼야되는지도 잘 모르겠네요 ㅠㅠ.. 혹시 다른 방법이 있을까요 ?
-
미해결홍정모의 따라하며 배우는 C언어
MyCProgrammigStart가 안뜹니다ㅠㅠ
제목 그대로 저게 안뜨네요.. 몇번이나 똑같이 따라해 보았지만 안떠요.. 4:8 입니다.
-
미해결실전! 스프링 데이터 JPA
낙관적 락 사용방법에 대한 질문
안녕하세요. 실무에서 비관적 락을 사용하던 것을 낙관적 락으로 변경하고자 하는데 잘 안되는 부분이 있어서 한참을 헤매다가 질문을 올립니다. 1. 기존에 version 필드가 없던 테이블에서 새로 version 필드를 추가할 때 ddl 을 어떻게 구성해야 할까요? alter table TABLE add version int default 1 not null; 이런식으로 default 값 1 에 not null 조건을 주어서 기존 데이터들의 버전을 1로 임의로 고정해놨는데요. 만약 기존 데이터의 마그레이션이 필요 없이 테이블을 새로 생성하는 상황 이라고 한다면 not null 이나 default 조건을 안줘도 jpa가 알아서 처음부터 insert 할때 version 1부터 잘 들어가나요? 2. 엔티티에 @Version 을 추가해서 NONE 모드의 낙관적인 락은 잘 동작하는것을 확인했는데요. 그런데 추가적인 옵션을 주고 싶어서 책에 언급된 Optimistic 를 이런식으로 조회에 추가해서 사용해 보았는데요. @Lock(LockModeType.OPTIMISTIC)Optional<Table> findById(Long id); 조회까지는 잘 되는데 문제는 가져온 이 엔티티에 변경이 이뤄질 때 무조건 다음과 같은 알 수 없는 에러가 발생합니다. 당연히 version 컬럼은 테이블에 잘 추가되어 있습니다. 다음은 문제가 발생할떄의 로그입니다. OPTIMISTIC 모드 이렇게 사용하는게 아닌건지.. Hibernate: select `version` from `TABLE` where `id` =? 2020-06-03 13:20:06.595 WARN [,,,] 1888 --- [ Test worker] o.h.engine.jdbc.spi.SqlExceptionHelper : SQL Error: 0, SQLState: S0022 2020-06-03 13:20:06.596 ERROR [,,,] 1888 --- [ Test worker] o.h.engine.jdbc.spi.SqlExceptionHelper : Column '`version`' not found. 3. 엔티티에 @Version 을 붙이면 기본적으로 그 엔티티가 낙관적인 락에 의해 수정시에 version 정보를 비교하는 로직이 추가된다고 이해를 했습니다. 그런데 특정 쿼리에 @Lock(LockModeType.OPTIMISTIC) 을 붙여주는 것은 그 쿼리를 통해 가져온 엔티티에만 추가적인 락 로직이 들어가고 만약 @Lock 이 안붙은 또다른 쿼리가 있다고 가정하고 그 쿼리도 실제 결과는 같은 엔티티를 내려준다고 했을때 후자의 쿼리로 가져온 엔티티는 NONE 모드 락만 적용되는 것이 맞을까요?
-
미해결React로 NodeBird SNS 만들기
AWS 비용관련 질문드립니다.
현재까지 Firebase 무료버전만 써왔고, AWS를 이용하는건 처음입니다. 이제 8.9장~8.17장이 실제 AWS에 배포를 하는 강의인데, 시작하기전에 비용에 관해 궁금한점을 해결하고 시작하고 싶어서 질문드립니다. 8.17장 까지 마치고난후, 실제로 AWS에서 서버를 운영하게 된다면, 프론트+백서버의 한달 비용이 얼마정도 나갈까요? 그냥 포트폴리오 보여주기 형식으로만 놔둘거라서, 실제 이용은 안하고 보여주기식으로 서버만 켜놓으려 합니다. 중간에 추가하고 싶은 기능들도 추가 해가면서요.. 정확히는 아니더라도, 서버만 돌아가게 만들어놨을경우, 한달에 청구되는 금액이 어느정도 일까요? (한번도 안해봐서 감이 안옵니다.) 가난한 취준생이라 가격부분에 대해 걱정이많습니다 ㅠ
-
미해결단 2주간 키운 블로그로 월 80만원 용돈 벌기
쉽게 알려주셔서 좋아요 :)
딱 포인트만 쉽게 정리하여 알려주셔서 도움이 많이 되었어요, 알려주신대로 꾸준히 플랜짜서 시작해보면 될것 같아요 :) bmswow@naver.com
-
미해결남박사의 파이썬으로 실전 웹사이트 만들기
GCP에서 Docker 작업 질문입니다!
박사님~~ 연속으로 질문을 올리네요 ^^;; 구글 클라우드에 Docker 형태로 올리는 것을 테스트 해보고 있는데, 아래와 같이 test.py와 dockerfile 을 만들어서 GCP에 이미지 생성 후 컨테이너 생성을 했는데 실서버로 들어가도 test.py에 적어둔 문구가 안뜨고 아래와 같은 문구가 뜹니다 ㅠ 뭐가 잘못되었을까요?? 1. test.py from flask import Flask app = Flask(__name__) @app.route("/") def index(): return "welcome" if __name__=="__main__": app.run(host="34.64.117.66") -> 여기에 기존 0.0.0.0이 아닌 GCP의 외부 IP를 넣는게 맞을까요? 2. Dockerfile FROM tiangolo/uwsgi-nginx-flask:python3.7 RUN pip install --upgrade pip RUN pip install flask COPY . /app WORKDIR /app 3. 두개의 파일을 올린 후 4. 이미지 생성 docker build -t test . 5. 컨테이너 생성 docker run -d --name myweb --net myweb-network -p 80:80 myweb -> 여기까지에서 Portainer에서 이미지 생성 및 컨테이너 생성이 잘 된 것을 확인하였습니다. 그리고 나서 브라우져에 외부 IP 주소를 넣고 접속하니 welcome이 드지 않고 아래와 같은 문구가 뜹니다. Hello World from Flask in a uWSGI Nginx Docker container with Python 3.7 (default) 어떤 부분이 문제일까요?? 인터넷으로 아무리 찾아보고 이것저것 시도를 해봐도 제 레벨에는 한계가 있는 것 같아 질문으로 남깁니다. 항상 감사합니다!
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
유니티에서 사용자 입력까지 대기할 수 있나요?
이전에 유니티를 대강 배운 적이 있어서 유니티로 실습하고 있습니다. TextRPG 1에서는 함수 내에서 while문을 돌리며 사용자 입력을 ReadLine으로 대기하는 방식을 사용하던데요, 유니티에서 그런 기능이 무엇인지 몰라서 Update 함수에서 키 입력을 받아, 게임 상태(enum으로 캐릭터 생성, 로비, 마을, 필드, 전투 등으로 선언했습니다)에 따라 수행할 동작을 전달해주는 식으로 구현했습니다. 그런데 입력할 키가 많아지거나 상태에 따라 누르는 키가 달라지면(전투중에는 A,S,D를, 필드에선 방향키를 누르는 등) 복잡해질 것 같더라고요. 유니티에는 유효한 사용자 입력을 받을때까지 해당 명령문에서 대기하는 방법이 없나요?
-
미해결[개정판 2023-11-27] Spring Boot 3.x 를 이용한 RESTful Web Services 개발
SecurityConfig 클래스 생성 후 질문입니다.
SecurityConfig 빈 생성 후 auth 관련 처리를 해 준 다음에요. application.yml 파일에서는 security의 설정값을 username, password를 준 것이 있고 이것을 지우지 않은 상태에서 SecurityConfig에서 처리한 user/password 2가지 설정이 존재하는 상태인데요. 영상 06:04에서 보시는 바와 같이 application.yml에서 설정한 username, password은 인증 처리가 되지 않고 SecurityConfig 빈에서 생성한 인증 정보를 입력해야 인증처리가 됩니다. 1. WebSecurityConfigurerAdapter를 상속받아 생성한 Configuration 빈에서 처리한 인증 정보가 application.yml에서 설정한 것보다 우선순위가 높게 스프링이 처리하는 것인가요? 2. WebSecurityConfigurerAdapter 상속받은 Config 빈은 반드시 1개로 고유해야 하나요? 궁금해서 또 하나 만들어서 같은 인증 처리 해주니 "WebSecurityConfigurers must be unique" 로그가 찍히면서 에러 나더라구요.