묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결배달앱 클론코딩 [with React Native]
앱 성능 측정은 어떻게 해야하나요?
React-Native로 개발한 앱을 리팩토링하려합니다.성능 비교를 위해서 리팩토링 이전에 측정해놓고 싶습니다.웹의 경우 라이트하우스로 성능을 측정했다면 모바일앱은 어떤걸로 측정 해야하나요?찾아보니까 Firebase Performance가 앱 성능 측정을 해주던데 표준이 되는 다른 측정 도구가 있나요? 아님 firebase를 활용해서 측정하면 될까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
SpringJpa 가 Bean 등록이 안되는 것 같습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]SpringDataJpaMemberRepository에 JpaRepository를 extends 하였음에도 Bean 등록이 되지 않아 Test시 어떠한 코드도 실행이 안되는 것 같습니다. 강의를 돌려보아도 문제점을 찾지 못하여 질문 남깁니다.
-
해결됨그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
자바 LinkedList 질문
안녕하세요. 현재 자바를 공부 중인데 자바 표준라이브러리에 있는 LinkedList는 insertAt() 대신 add()가 있는데 insertAt()과 동일하게 봐도 될까요? 그리고 전체 구조도 동일하게 봐도 되는지 질문 드립니다. 감사합니다.
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
ElasticBeanstalk생성시 질문입니다.
플랫폼에 docker를 누르는 부분이 나와있지않습니다. 바로 생성이 나오는데 그냥 생성버튼을 눌러야할까요?
-
미해결[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
selenium 에 대한 강의는 따로 없나요?
selenium 에 대한 강의는 따로 없나요?
-
해결됨스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
html 코드도 따라쳐야 하는 건가요?
강의 듣다가 궁금증이 생겼는데thymleaf가 담긴 html코드도 손으로 따라쳐야하나요?
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
리액트기초 yarn 설치 질문
*우분투안쓰고 윈도우로 이용중입니다. 질문1.강의자료 보면서 따라하는 중인데요.강의자료에 나온 화면과 다르게 저는 style.thirteen도 없고 삭제부분을 삭제하면오류가 많습니다. 마찬가지로 첫번째 div인 container가 저는 애초에 존재하지않고 <>형식으로 되어있는데따로 타이핑해서 만들어줘야하나요? 질문2:버전: 강의자료에 나온것 외에도 전부 no하는게 맞나요?잘따라가고 있는지 모르겠습니다 ㅠ 질문3:저는 yarn dev를 해서 페이지에 접속하니 컴파일 실패가 뜨네요.. 질문4:혹시나 powershell로 설치한게 문제인건가 싶어서 폴더를 다 삭제하고 재생성후gitBash를 사용해봤는데 yarn설치 명령어가 안먹히네요그리고 powershell에선 먹히던 기본 명령어들이 Gitbash에선 안먹힙니다어디서 부터 잘못된건지 막혀서 진도를 못나가고 있습니다. 도와주십쇼..+ 실무에서 설치할때는 이런일이 발생하지 않으려면 신경써야 하는 것들이어떤게 있을까요?
-
미해결실리콘밸리 엔지니어가 가르치는 파이썬 기초부터 고급까지
higher order function 에서
128줄에 return inside에서 inside()를 안하는 이유가 궁금합니다@higher_order_example 자체가 inside 리턴받은 함수를 자동으로 ()붙여서 실행해주는 것인가요?136줄에 sample_example()을 안쓰면 121줄에 있는 func 매개변수로 못넣는것인가요???
-
해결됨[라이브 멘토링] 유니티 뱀파이어 서바이벌 장르 모작
장비의 옵션을 불러오는 부분에서 질문이 있습니다.
JSON 에서 데이터를 불러오고 장비 아이콘을 클릭 하였을때 장비의 아이콘과 옵션의 수치가 표시되는 부분이 궁금하여 뜯어보다가 질문이 생겼습니다.무기의 경우에는 HP보너스 스탯이 존재하지 않아도 JSON에서 0을 부여하고 추후에 UI_EquipmentinfoPopup에서 HP 스탯이 0인지 아닌지를 판별하여 장비의 아이콘과 옵션 수치를 표시하고 있는것을 확인 했어요.그런데 장비의 옵션 수치가 2개를 넘어서 더 여러가지가 되었을 경우에도 이런 방식으로 처리하는것이 효율적일까요? 아래 코드를 스위치문으로 변경하여 스탯에 맞는 아이콘과 옵션을 찾던가 JSON 구조 자체를 변경해야될것 같은데 어떤 방향으로 해야할지 잘 모르겠어서 선생님의 조언을 구합니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
강의내용 그대로 따라했는데 bootStrap 적용이 안되어서 질문드립니다.
현재 여기까지는 잘 적용이 되었는데 그 이 후에...resources - static 안에 bootstrap v4.6 설치하여서 css랑 js를 그대로 복사해서 넣었는데.. 안됩니다 ㅠㅠrefresh나 build project 등등 해보았는데 안되어서 질문드립니다.. <!DOCTYPE HTML><html xmlns:th="http://www.thymeleaf.org"><head th:replace="fragments/header :: header"><title>Hello</title><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /></head><body><div class="container"><div th:replace="fragments/bodyHeader :: bodyHeader" /><div class="jumbotron"><h1>HELLO SHOP</h1><p class="lead">회원 기능</p><p><a class="btn btn-lg btn-secondary" href="/members/new">회원 가입</a><a class="btn btn-lg btn-secondary" href="/members">회원 목록</a></p><p class="lead">상품 기능</p><p><a class="btn btn-lg btn-dark" href="/items/new">상품 등록</a><a class="btn btn-lg btn-dark" href="/items">상품 목록</a></p><p class="lead">주문 기능</p><p><a class="btn btn-lg btn-info" href="/order">상품 주문</a><a class="btn btn-lg btn-info" href="/orders">주문 내역</a></p></div><div th:replace="fragments/footer :: footer" /></div> <!-- /container --></body></html>home.html 소스인데 강의에서 배운 소스 그대로입니다... ㅠㅠ
-
해결됨자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
코드 리뷰 부탁드립니다!!
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. function solution(timeArr) { let answer; timeArr.sort((a, b) => { if(a[0] == b[0]) return a[1] - b[1]; else return a[0] - b[0]; }) let endT = Number.MAX_SAFE_INTEGER; let count = 0; for(let i of timeArr) { if(i[0] < endT) { count++; endT = Math.min(i[1], endT); } } answer = count; return answer; } const timeArr = [[14, 18], [12, 15], [15, 20], [20, 30], [5, 14]]; console.log(solution(timeArr));
-
해결됨Next.js 시작하기(feat. 지도 서비스 개발)
처음부터 막히는데 어떻게 해야하는 건지 자세한 답변 바랍니다.
https://nextjs.org/docs/getting-started/installation 공식문서, 아래 명령어 실행.npx create-next-app@latest폴더명 적고 아래와 같이 선택하여 설치. ✔ Would you like to use TypeScript? … Yes ✔ Would you like to use ESLint? … Yes ✔ Would you like to use Tailwind CSS? … Yes ✔ Would you like to use `src/` directory? … No ✔ Would you like to use App Router? (recommended) … Yes ✔ Would you like to customize the default import alias? … No강좌 그대로 따라하려고 했는데 아래 캡쳐화면이 현재 제가 설치한 화면 입니다.강의 화면 처럼 pages 이런 폴더들이 없는데, 대체 어떻게 하라는 건가요??사용하지 않는 코드를 모두 정리하라고 했는데, 정리해야하는 코드들이 없을 경우 어떻게 처리를 해야 하는 지 상세한! 자세한! 답변 바랍니다.
-
해결됨자바 ORM 표준 JPA 프로그래밍 - 기본편
일대다 연관관계에 관해서
@JoinColumn의 경우 주인이 되는 테이블의 컬럼을 넣는 것으로 알고 있습니다.@OneToMany(cascade = CascadeType.ALL, orphanRemoval = true)@JoinColumn(name = "MEMBER_ID")private List<AddressEntity> addressHistory = new ArrayList<>();의 코드에서 혹시 반대로 AddressEntity에서 다대일 관계를 만들어 주고 싶은 상황이라면 (현재 강사님 코드에는 AddressEntity클래스에 Member엔티티에 대한 객체가 없는 상황) AddressEntity 클래스에 @ManyToOne@JoinColumn(name = "MEMBER_ID"private Member member를 생성해주는게 맞는 궁금하여 문의 남깁니다.
-
미해결이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해
Extensions 설치 후
안녕하세요 선생님. 선생님처럼 매크로에 보라색이 빠져있거나 Alt+Enter 로 정의가 불가능한 경우는 어떻게 해야할까요?? ㅠ
-
미해결남박사의 파이썬으로 실전 웹사이트 만들기
버전 문제도 수정했는데 결과가 안나옵니다.
{% with messages = get_flashed_messages() %} {% if messages %} <script> alert(" {{messages[-1]}}"); </script> {% endif %} {% endwith %} <table> <form name="form" action="/join" method="POST"> <thead> <caption>회원가입</caption> </thead> <tbody> <tr> <td>이름</td> <td><input type="text" name="name"></td> </tr> <tr> <td>이메일</td> <td><input type="text" name="email"></td> </tr> <tr> <td>비번</td> <td><input type="password" name="pass"></td> </tr> <tr> <td>비번확인</td> <td><input type="password" name="pass2"></td> </tr> <tr> <td colspan="2"><input type="submit" value="가입하기"></td> </tr> </tbody> </form> </table>from flask import Flask from flask import request,redirect,url_for from flask import render_template, abort from flask_pymongo import PyMongo from datetime import datetime from flask import flash from bson.objectid import ObjectId import time import math app = Flask(__name__) app.config["MONGO_URI"]="mongodb://localhost:27017/myweb" mongo = PyMongo(app) @app.template_filter("formatdatetime") def format_datetime(value): if value is None: return "" now_timestemp = time.time() offset = datetime.fromtimestamp(now_timestemp)-datetime.utcfromtimestamp(now_timestemp) value = datetime.fromtimestamp((int(value)/1000))+offset return value.strftime('%Y-%m-%d %H:%M:%S') @app.route("/list") def lists(): # 페이지 값(값이 없는 경우 기본값은 1) page = request.args.get("page",1,type=int) #한페이지당 몇개의 개시물을 출력할지 limit = request.args.get("limit",5,type=int) search = request.args.get("search",-1,type=int) keyword = request.args.get("keyword",type=str) #최종적으로 완성된 쿼리를 만들 변수 query = {} # 검색아 상태를 추가할 리스트 변수 search_list=[] if search ==0: search_list.append({"title":{"$regex":keyword}}) elif search == 1: search_list.append({"contents":{"regex":keyword}}) elif search == 2: search_list.append({"title":{"$regex":keyword}}) search_list.append({"contents":{"$regex":keyword}}) elif search ==3: search_list.append({"name":{"$regex":keyword}}) # 검색 대상이 한개라고 존재할 겨우 query 변수에 $or 리스트를 쿼리 합니다. if len(search_list)>0: query={"$or":search_list} print(query) board = mongo.db.board datas = board.find(query).skip((page - 1)*limit).limit(limit) # 개시물에 총 갯수(수정됨) tot_count = board.count_documents(query) # 마지작 페이지의 수를 구합니다. last_page_num = math.ceil(tot_count / limit) # 페이지 블럭을 5개씩 표기 block_size = 5 # 현재블럭의 위치 block_num = int((page - 1)/block_size) # 블럭의 시작 위치 block_start = int((block_size * block_num) +1) # 블럭의 끝 위치 block_last = math.ceil(block_start + (block_size - 1)) return render_template( "list.html", datas=list(datas), limit=limit, page=page, block_start=block_start, block_last=block_last, last_page_num=last_page_num, search=search, keyword=keyword) @app.route("/view/<idx>") def board_view(idx): # idx = request.args.get("idx") 펜시유알엘 if idx is not None: page = request.args.get("page") search = request.args.get("search") keyword = request.args.get("keyword") board = mongo.db.board data = board.find_one({"_id":ObjectId(idx)}) if data is not None: result={ "id":data.get("_id"), "name":data.get("name"), "title":data.get("title"), "contents":data.get("contents"), "pubdate":data.get("pubdate"), "view":data.get("view") } print(id) return render_template("view.html",result=result, page=page, search=search, keyword=keyword) return abort(404) @app.route("/write",methods=['GET','POST']) def board_write(): if request.method=="POST": name = request.form.get("name") title = request.form.get("title") contents = request.form.get("contents") print(name,title,contents) current_utc_time = round(datetime.utcnow().timestamp() *1000) board = mongo.db.board post={ "name":name, "title": title, "contents":contents, "pubdate":current_utc_time, "view":0, } x = board.insert_one(post) print(x.inserted_id) return redirect(url_for("board_view",idx=x.inserted_id)) else: return render_template("write.html") @app.route("/join",methods=["POST","GET"]) def menber_join(): if request.method =="POST": name = request.form.get("name",type=str) email = request.form.get("email",type=str) pass1 = request.form.get("pass",type=str) pass2 = request.form.get("pass2",type=str) if name is None or email is None or pass1 is None or pass2 is None: flash ("입력되지 않은 값이 있습니다.") return render_template("join.html") if pass1 != pass2: flash("비밀번호가 일치 하지않습니다.") return render_template("join.html") members = mongo.db.menbers # 이부분 버전 수정됨 cnt = members.count_documents({"email":email}) if cnt > 0: flash("중복된 이메일 주소입니다.") return render_template("join.html") current_utc_time = round(datetime.utcnow().timestamp()*1000) post ={ 'name':name, 'email':email, 'pass':pass1, "joindate":current_utc_time, "logtime":"", "logincount":0, } members.insert_one(post) return "" else: return render_template("join.html") if __name__ == "__main__": app.run(host="0.0.0.0",debug=True,port=5000)
-
미해결스프링과 JPA 기반 웹 애플리케이션 개발
프로젝트 compile시 npm install시 No repository field
npm install시 위와같은 오류와 함께 컴파일이 종료됩니다. 혹시 해결 방법이 있나요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-G 테스트케이스 통과, ab*ab / ab 도 통과했는데 틀립니다
http://boj.kr/30c2e28d9865496a961a8b76b7e7fca9안녕하세요 선생님다름이 아니라 테스트케이스를 통과하고코드를 더 수정해서 ab*ab / ab인 경우도 통과했는데틀렸다고 합니다.어떤 점이 문제인지 알고 싶습니다.감사합니다.
-
미해결핸즈온 리액트 네이티브
안녕하세요 에뮬레이터
가상머신 에뮬레이터로 수업을 따라가고 있는데 , 에뮬레이터가 코드변경이 바로적용될때가 있고 또 코드변경했을때 적용이 안될때도 있는데 어떤게 문제일까요??
-
해결됨Windows 소켓 프로그래밍 입문에서 고성능 서버까지!
IOCP에서 WSASend 사용 관련 및 시간 소요 요청 처리
먼저 좋은 강의 감사드립니다.IOCP를 사용 시 채팅서버에서 수신의 경우는 WSARecv를 사용하였으나, 송신은 일반 send 함수를 사용하고 있습니다.송신의 경우 WSASend를 사용하는 것이 send를 사용하는것 대비 장점이 없는 것인지요?WSASend 사용 관련하여 해당 함수를 사용해야 하는 상황에 대해 설명 부탁드립니다.추가로 IOCP의 thread (GQCS)에서 처리하는 일이 시간이 소요되는 처리를 해야 하는 시나리오 (파일 송신 등)에서, 사용자 수가 증가하는 경우 할당할 수 있는 thread가 없어, 동시 접속이 늘어나는 경우 문제가 발생할 수 있을 것으로 판단됩니다. 이런 경우 어떻게 설계를 하는 것이 타당한지 의견을 구하고자 합니다.감사합니다.
-
해결됨선형대수학개론
[One-to-one] 정의 관련 질문
안녕하세요, 강의를 듣고 있는 학생입니다. 슬라이드 9쪽에서 One-to-one의 정의로"at most one" 즉, T(x)=b의 식의 해가 unique하든지, 없든지라고 되어있는데, 없는 경우가 이해가 잘 되지 않습니다. T가 transformation function이기에, 함수이니 결국 정의역 하나는 무조건 매칭이 되어야한다고 생각을 했는데 없는 경우가 어떤 경우인지 궁금합니다. 질문 읽어주셔서 감사드리고 좋은 강의 감사합니다.