묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨핵심만 골라배우는 CSS3
피그마 활용하기 부분에 대해 질문있습니다.
안녕하세요 CSS 강의를 결제해서 듣고 있습니다. 피그마 활용법 - 파일 불러오기 부분에서 파일은 어디서 받을 수 있나요?
-
해결됨2시간으로 끝내는 코루틴
Spring MVC에서 corountine 활용 방안
안녕하세요. 저는 오랜기간 동안 Java, Spring을 기반으로 웹 프로그래밍 해왔고 이번에 일부 프로젝트를 코틀린 + Spring을 기반으로 구현을 검토하게 되어 해당 강의를 듣게 되었습니다.사실 Java, Spring 기반이다 보니 동기방식의 프로그램에 익숙해져 있고 러닝커브나 디버깅의 어려움, DB등의 관련 라이브러리들이 아직 안정화 수준이 아니라 판단하여 WebFlux 도입을 꺼려왔고,일부 RestTemplate 호출등의 병렬 처리가 필요할 경우 CompletableFuture에 별도 ThreadExecutor를 사용해 처리하는 방법을 주로 사용해 왔습니다.이번 신규 프로젝트도 우선은 Spring 프레임워크를 사용하기 때문에 Webflux가 아닌 Spring MVC 기반의 동작이 될 예정인데요,그러다 보니 강의를 다 들었지만 coroutine을 어떻게 활용할 수 있을지 감을 잘 못잡은 상태입니다.가령 RestTemplate이나 RestClient 등의 동기식 block 기반의 통신 시 호출 부를 CoroutineScope(Dispatchers.Default).async { } 으로 감싸서 호출을 하게 되면 두개의 API가 각각 1초가 걸린다면 1.05 정도로 가능하겠지만 이런 패턴은 기존 자바에서 CompletableFuture로 충분히 가능했던더라 coroutine을 잘 활용했다고 보는게 맞는지 궁금한데요,coroutine의 장점을 활용하려면 결국 API 통신 같은 경우 가능하면 webclient나 ktorClient 등을 통해 non-block으로 변경해서 처리를 해야 하는건지 궁금하고, 코틀린으로 웹애플리케이션을 구현한다고 했을때 spring을 사용하면 webflux 도입은 약간 필수? 같은 개념으로 봐야 하는건지 궁금합니다.(강의 마지막 Continuation 예제에서 repository call을 두번 하는 부분도 non-block으로 DB처리가 가능해야 의미있는 coroutine 동작이 가능한거겠죠??) 질문을 요약하자면,Spring MVC 구조에서 block 기반의 로직 처리 시 CoroutineScope(Dispatchers.Default).async { } 으로 감싸서 호출하는 구조가 coroutine의 장점을 활용한 방식이 맞을까요?1번이 장점이 아니라면 non-blocking으로 처리 가능한 webclient나 ktorClient을 사용해야 해야 할까요?보통 Spring에서 coroutine을 활용하려면 webflux를 사용하는게 기본일지? 혹시 다른 활용 방안은 없을지?입니다.감사합니다.
-
미해결설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
Retiming 관련 질문입니다.
[1. 질문 챕터] : eg) 몇 장, 몇 분 몇 초 쯤. or 수강생 분들이 봤을 때 어디구나?! 할 수 있게 표기 부탁 드려요.[2. 질문 내용] : eg) 질문 내용을 자유롭게 작성해주시면 되겠습니다 🙂[3. 시도했던 내용, 그렇게 생각하는 이유] : eg) 설치영상은 이렇게 시도했는데 안되더라 or 본인의 생각을 적어주세요. (실습 내용 중에 이해가 안되거나 잘못된 내용이 있는데, 이러 이러한 근거로 나는 이렇게 생각합니다.) 안녕하세요 맛비님, 훌륭한 강의 정말 잘 듣고 있습니다. 다만 강의를 듣던 중, 헷갈리는 부분이 생겨 질문 남기게 되었습니다. 답변 해주시면 정말 감사하겠습니다. FPGA 22장 21분 쯤 Retiming에 관해 설명해주셨는데, 이 부분에서 중간에 F/F를 추가함으로써 timing violation을 해결하는 과정을 Retiming이라고 하셨습니다. 그런데 Retiming에 대해 공부를 하던 중, Retiming은 레지스터의 위치를 변경시키는 방법이고, 레지스터를 추가시키는 것은 pipielining이라는 글을 보게 되었습니다. 맛비님께서 설명해주신 것처럼 F/F을 추가하여도 Retiming인지 여쭈어 보고 싶습니다.훌륭한 강의 정말 감사합니다. 답변해 주시면 감사하겠습니다.
-
미해결Next + React Query로 SNS 서비스 만들기
인터셉팅 라우팅 폴더 위치 경로 지정 관련 질문
우선 인터셉팅 라우팅을 버튼, 링크 등을 통해 이동 시 인터셉트된 page를 렌더링하고 새로고침이나 주소창을 통해 이동했을 때 정상(?)적인 page를 렌더링하는 것으로 이해했습니다. 인터셉팅 라우팅 폴더를 만들어야 할 위치가 궁금해서 /test1/test2 에서 Link태그를 통해 /test1 으로 이동할 때 새로고침 시 표시 되는 test1과 intercepted test1을 구분하는 코드를 작성했습니다 "(.)test1" 폴더 위치를 바꿔보면서 어떻게 동작하는 지 확인해보는 과정에서 이해가 되지 않는 부분이 있어서 질문드립니다. 이 폴더구조로 해야 작동하고, 이 폴더 구조는 작동이 안되는게 이해가 안됩니다.뭔가 (.), (..), (..)(..) 이런식으로 경로 지정이 가능하면 인터셉팅 라우팅 폴더는 어디 있든 상관없어도 될 것 같았는데... 아래 폴더구조가 작동을 안되니 디게 혼란스럽네요 ㅠㅠ
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-D 반례
정확히 선생님이 알려주신 반례를 고려하지 못해서 계속 틀렸었네요. 이 반례를 생각못해서 30분 정도 헤매다가 강의를 듣고 알았습니다..이런 반례를 잘 생각해낼 수 있는 팁이 있을까요?? 참고틀린코드https://www.acmicpc.net/source/share/0041d7ec240f4070b3803327cefdc672맞은 코드 (불 방문 배열 0 체크)https://www.acmicpc.net/source/share/7aaf0dee6f534ea6b896145d17a81a14
-
미해결한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
오픈 그래프 적용이 안되네요..
오픈 그래프가 아무것도 적용이 되지 않는데 문제를 못 찾겠습니다..index.html 에서<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <link rel="icon" type="image/svg+xml" href="/favicon.ico" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>감정일기장</title> <meta property="og:title" content="감정 일기장" /> <meta property="og:description" content="나만의 작은 감정 일기장" /> <meta property="og:image" content="/thumbnail.png" /> </head> <body> <div id="root"></div> <script type="module" src="/src/main.jsx"></script> </body> </html> 으로 작성을 하고 배포를 했는데 오픈 그래프 3가지 중 아무것도 적용이 안되네요..카톡말고도 티 스토리 블로그 글쓰기에서도 적용이 안 되는걸로 보아 캐시 문제는 아닌 것 같은데.. 오타가 있는지도 다른 분들 코드 보면서 비교해봤고 이미지도 public 폴더에 잘 있습니다..뭐가 문제일까요?..배포링크: https://emotion-diary-dfgr3t44x-watnus-projects.vercel.app/배포링크에서 썸네일 확인:https://emotion-diary-dfgr3t44x-watnus-projects.vercel.app/thumbnail.png
-
해결됨자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
문제 수정이 안 된 것 같습니다.
https://www.inflearn.com/courses/lecture?courseId=326750&unitId=72712&tab=QnA&category=questionDetail&q=672478 다른 분이 글을 올리시긴 했는데 입력이 "문제에 첫 줄에 길이 100을 넘지 않는 공백이 없는 문자열이 주어집니다."라고 적혀 있지만 예시 입력에도 공백이 있고, next()를 사용하면 틀리는 걸 보니 공백이 있는 문자열로 수정되어야 할 것 같습니다.
-
미해결스프링 DB 1편 - 데이터 접근 핵심 원리
close() 에 실패한 자원의 처리
finally { if ( rs != null ) try{rs.close();}catch(Exception e){} if ( pstmt != null ) try{pstmt.close();}catch(Exception e){} if ( conn != null ) try{conn.close();}catch(Exception e){} }자원을 해제하는 도중 예외가 발생하면 나머지 자원이 해제되지 않을 수 있기에 다음과 같은 try 문으로 감싸주어야 한다고 이해했습니다. 그러면 예외가 발생해 해제에 실패한 자원에 대해서는 다시 close()를 하거나 다른 조치를 취하지 않아도 메모리 누수나 다른 문제가 없는 건가요?
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
수강연장 부탁드립니다
안녕하세요, 혹시 수강기한 연장 가능할까요?회사 다니면서 시험 준비를 하려니 강의 수강을 못했네요...연장해주시면 정말 감사드리겠습니다!
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
fail() 오류
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.fail(); 부분에서 오류가 뜨고 이텔릭체로 바뀌지 않습니다. 왜 그런가요?package hello.hello_spring.service; import hello.hello_spring.domain.Member; import org.assertj.core.api.Assertions; import org.junit.jupiter.api.Test; import static org.assertj.core.api.Assertions.*; import static org.junit.jupiter.api.Assertions.*; class MemberServiceTest { MemberService memberService = new MemberService(); // 테스트케이스에서는 메서드명 한글로 적어도 된다 @Test void 회원가입() { // given Member member = new Member(); member.setName("hello"); // when long saveId = memberService.join(member); // then(검증) Member findMember = memberService.findOne(saveId).get(); assertThat(member.getName()).isEqualTo(findMember.getName()); } @Test // 예외처리(테스트케이스에서는 정상적으로 작동하는거도 좋지만 예외 처리가 더 중요하다) public void 중복_회원_예외() { // given Member member1 = new Member(); member1.setName("spring"); Member member2 = new Member(); member2.setName("spring"); // when memberService.join(member1); try { memberService.join(member2); fail(); } catch (IllegalStateException e) { } // then } @Test void findMembers() { } @Test void findOne() { } }
-
해결됨웹 개발자와 정보보안 입문자가 꼭 알아야 할 웹 해킹 & 시큐어 코딩
실습 2-9] request 수정하고 send를 눌렀는데 검색이 되지 않습니다.
GET /insecure_website/index.php?page=view&idx=14%20and%20length((select+jumin+customer_info+where+id='admin'))=14그 이전까지는 잘되었는데 이부분 부터 계속 안됩니다. 어디가 문제일까요?
-
미해결코딩으로 학습하는 리팩토링
리팩토링 10. 함수를 명령으로 바꾸기 강의 부분에서 질문있습니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.리팩토링 10. 함수를 명령으로 바꾸기 강의에서 6:00 부분에서 설명하시는게 전략패턴 말씀하시는 것 같은데 GoF의디자인 패턴 강의에서 설명해주신 것일까요?? 아직 디자인 패턴 강의는 들어보지 않아서 강사님께서 기억나시냐고 물어보시는게 어떤 부분인지 궁금해서 질문드립니다.
-
해결됨절대강좌! 유니티 6 - TPS 게임으로 배우는 유니티 마스터클래스
강사님~ 오디오 파일 관련해서 질문있습니다!
강사님~ 너무 재밌게 강의를 듣고 있습니다.궁금한게 하나 있는데 섹션 6번에서 '스파크 이펙트 표현' 강의를 완강 후'Audio 기초 사용법' 강의로 넘어갔는데 오디오 파일이 없어서...혹시 오디오 리소스는 어디서 다운 받을 수 있을까요?혹시나 제가 수업자료를 놓친건가 싶어서 앞 강의를 다시 돌려봤는데 어디서 받아야하는지 잘 모르겠습니다.
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
9.2 useReducer 체크박스 관련질문입니다.
문제상황: 수정을 위해 체크박스를 체크해도 아무 변화도 생기지 않는 상황reducer 내용 const reducer = (state, action) => { switch(action.type){ case 'CREATE': return [action.data,...state]; case 'UPDATE': return state.map((item) => { console.log(action, item.id, item.isDone) return item.id === action.targetId ? {...item, isDone: !item.isDone} : item }) case 'DELETE': return state.filter((item) => item.targetId !== action.targetId) default: state } } const onUpdate = (targetId) => { dispatch({ type:"UPDATE", targetId }) } 예상 문제: console.log(action.targetId, item.id, item.isDone)을 해본결과action.targetId가 내가 원하는 id값만 가져오는것이 아닌 저렇게 객체 전체를 가져오기 때문에 action.targetId와 item.id가 일치하지 않아 체크가 되지않는 현상인것 같습니다. 어디를 보면 좋을지 및 무엇을 수정해야하는지 알려주시면 감사하겠습니다.
-
미해결UDS 진단통신을 통한 SW 업데이트(SW ReProgramming)
OTA 관련 기능 질문
안녕하세요, 마지막 강의에서 궁금한 점이 있어 질문을 드리게 되었습니다.OTA에서도 다운로드 순서를 말씀주셨는데, OTA 과정에서도 ECU Reset을 수행한다면, 해당 동작은 차량 시동을 끈(MCU off?) 후에 진행하게 되는 것인가요? 이중 메모리 구조를 이용할 때가 차량 주행 중에 SW Update 하기 위해서로 이해했는데, 그렇다면 SW Reprogramming 과정에서 ECU Reset은 주행 중에 가능한 것인가요?SW Update 이후의 A,B Swap을 MCU에서 수행한다고 이해했습니다. 해당 기능은 MCU가 Off(시동 OFF?) 후에 Swap이 진행되고, 다시 On(시동) 시키면, 새롭게 업데이트 된 SW가 담긴 메모리가 활성화 되는 것 일까요?기본적인 유선 통신 (SW Update)에서는 차량 정지 시에 진행한다고 들었는데, 시동 OFF/On 두 상태에서 SW Update가 가능한 것인가요? 마지막 부분까지 강의를 수강했는데, 지식을 쌓는데 큰 도움이 되었던 유익한 강의였습니다!욕심이지만,, 또 가능한 다른 강의도 open 하셔서 더 많은 부분을 배워갔으면 좋겠습니다!감사드립니다!
-
해결됨RAG를 활용한 LLM Application 개발 (feat. LangChain)
3.3 Langchain 없이 Upstage RAG 구성
안녕하세요 강사님. 🙂 질문 내용3.3 강의를 듣던 중 chatGPT 말고 upstage로 구성하는 방법은 없을까? 하고 스스로 방법을 찾아봤습니다. https://github.com/openai/tiktoken/blob/main/tiktoken/model.py 현재 tiktoken에서 제공되는 model 중 upstage의 solar 모델이 없는 것 같습니다. upstage 로 RAG를 구성하는 방법도 배울 수 있을까요..?
-
해결됨[Unity6] 유니티6로 배우는 실전 멀티플레이 디펜스
빈공간 이동에서 잔상
저번과 같은 질문을 드려서 죄송합니다.빈공간이동에서 보면 30:43초 쯤에 클라이언트가 이동할때 서버 쪽에 저랑 같은 잔상이 생기는데해결방법이 없나요?
-
미해결Tailwind CSS로 만드는 멋진 웹 UI 스타일링
메인 폰트 사용법이 궁금합니다.
4.0 기준으로 학습하고 있습니다.input.css 파일을 아래와 같이 작성하면자동으로 Montserrat 폰트 즉 첫번째 줄 폰트가적용되는건가요?메인 폰트 적용 방법을 모르겠습니다.@theme { --font-mont: "Montserrat", "sans-serif"; --font-noto: "Noto Sans KR", "Arial", "sans-serif"; /* Color */ --color-deepgreen:#6ab04c; --color-deeporange:#f0932b;}
-
미해결스프링 DB 2편 - 데이터 접근 활용 기술
멀티 스레드 트랜잭션
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]안녕하세요 영한님 강의를 보고 사이드 프로젝트를 하며성장 하고 있습니다.관련된 내용을 찾아 보다가 인사이트를 얻기 어려워조언을 얻고자 질문을 남깁니다. 테스트에 트랜잭션이 걸려있고, ExecutorService submit을 통해 단순히 데이터를 저장 할때 PessimisticLockingFailureException예외가 발생 합니다.테스트 트랜잭션이 락을 가지고 있고 커밋 되지 않아서 문제가 발생 한다고 하는데멀티 스레드는 트랜잭션 전파와 연관이 없기 때문에별도의 물리 트랜잭션이라고 생각 하고 있습니다.하지만 왜 이런 예외가 발생 하는지 모르겠습니다 ㅠㅠ힌트라도 알려 주시면 감사합니다@Transactional @DisplayName("멀티 스레드에서 모임을 저장 한다.") @Test void saveEventWhenMultiThread() throws InterruptedException { //given ExecutorService executorService = Executors.newFixedThreadPool(2); int taskCount = 3; CountDownLatch countDownLatch = new CountDownLatch(taskCount); //when //then for(int i = 0; i < taskCount; i++) { int testNum = i; executorService.execute(() -> { try { eventRepository.save(createEvent("멀티 테스트" + testNum , "테스트 모임", 30)); } finally { countDownLatch.countDown(); } }); } countDownLatch.await(); executorService.shutdown(); } Exception in thread "pool-2-thread-2" Exception in thread "pool-2-thread-1" org.springframework.dao.PessimisticLockingFailureException:
-
해결됨외워서 끝내는 네트워크 핵심이론 - 응용
NAT Gateway NAT table 최대 row 수 제한 같은 부분이 있는지 질문 드립니다.
안녕하세요. 선생님강의 잘 듣고 있습니다.NAT Gateway NAT 수업 듣다가 궁금증이 생겨 질문 드립니다.순간적인 요청이 많아 졌을 때 (정상적으로 응답 되지 않아 오랜 시간 물고 있는 요청이 많은 경우) NAT table에 External port 수가 제한 된 다던지 row 수가 제한되는 경우가 있을까요??위 같은 그림에서 1번은 외부 웹 서버로 통신, 2 ~ 4 는 내부 다른 VPC에 있는 웹 서버로 요청 할 때1번 -> 외부 웹 서버 요청 지연이 발생 될 때 2 ~ 4 의 내부 웹 서버(멀쩡한 상태) 요청도 같이 지연되는 현상이 발생 된다면 어떤 부분을 확인 해 볼 수 있을까요? (2 ~ 4 -> 내부 웹서버 요청도 NAT Gateway 를 통해 나간다고 하면 해당 현상이 발생 할 수 있을까요??)