묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결
맛비님 강의가 제 프로젝트의 방향성과 유사한지 판단 부탁드립니다!
안녕하세요.현재 한국과학기술연구원에서 갑작스레 FPGA를 이용한 회로설계를 구현하게 된 학생입니다..ㅠㅠ설계해야 할 회로는, FPGA를 이용하여 28 channel 의 voltage pulse 를 만들어서 특정 구조의 반도체 device에 인가해주고, 그 소자로부터 10개 이상의 output 을 다시 multichannel로 반환받는 회로입니다.device는 28x28 의 crossbar array 에 총 784개의 반도체 소자 중에서 28개의 소자가 FPGA로부터 voltage pulse 를 입력받고, 다시 784개의 반도체 소자 중에서 10개 이상의 소자(미정)가 값을 출력하여 FPGA로 반환하는 기능을 합니다.이때, device로의 입력 전압은 square 모양의 0.5~3V 범위의 analog pulse로 구현해야 하므로 DAC를 거쳐 출력해야하며, device의 출력 전압은 analog 값이므로 다시 ADC를 거쳐 FPGA로 반환되어야 합니다.**핵심**따라서 FPGA-DAC-device-ADC-FPGA 순서로 data가 흘러가며, FPGA는 1us 주기로 device로 input pulse를 인가하고, 그에 따른 출력을 반환받아야 합니다.맛비님의 강의가 제가 하려는 프로젝트의 방향성과 유사한지, 유사하다면 어떤 순서로 강의를 수강해나가야 할지 알려주신다면 정말 감사하겠습니다....!!!!!!부디 제가 맡은 바 수행할 수 있도록 커리큘럼을 짜주신다면,, 정말 열심히 공부하도록 하겠습니다.. 학회에 발표하게 된다면 맛비님께 감사한다며 홍보도 열심히 하겠습니다..
-
해결됨[입문자를 위한 UE5] Part3. 언리얼 엔진 3D 게임 개발 입문
5.1도 다루실 계획이 있으신가요?
혹시 5.1에 추가된 enhanced input 관련 내용도 다루실 예정이 있으신가요?5.1로 5.0을 따라가려니 너무 어렵네요ㅠㅠ
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
form태그의 action과 button의 onclick의 사용시기?
<div class="col"> <button class="w-100 btn btn-secondary btn-lg" type="button" th:onclick="|location.href='@{/items}'|"> 상품 관리 </button> </div> <div class="col"> <form th:action="@{/logout}" method="post"> <button class="w-100 btn btn-dark btn-lg" type="submit"> 로그아웃 </button> </form> </div> 상품관리 버튼에서는 button의 onclick을 이용해서 링크를 보내주고 로그아웃 버튼에서는 form태그의 action을 사용해서 링크로 보내주었는데 post의 형식으로 데이터를 보내줘야할때는 form의 action을 통해서 보내주고 get방식으로 보내줘야할때는 onclick을 이용해서 보내는 건가요??
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
/home 화면이 나오지 않습니다..
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용] 화면이 출력되지 않습니다.... 질문 게시판에 다른 상황들을 보고 오타나 패키지를 잘못 설정했나 다시 보아도 찾지 못하였씁니다.... /home화면이 나오지 않습니다
-
해결됨실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
안녕하세요 질문 있습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. @GetMapping("/api/v1/orders") public List<Order> orverV1() { List<Order> all = orderRepository.findAllByString(new OrderSearch()); for (Order order : all) { // LAZY 강제 초기화 역할 order.getMember().getName(); order.getDelivery().getAddress(); List<OrderItem> orderItems = order.getOrderItems(); orderItems.stream().forEach(o -> o.getItem().getName()); } return all; }orderItem의 item부분 LAZY 초기화 해주는 부분에서 orderItems.stream().forEach에서 stream()빼줘도 결과가 똑같이 나오던데 stream을 넣어주는 이유가 있나요??
-
미해결풀스택을 위한 도커와 최신 서버 기술(리눅스, nginx, AWS, HTTPS, 배포까지) [풀스택 Part3]
mysql 포트 질문입니다.
안녕하세요, 좋은 강의 감사합니다.docker-compose에서 mysql설정할 때, ports를 사용해서 연결했습니다. (ubuntu 20.04)port는 호스트 내부의 컨테이너끼리는 컨테이너 포트로 특정 컨테이너에 접근할 수 있고,호스트 외부에서는 컨테이너 포트와 바인딩된(연결된) 호스트 포트를 통해 특정 컨테이너에 접근할 수 있다고 이해하고 있는데 보안을 위해서 port보단 expose를 사용해서 mysql에 내부 컨테이너들끼리 통신하도록 하는 것이 나을 지 궁금하여 질문을 남기게 되었습니다. 호스트: ubuntu 20.04, 내부 컨테이너: docker-compose에서 service 컨테이너들
-
미해결
파이썬으로 엑셀 파일에 있는 이미지를 개별 이미지 파일로 저장할수있나요?
안녕하세요 파이썬을 공부하고 있는 사람입니다.현재 파이썬으로 엑셀 파일에 이미지를 삽입하고 있는데이와 반대로 a열에는 파일명, b열에는 이미지가 있다고 할때b열에 있는 이미지 파일을 각각 a열의 파일명으로 저장할수있나요?구글에 아무리 검색해도 안나오네요…
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
강의 문의드립니다.
안녕하세요! 선생님 개설 강의중에 스파크로 배우는 머신러닝 문의드립니다.사내에서 데이터분석을 위해 파이썬과 파이스파크를 이용중인데,파이스파크 사용법에 익숙치 않습니다.. 선생님의 위 강의가, 파이스파크 강의인지 궁금합니다.감사합니다
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
이미지 업로드 시 data가 보내지지 않습니다..ㅠㅠ
안녕하세요. 강사님! 강의를 들으며 똑같이 작성했고 혹시 모를 오타가 있는지도 확인하면서 강사님 깃허브도 참조해보았는데 원인을 찾지 못하겠어서 문의드립니다. ㅠ ㅠ이미지 업로드를 하면 아래와 같이 오류가 뜨고 redux dev tools 로 확인해 보았을 때UPLOAD_IMAGES_REQUEST 만 처리되고 SUCCESS 로 넘어가지가 않아요.리퀘스트 되어 있는 데이터를 보면 빈 값인 것을 보니 데이터가 넘어가지 않는 것 같은데 도무지 원인을 모르겠습니다. 업로드를 하면 에러가 나면서 서버연결도 끊깁니다. ㅜㅜ제 코드에 뭐가 문제가 있는 건가요..?ㅠㅠ 확인 후 문제를 알려주시면 너무 감사할 것 같습니다..ㅠㅠㅠ[redux] import produce from "immer"; export const initialState = { mainPosts: [], // 이미지 업로드할 때 이미지의 경로들이 저장됨 imagePaths: [], uploadImagesLoading: false, uploadImagesDone: false, uploadImagesError: null, } export const UPLOAD_IMAGES_REQUEST = "UPLOAD_IMAGES_REQUEST"; export const UPLOAD_IMAGES_SUCCESS = "UPLOAD_IMAGES_SUCCESS"; export const UPLOAD_IMAGES_FAILURE = "UPLOAD_IMAGES_FAILURE"; const reducer = (state = initialState, action) => { return produce(state, (draft) => { switch (action.type) { case UPLOAD_IMAGES_REQUEST: draft.uploadImagesLoading = true; draft.uploadImagesDone = false; draft.uploadImagesError = null; break; case UPLOAD_IMAGES_SUCCESS: draft.imagePaths = action.data; draft.uploadImagesLoading = false; draft.uploadImagesDone = true; break; case UPLOAD_IMAGES_FAILURE: draft.uploadImagesLoading = false; draft.uploadImagesError = action.error; break; default: break; } }); }; export default reducer; [saga]import axios from "axios"; import { all, fork, put, takeLatest, throttle, call, } from "redux-saga/effects"; import { UPLOAD_IMAGES_FAILURE, UPLOAD_IMAGES_REQUEST, UPLOAD_IMAGES_SUCCESS, } from "../reducers/post"; function uploadImagesAPI(data) { return axios.post("/post/images", data); } function* uploadImages(action) { try { const result = yield call(uploadImagesAPI, action.data); yield put({ type: UPLOAD_IMAGES_SUCCESS, data: result.data, }); } catch (err) { console.error(err); yield put({ type: UPLOAD_IMAGES_FAILURE, error: err.response.data, }); } } function* watchUploadImages() { yield takeLatest(UPLOAD_IMAGES_REQUEST, uploadImages); } export default function* postSaga() { yield all([ fork(watchUploadImages), ]); }[components] import React, { useCallback, useEffect, useRef } from "react"; import { useSelector, useDispatch } from "react-redux"; import { Form, Input, Button } from "antd"; import { UPLOAD_IMAGES_REQUEST, REMOVE_IMAGE, ADD_POST_REQUEST, } from "../reducers/post"; import useInput from "../hooks/useInput"; const PostForm = () => { const dispatch = useDispatch(); const { imagePaths, addPostDone } = useSelector((state) => state.post); const [text, onChangeText, setText] = useInput(""); const imageInput = useRef(); useEffect(() => { if (addPostDone) { setText(""); } }, [addPostDone]); const onSubmit = useCallback(() => { if (!text || !text.trim()) { return alert("게시글을 작성하세요."); } const formData = new FormData(); imagePaths.forEach((p) => { formData.append("image", p); }); formData.append("content", text); return dispatch({ type: ADD_POST_REQUEST, data: formData, }); }, [text, imagePaths]); const onClickImageUpload = useCallback(() => { imageInput.current.click(); }, [imageInput.current]); const onChangeImages = useCallback((e) => { console.log("images", e.target.files); const imageFormData = new FormData(); [].forEach.call(e.target.files, (f) => { imageFormData.append("image", f); }); dispatch({ type: UPLOAD_IMAGES_REQUEST, data: imageFormData, }); }, []); const onRemoveImage = useCallback( (index) => () => { dispatch({ type: REMOVE_IMAGE, data: index, }); }, [] ); return ( <Form style={{ margin: "10px 0 20px" }} encType="multipart/form-data" onFinish={onSubmit} > <Input.TextArea value={text} onChange={onChangeText} maxLength={140} placeholder="어떤 신기한 일이 있었나요?" /> <div> <input type="file" name="image" multiple hidden ref={imageInput} onChange={onChangeImages} /> <Button onClick={onClickImageUpload}>이미지 업로드</Button> <Button type="primary" style={{ float: "right" }} htmlType="submit"> 짹짹 </Button> </div> <div> {imagePaths?.map((v, i) => ( <div key={v} style={{ display: "inline-block" }}> <img src={`http://localhost:3065/${v}`} alt={v} style={{ width: "200px" }} /> <div> <Button onClick={onRemoveImage(i)}>제거</Button> </div> </div> ))} </div> </Form> ); }; export default PostForm; [back - routes/post.js]const express = require("express"); const multer = require("multer"); const path = require("path"); const fs = require("fs"); const { Post, Image, Comment, User } = require("../models"); const { isLoggedIn } = require("./middlewares"); const router = express.Router(); try { fs.accessSync("uploads"); } catch (error) { console.log("uploads 폴더가 없으므로 생성합니다."); fs.mkdirSync("uploads"); } const upload = multer({ storage: multer.diskStorage({ destination(req, file, done) { done(null, "uploads"); }, filename(req, file, done) { // amanda.png const ext = path.extname(file.originalname); // 확장자 추출(.png) const basename = path.basename(file.originalname, ext); // amanda done(null, basename + "_" + new Data().getTiem() + ext); // amanda15653484.png }, }), limits: { fileSize: 20 * 1024 * 1024 }, // 20MB }); router.post( "/images", isLoggedIn, upload.array("image"), // single , array , none async (req, res, next) => { // POST /post/images console.log(req.files); res.json(req.files.map((v) => v.filename)); } ); router.post("/", isLoggedIn, upload.none(), async (req, res) => { // POST /post try { const post = await Post.create({ content: req.body.content, UserId: req.user.id, }); if (req.body.image) { if (Array.isArray(req.body.image)) { // 이미지를 여러 개 올리면 image: [제로초.png, 부기초.png] const images = await Promise.all( req.body.image.map((image) => Image.create({ src: image })) ); await post.addImages(images); } else { // 이미지를 하나만 올리면 image: 제로초.png const image = await Image.create({ src: req.body.image }); await post.addImages(image); } } const fullPost = await Post.findOne({ where: { id: post.id }, include: [ { model: Image, }, { model: Comment, include: [ { model: User, // 댓글 작성자 attributes: ["id", "nickname"], }, ], }, { model: User, // 게시글 작성자 attributes: ["id", "nickname"], }, { model: User, // 좋아요 누른 사람 as: "Likers", attributes: ["id"], }, ], }); res.status(201).json(fullPost); } catch (error) { console.error(error); next(error); } }); module.exports = router;
-
미해결마케터를 위한 구글 애널리틱스 실무
구글 애널리틱스 PDF 자료 및 슬랙 추가 요청 건
안녕하세요? 지금 막 완강을 하고 글을 올립니다. 강의해 주신 내용을 실무에 십분 활용할 수 있도록 저도 PDF자료와 슬랙 추가 부탁드립니다.daniel@cyberlogitec.com 좋은 강의 감사드립니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
entitymanagerFactory 오류
Consider defining a bean of type 'jakarta.persistence.EntityManagerFactory' in your configuration.이런식으로 오류가 뜨면서 실행이안됩니다
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
스프링 부트 시작 오류
강의와 동일하지만 스프링 부트 스타터 홈페이지에서 h2데이터 베이스 대신 mysql을 추가한 것 밖에 없는데 해당 오류가 출력됩니다. 구체적인 오류도 나오지 않아 해결하기가 힘드네요.. 어떤 문제가 있을까요? 압축파일을 풀고 따로 코드를 건드리지 않고 바로 실행을 했을 때 입니다. 추가적으로 자바는 17, 스프링부트는 3.0.5 입니다
-
해결됨GetX 기반 Flutter 앱 만들기
라우트 명은 어떻게 지정하나요?
/viewB 는 어디서 지정한건가요?
-
해결됨Flutter 앱 개발 기초
fit: BoxFit.cover
2회차 강의 도중에 질문드립니다fit: BoxFit.cover를 이용해서 이미지 비율을 유지하면서 잘라주는데, 원하는 부분만 잘라서 보여줄 수 없는건가요?처음부터 가운데 고정이 되어있는 상태로 이미지가 잘리는 것 같아서(왼쪽 정렬, 오른쪽 정렬로 이미지 자르는 방법도 알고 싶습니다)
-
해결됨직장인에게 꼭 필요한 파이썬-아래아한글 자동화 레시피
문서 A의 내용을 문서B에 옮기는 방법
문서A의 내용을 문서B에다 전체 복사넣기 하다보니 문서A에서 적용된 폰트들이 다 깨져서 파이썬으로 활용하고자 합니다.제목 그대로 문서A의 내용(텍스트, 그림, 표 등)을 문서B에다 옮기는 기본 방법은 무엇인지요?
-
해결됨직장인에게 꼭 필요한 파이썬-아래아한글 자동화 레시피
한글 물음창 제어
본 강의 덕분에 업무의 자동화가 목전에 왔습니다. 좋은 강의 열어주심에 감사드립니다.또 여쭤봅니다.파이썬에서 돌리는 와중에 표의 셀을 삭제할 때 한글에서 확인하는 창이 뜹니다."선택된 셀들을 지웁니다. 내용만 지우고 셀 모양은 남겨둘까요? 남김(Y)/지우기(N)/취소(C)"이 경우 자동화는 어떻게 하는지요?현재는 한글내 마크로를 정의해서 활용하고 있습니다만..다른 방법이 있는지요?
-
해결됨홍정모의 따라하며 배우는 C++
비동기 프로그래밍 관련 질문입니다.
int main() { // future and promsise { std::promise<int> prom; auto future = prom.get_future(); auto t = std::thread([](std::promise<int>&& prom) { prom.set_value(1 + 2); }, std::move(prom)); cout << future.get() << endl; t.join(); } }이건 수업중 코드입니다.살짝 햇갈려서 구글링으로 이것저것 검색해보던중https://modoocode.com/284이 사이트의 설명을 읽다가 몇가지 질문 남겨봅니다.링크에서 std::promise 와 std::future 부분입니다. 1.cout << future.get() << endl; 여기서 작업한 값들이 promise객체의 인스턴스에 저장되어 있고 이를 돌려받아야되는데 promise객체의 인스턴스에 대한 언급없이 딸랑 get()만 쓰면 promise객체의 인스턴스로부터 돌려받는다는것을 어떻게 알 수 있나요? std::future<string> data = p.get_future();이 부분에서 약속을 했으니 그냥 get함수하면 알아서 promise객체로부터 값을 받아오고 출력까지 하는건가요? 그냥 이렇게 이해하면 되는건가요? 2.1번질문의 연장선입니다.get을 한번 더 쓰면 오류가 나는 이유가 저 링크에 의하면future 에서 get 을 호출하면, 설정된 객체가 이동 하기 때문에 절대로 get 을 두 번 호출하면 안됩니다. 라던데 이게 무슨말인가요?get함수는 그냥 값을 받아오는건데 객체가 이동한다는건 뭔가요?? 3.연산수행후 돌려줄 내부 객체 타입을 정하고연산이 끝나면 future 객체에 값을 전달함. 값을 전달할 future객체는 get_future함수를 통해 설정함.여기까진 이해가 되었는데 그럼 get함수는 (1). 전달받은 값을 출력하는 함수다.get함수 호출전에 자동으로 값은 promise객체에서 future객체로 넘어간다.(2).promise객체로부터 future객체가 값을 전달받는 행위 자체를 하는 future객체의 함수다.get함수 호출전엔 값이 안넘어간다. (1),(2) 둘 중 어느것에 해당되나요?이걸 제가 왜 햇갈려서 질문드리냐면 링크를 밑으로 살짝 내려보시면 p->set_value("some data");위와 같이 promise 객체가 자신의 future 객체에 데이터를 제공한 후에; 이부분이 이해하기 애매해서 질문드립니다.저부분은 객체에 데이터를 제공하는게 아니라 그냥 promise 객체의 인스턴스에 값을 입력하는 과정이지 않습니까? 질문이 좀 난잡한점 양해부탁드립니다.
-
해결됨스프링 DB 2편 - 데이터 접근 활용 기술
트랜잭션 전파에 대한 궁금증이 있어서 질문 드립니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (아니오)[질문 내용]안녕하세요 선생님 제가 트랜잭션 전파 내용을 모두 완강하고 혼자 약간의 궁금증이 생기는 부분이 있어서 질문을 남깁니다.제가 궁금한 부분은 물리 트랜잭션을 시작하는 메서드 A가 있고 여기에 참여하는 메서드 B가 있는데 만약 트랜잭션 A가 먼저 커밋이 되면 그 후에 B가 어떤 상황이 오더라도 물리 트랜잭션에 영향을 줄 수 없을까요??제가 배운기억으로는 A 논리 트랜잭션 커밋 B 논리트랜잭션 커밋이 되는경우에 물리 트랜잭션이 커밋이 된다고 배웠던 것 같은데A 논리 트랜잭션만 커밋해도 물리 트랜잭션이 커밋이 될까? 하는 의문에 실험 해 본 결과 B 논리 트랜잭션은 커밋을 하지 않아도 커밋이 되더라구요(혹시 잘못된 테스트 일까요?)그럼 만약 A 논리 트랜잭션이 커밋이 되고 난 후 B 논리 트랜잭션이 롤백이 된다면 B 논리 트랜잭션이 참여는 했었지만 물리 트랜잭션을 시작한 A 논리 트랜잭션이 먼저 커밋이 되면 B의 롤백은 참여하고 있던 물리 트랜잭션에 영향을 줄 수 없을까요??(이 경우 앞에 다른 물리 트랜잭션을 시작하는걸 만들어 두개의 논리 트랜잭션을 이어 붙여서 트랜잭션 전파를 사용하는게 가장 좋다고 생각하지만 혹시나 하는 마음에 질문을 하게 되었습니다.)제가 테스트 해본 결과는 영향을 줄 수 없는데 혹시 제가 잘못된 방법으로 테스트를 한건지 제대로 테스트를 한건지 아니면 제가 잘못 이해한 내용이 있는건지 궁금해서 질문글을 작성하게 되었습니다.
-
미해결CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조
로드밸런서에는 병목현상이 안생기나요?
강의에서 대규모 트래픽을 로드밸런서를 통해 분산한다고 했는데 그럼 로드밸런서 자체에 트래픽이 몰리면서 병목현상이 생기지는 않나요?요청 하나하나에 대해 적절한 응답을 해줄 필요가 없이 단순히 요청을 여러 서버로 나눠주는 역할만 해서 트래픽이 아무리 몰려도 딱히 병목현상이 없는걸까요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
혹시 단계별로 완성된 코드를 받을 수 있을까요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]검증부분부터 듣고싶은데 코드가 다 완성되어있어요!혹시 단계별로 완성된 코드가 올라간 깃허브가있을까요..?