묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨비전공자를 위한 진짜 입문 올인원 개발 부트캠프
그랩님의 답변을 기다립니다/102강 전반적인 에러
그랩님, 강의 잘 듣고 있습니다.102강 강의를 듣고 있는데요,react-native-reanimated-carousel 설치를 위해 노션에 링크대로 npm install react-native-reanimated-carousel@3.3.0 명령어로 vs code 터미널에서 설치하고그 이후 한번 더 expo install --npm react-native-reanimated react-native-gesture-handler 를 입력하여 vs code 터미널에서 성공적으로 설치를 완료하였습니다.질문 1.그 이후babel.config.js 파일에 가서 plugins: ["react-native-reanimated/plugin"], 추가 해주려고하는데요, 문제는 babel.config.js 파일이 어디에도 존재하지 않아서 어디에서 플러그인 문구를 입력해 주어야 하는지 모르겠습니다. 아래는 첨부 사진입니다. 어떻게 해야 위 플러그인 문구를 입력 가능할까요?참고로 grab-market-mobile의 package.json에 디펜던시를 보면 아래와 같이 확인 할 수 있습니다."react": "19.1.0", "react-native": "0.81.5", "react-native-reanimated-carousel": "^3.3.0", "react-native-reanimated": "~4.1.1", "react-native-gesture-handler": "~2.28.0"질문 2. Babel 설정을 위해 Cache 초기화 하는 부분도 위에 질문1이 순서대로 정상적으로 진행이 되지 않아스킵하고 강의를 이어갔는데요, babel.config.js에 플러그인 문구부터 저장한 뒤 바벨 설정 캐시초기화 하는 것이 옳은 건가요? 즉 순서대로 해야 하는지도 궁금합니다.질문 3. 102강 시작부터 ~ 18분 56초 까지 타이핑한 grab-market-mobile의 App.jsreact-native-reanimated-carousel 소스 내용이 아래와 같은데요, 이것을 실행하면 첨부한 사진과 같이 안드로이드 스튜디오(runtime not ready)에서 에러가 납니다. 참고로 아래 App.js 소스는 강의 전체 완성본 소스가 아니라 에러가 난 시점까지의 소스 입니다.질문3-1. -->그리고 여기에서 Carousel 부분 살펴보면요, 아래 App.js 소스에서 아래와 같이 작성하는 것 맞나요? 만약 아래 작성 소스가 다르다면, 어떻게 작성 해야하는지 답변 댓글에 소스를 적어주시면 감사하겠습니다.<Carouseldata={banners}width={Dimensions.get("window").width} height={200}autoPlay={true}renderItem={(obj)=>{ return( <TouchableOpacity> <Imagesource={{uri:obj.item.imageUrl}} /> </TouchableOpacity> ) }} /> import { StatusBar } from "expo-status-bar"; import React from "react"; import { StyleSheet, Text, View, Image, ScrollView, Dimensions, TouchableOpacity } from "react-native"; import BasketballImage from "./assets/products/basketball1.jpeg"; import Avatar from "./assets/icons/avatar.png"; import {API_URL} from "./config/constants"; import axios from "axios"; import dayjs from "dayjs"; import relativeTime from "dayjs/plugin/relativeTime"; import "dayjs/locale/ko"; import Carousel from "react-native-reanimated-carousel"; dayjs.extend(relativeTime); dayjs.locale("ko"); export default function App() { const [products, setProducts] = React.useState([]); const [banners, setBanners] = React.useState([]); React.useEffect(()=>{ axios.get(`${API_URL}/products`).then((result)=>{ setProducts(result.data.products); }).catch((error)=>{ console.error(error); }) axios.get(`${API_URL}/banners`).then((result)=>{ setBanners(result.data.banners); }).catch((error)=>{ console.error(error); }) },[]) return ( <View style={styles.container}> <ScrollView> <Carousel data={banners} width={Dimensions.get("window").width} height={200} autoPlay={true} renderItem={(obj)=>{ return( <TouchableOpacity> <Image source={{uri : obj.item.imageUrl}} /> </TouchableOpacity> ) }} /> <Text style={styles.headline}>판매되는 상품들</Text> <View style={styles.productList}> { products.map((product, index)=>{ return (<View style={styles.productCard} key={product.id}> {product.soldout === 1 && <View style={styles.productBlur}/>} <View> <Image style={styles.ProductImage} source={{uri: `${API_URL}/${product.imageUrl}`,}} resizeMode={"contain"} /> </View> <View style={styles.productContents}> <Text style={styles.productName}>{product.name}</Text> <Text style={styles.productPrice}>{product.price}원</Text> <View style={styles.productFooter}> <View style={styles.productSeller}> <Image style={styles.productAvatar} source={Avatar} /> <Text style={styles.productSellerName} >{product.seller}</Text> </View> <Text style={styles.productDate}>{dayjs(product.createdAt).fromNow()}</Text> </View> </View> </View>); }) } </View> </ScrollView> </View> ); } const styles = StyleSheet.create({ container: { flex: 1, backgroundColor: '#fff', paddingTop: 32, }, productCard: { width: 320, borderColor: 'rgb(230,230,230)', borderWidth:1, borderRadius: 16, backgroundColor: "white", marginBottom: 8, }, ProductImage :{ width: '100%', height: 210 }, productContents : { padding: 8 }, productSeller : { flexDirection: 'row', alignItems: 'center' }, productAvatar: { width:24, height:24, }, productFooter: { flexDirection: 'row', justifyContent:'space-between', alignItems: 'center', marginTop: 12, }, productName : { fontSize: 16 }, productPrice: { fontSize: 18, fontWeight: '600', marginTop: 8 }, productSellerName: { fontSize: 16, }, productDate: { fontSize: 16, }, productList: { alignItems:"center", }, headline : { fontSize: 24, fontWeight: "800", marginBottom:24 }, productBlur : { position: 'absolute', top: 0, bottom: 0, right: 0, left: 0, backgroundColor: "#ffffffaa", zIndex: 999, }, }); 그랩님께서 진행하시는 강의처럼 에러가 뜨지 않고 제대로 결과값이 나와야 하는데, 아무리 해도 어떻게 에러를 해결해야 하는지 차근차근 알려주셨으면 좋겠습니다. 아직 그랩님의 강의 102강 처음부터 ~ 19분 안되는 정도까지 진행하다 위 에러를 만나게 되어 해결이 안되고 있어서 더 진행을 하지 못하고 있어서 질문을 남깁니다.질문 4.아래 AI 인턴 답변을 보고 vs code의 grab-market-mobile에서 babel.config.js을 프로젝트 루트에 파일을 직접 생성하고 module.exports = {presets: ['babel-preset-expo'],plugins: ['react-native-reanimated/plugin'],};위 소스입력 후 저장을 완료 한 뒤 캐시 초기화를 위해 vs code grab-market-mobile의 터미널에서 expo start -c 까지 차례대로 수행한 후 ngrok과 grab-market-server와 안드로이드 스튜디오 에뮬레이터 실행 후 마지막으로 grab-market-mobile로 연동 실행 후 결과가 위 버전 에러와 다르게 또 새로운 에러가 발생하게 되었습니다. 아래 사진 첨부합니다. 이 점은 어떻게 해결해야 하는지요? 질문 5.그리고 Vs code에서 아래 인턴님이 답변 준대로 질문 2까지 수행 하니 아래와 같은 에러가 발생하여 사진을 첨부합니다.이 에러는 어떤 것을 의미하며 해결하는 방법은 무엇인가요?질문 6. AI 인턴님이 남겨주신 <질문 3 및 질문 3-1>에서는 "package.json에서 관련 패키지를 제거하세요"라고 써있는데요, 이것은 구체적으로 무엇을 어떻게 수행하는 건가요? 예를들면 어떤 명령어를 입력해야 합니다와 같이 알려주시면 좋겠습니다. 질문 7. (확인 차원에서 재 질문 합니다.)Carousel 소스가 궁금한데요, 그랩님께서 강의에서 찍었을 당시 오픈소스인데 오래된 것이라 다른 것으로 변경하여 재 촬영 해주셨다고해서 조금 햇갈린데요,Carousel 부분 살펴보면요, 아래 App.js 소스에서 아래와 같이 작성하는 것 맞나요?만약 아래 작성 소스가 다르다면, 어떻게 작성 해야하는지 답변 댓글에 소스를 적어주시면 감사하겠습니다.<Carouseldata={banners}width={Dimensions.get("window").width} height={200}autoPlay={true}renderItem={(obj)=>{ return( <TouchableOpacity> <Imagesource={{uri:obj.item.imageUrl}} /> </TouchableOpacity> ) }} /> 질문 8. AI 인턴님이 남겨주신 답변에 관한 질문 3 및 3-1은 하라는대로 실행해보면 에러가 더 많이 발생할까봐아직 수행을 안했는데요, 아래 답변대로 명령어 3개를 입력해 줘도 괜찮은건가요?여쭈어보고 하는게 나을 것 같아서 다시한번 작성해 보았습니다.명령어 1: npm uninstall react-native-reanimated-carousel react-native-reanimated 명령어 2:npm install react-native-reanimated-carousel@3.3.0 react-native-reanimated@^2.0.0 명령어 3:expo install react-native-gesture-handler 확인하시면, 그랩님께서 꼭 답변 부탁 드립니다.
-
해결됨원클릭으로 AI가 생성해주는 Youtube 쇼츠 만들기 자동화(with n8n)
28강 수업자료 템플릿 링크가 연결이 안되요 ㅠㅠ
-
해결됨Flutter 초입문 왕초보편
실로폰 음원 재생 오류 해결 (do.1.wav)
안녕하세요. 강의 듣다가 테스트 중에 문제가 발생하여 해당 내용에 대해 공유를 드리고자 이렇게 글 남깁니다.문제가 발생한 부분은 음원을 audioPlayer 객체로 읽어 들이는 과정에서 제대로 처리가 되지 않아 _isLoading State 값이 변경되지 않고 무한 로딩이 걸리는 문제가 있습니다.원인을 찾고자 try ~ catch 문을 통해 에러 메세지를 출력해 보았다가 _isLoading State가 정상적으로 업데이트 되어 화면 UI가 나오기 시작했습니다.for (final note in notes) { final player = AudioPlayer(); try { await player.setAsset('assets/$note'); } catch (e) { print(e); } _audioPlayers.add(player); }다만 이렇게 수정한 후에는 맨 첫 번째 '도' 건반의 소리가 나지 않았습니다. 다른 음원은 모두 정상적으로 로드했지만, 첫 번째 'do1.wav' 만 로드가 되지 않고 에러가 발생합니다.Playback error androidx.media3.exoplayer.ExcoPlaybackException: Source Error여러 고민을 해 보다가 혹시나 싶어 'do1.wav'의 음원의 이름을 'do.wav'로 바꾸니 정상적으로 작동하였습니다.정확한 원인은 모르겠지만, 혹시 같은 문제를 겪는 분은 이름을 바꿔보는 걸 시도해 보시면 좋을 거 같습니다!
-
미해결
설문 조사 한번씩만 참여해주세요!
부트캠프에서 공부 중인 학생입니다!프로젝트 콘텐츠 타당성 조사 진행중인데설문조사를 통해 타당성 조사를 하려고 합니다.https://forms.gle/17e8dQdJ7uRpHadV82-3분 정도 소요 되는 간단한 질문들 입니다.위의 링크 통해서 설문 조사 한번 참여해시면 감사하겠습니다!!
-
미해결비전공자 혼자서 하루 만에 수익화 앱 출시하기
시뮬레이터가 안보여요
0:25초에서 윈도우에서는 설정을 어떻게해야하나요시뮬레이터가 안보여요
-
미해결구글 애드워즈 - 캠페인 유형별로 모아서보기
동영상이 안나와요
유튜브 캠페인 운영 전략 파트만 안나옵니다모바일, 데스크탑 크롬으로도 해봤고 안내주신 방법 다 해도 안나와요 영상에 문제가 있는게 아닌지 확인부탁드립니다1대1문의에 남겨도 며칠째 답변이 없네요
-
해결됨스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
셀렉박스 챕터에서 option value에 ==배송 방식 선택== 이것을 넣은 이유가 궁금함, 이렇게 구상해도 되는지?
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)(근데 잘 썻는지 모름 )[질문 내용]안녕하세요 궁금증이 생겨서 질문을 드립니다. 질문1select 박스 버튼에서<option value="">==배송 방식 선택==</option>이렇게 코드를 작성 하셨습니다.근데 저가 보기에는 이게 선택에 포함 되어야 한다는 생각 및 예전에 "배송방식 선택"을 선택optgroup 못하게 했던 것이 떠올라 찾아봐서 optgroup 이라는 키워드를 찾을 수 있었고 적용할 수 있었습니다.그래서 질문은 왜 optgroup 이라는 태그? 를 안쓰고 value로 하셨는지 궁금합니다.이렇게요. (사진 수정 적용된 부분이 안보여서)질문2하다 보니까, 상품을 판매하는 관리자 및 상품을 사는 사용자가 같이 있는 것 같다는 생각이 듭니다.전체적으로 한 곳에 만들어 놓고, 사용자 및 관리자 에 따라서 어떤것 들은을 안보여 주고 어떤것은 보여지게 처리할수 있을것 같다는 생각이 드는데요.사용자일 경우 배송방식 만 남겨 주고, 상품 수정을 - 구매 버튼으로 수정판매하는 관리자일 경우 그대로 놔둠방법 -> th:if 로 관리자일 경우 이것을 출력 아니면 미출력 이런식으로 생각해 보았는데 이게 맞는 방법 인가요?+ 질문2처럼 적용하지는 않았고, 그냥 물어 봤는데요 이렇게 질문해도 되는것인가요? 답변 부탁 드립니다.
-
미해결실무에 바로 적용하는 AWS 배포
2.3 Elastic Load Balancer ↔️ EC2
안녕하세요 강사님! 강의 잘 듣고 있습니다.ELB를 사용하면 웹 트래픽은 모두 ELB에서 받아서 Private Subnet의 EC2로 전달하는 구조가 보안적으로 더 안전하다고 알고 있습니다.그래서 강의 내용을 따라가면서, EC2를 Public Subnet에 두는 이유가 무엇인지 궁금해졌습니다.제가 이해한 바로는 아래 두 가지 때문이라고 판단했는데, 맞는지 확인 부탁드립니다.Private Subnet은 인터넷 직접 접속이 안 되어 apt update, 패키지 설치 등을 하려면 NAT Gateway가 필요한데,NAT Gateway는 비용이 발생해 초보자 실습에서는 과도한 비용이 된다.Public Subnet의 EC2는 인터넷에 직접 접속할 수 있어 패키지 설치나 초기 설정(nginx 설치, 코드 배포 등)이 훨씬 단순해진다.즉, 보안적으로는 Private Subnet 배치가 더 적절하지만,학습 난이도와 비용 문제 때문에 Public Subnet을 사용하는 것이라고 이해했습니다.제가 이해한 내용이 맞을까요?그리고 실무에서는 보통 말씀드린 것처럼 ELB는 Public Subnet, EC2는 Private Subnet 구조로 구성하는 것이 일반적인지도 궁금합니다.
-
해결됨제미니의 개발실무 - 커머스 백엔드 기본편
엔티티 연관관계 사용
안녕하세요, 강의 너무 잘보고있습니다!코드를 살펴보니 궁금한 부분이 있는데 현재 작성된 코드에서는 엔티티 간 연관관계를 맺지 않고 풀어내고계시더라고요!재미니님은 실무에서도 연관관계를 사용하지 않으시는 건지 아니면 고민 포인트(?)를 던져주신건지 궁금합니다!예를들어 Order와 OrderItem 관련해서, OrderService의 서비스 레이어인 create 메서드에서 OrderItemRepository를 사용해 saveAll을 호출하는 방식을 사용하시더라고요!저는 Order가 없으면 OrderItem은 존재하지 않아야한다고 생각해서, OrderItem의 생성을 서비스 레이어가 아닌 Order 엔티티안에서 생성하도록 강제하는 건 어떨까 생각했습니다.방법으로는OrderItem.create() 같은 생성 메서드를 protected로 막는다.OrderItemRepository를 아예 생성하지 않는다.더티 체킹을 이용하여 Order 필드에 있는 List<OrderItem> 컬렉션에 요소 추가로 OrderItem을 save한다.팀 컨벤션을 정한다.정도가 있을 것 같은데... 그렇다면 재미니님은 실무에서도 연관관계를 맺지 않는 방식을 선호하시는 건가요?사실 서비스 레이어에서 직접 호출을 통한 저장이라고 해도 문제는 없겠지만 사용하시는 방식이 궁금합니다! 그리고 추가적으로 주문 시 상품 재고를 차감시키는 메서드를 OrderHandler(OrderManager) 에 private으로 위치시키는 것과 ProductHandler(ProductManager)에 위치시키고 주입받아 사용하는 것중 어떤게 더 나은 방식일까요?private void decreaseProductStock(List<NewOrderItem> newOrderItems, Map<Long, Product> productMap) { for (NewOrderItem newOrderItem : newOrderItems) { Product product = productMap.get(newOrderItem.productId()); if (product.isStockLessThan(newOrderItem.quantity())) throw new ApiException(PRODUCT_QUANTITY_OVER); product.decreaseStock(newOrderItem.quantity()); } }고민이 되는 부분은 예를들어 위와 같은 메서드를 OrderHandler에 두자니 조금 헤비해지는 것 같고, ProductHandler에 두자니 신규 주문 시에만 사용될 것같은데.. ProductHandler에 두는게 맞는지 고민입니다..! 의견이나 힌트 주시면 좀 더 고민해보도록 하겠습니다!
-
해결됨원클릭으로 AI가 생성해주는 Youtube 쇼츠 만들기 자동화(with n8n)
item숫자가달라 다시하고있는데 여기서부터달라져요
지금 처음부터 다시 해봐요 에러때문에。제가 직접 노드설계하지않고 이번에는 강사님 주신 템플릿에서 제 계정연동과 api키만 변경하고있어요근데 스샷에 여기서부터 달라지거든요설정은 같게 하고 실행하면 아웃풋이 1개로 강사님화면에는 나오는데 저는 5개로 나와요
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
save() 메서드 문의
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]private static final Map store = new HashMap<>();Item items = store.put(item.getId(), item);return items;이렇게 하면 항상 반환값이 기존값 반환, 없으면 null이 나올 가능성이 있나요?그래서store.put(item.getId(), item);return item; 이런식으로 코드를 작성하는건가요?영한님강의를 다 샀는데 혹시 해당 하는 내용이 어떤 강의 어디쯤 나오는지 알수 있을까요? 그부분 다시 보충 해서 공부를 해야 할거 같아서요
-
미해결[VOD] 6주 완성! 개발 실무를 위한 고농축 바이브코딩 (Cursor AI, Figma)
피그마 연결 오류
mcp.json에 피그마사이트의 json을 그대로 복사해서 붙여넣었는데 오류가 납니다
-
해결됨비개발자 4주만에 수익화 서비스 만들기: AI 바이브코딩 웹 + 앱 ALL IN ONE
Replit 문의
Replit에서 강의대로 명령어 했는데 명령어 두번만에 agent usuage 사용되었다고 하네요 다른 계정으로 똑같이 시도 했는데 agent usuage 몇번 시도하니깐 바로 또 업그레이드 하라고 하던데 업데이트 되면서 달라진거 같습니다
-
미해결
이미지생성섹션입니다 왼쪽의 인풋에 아래4개가 추가로 따라오는데 강사님 강의에는 1개뿐이거든요
이미지생성섹션입니다 왼쪽의 인풋에 아래4개가 추가로 따라오는데 강사님 강의에는 1개뿐이거든요이부분이 이해가 되지않고 이부분의 문제를 해결하려면 어떻게해야될가요
-
해결됨카카오 면접관(개발자)이 알려주는 MSA 관점에서의 분산 트랜잭션 패턴
common 모듈의 필요성과 다른 방법에 대한 문의
안녕하세요! 궁금증이 생겨 문의 드립니다.common 공통 모듈은 서비스간 통신 데이터 구조를 표준화해서 통일성 있게 사용하기 위해서 사용한다고 이해하였습니다. 현재, 멀티모듈로 작성된 프로젝트라서 common 모듈을 작성된 것 같은데, 각각 독립적인 repository 로 운영된다면 이를 극복하기 위해 Nexus 같은 repository 에 관리하여 공통 dto 를 관리하는 방법은 어떤지 문의 드립니다. 적다 보니, 분산 환경에 대한 질문은 아니라서 죄송합니다...
-
해결됨38군데 합격 비법, 2025 코딩테스트 필수 알고리즘
링크드 리스트 원소 찾기 구현 방식 질문드립니다.
1. 현재 학습 진도몇 챕터/몇 강을 수강 중이신가요? 2-5어떤 알고리즘을 학습하고 계신가요? 링크드리스트여기까지 이해하신 내용은 무엇인가요? 파이썬의 클래스를 이용해서 링크드리스트 구현하기 2. 어려움을 겪는 부분어느 부분에서 막히셨나요? 원하는 원소찾기 구현 코드의 어떤 로직이 이해가 안 되시나요?어떤 개념이 헷갈리시나요? 3. 시도해보신 내용문제 해결을 위해 어떤 시도를 해보셨나요?원하는 원소를 찾는 것에 파이썬의 list를 사용했습니다.def get_node(self, index): cur = self.head node = [] while cur.next is not None: node.append(cur.data) cur = cur.next return print(node[index])파이썬의 list를 사용해서 원소를 찾아도 될까요?
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
6-L 문제 유형관련 질문
안녕하세요, 큰돌님 6-L 문제 해설을 보면서 궁금한 점이 생겨서 문의드립니다.이 문제가 이분탐색과 어떤 연관성이 있는건지 잘 이해가 안됩니다. 그리디 유형에 가까운 것 같은데 이 문제가 왜 이분탐색 섹션에 추가된 것인지 궁금합니다!
-
해결됨원클릭으로 AI가 생성해주는 Youtube 쇼츠 만들기 자동화(with n8n)
강사님과 아웃풋쪽에 결과내용이 달라요
컴플리트라고 뜨고 성공이라고 뜨지만 실제로 제대로 안넘아간것같아요 그래서 뒤에서 못받는걸로 나옵니다.
-
해결됨원클릭으로 AI가 생성해주는 Youtube 쇼츠 만들기 자동화(with n8n)
이미지 프롬프트가 3개이거나 4개만 구글스트로 넘어가져요
실행하면 이단게는 정상적으로 넘어갑니다. 근데 오른쪽에 저런식으로 경고와 널값이라고 뜨고 실제로 구글시트에는 이미지 프롬프트가 5개가 안나오고 4개이거나 3개인경우가있어요
-
미해결React Native with Expo: 제로초에게 제대로 배우기
.
.