inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

람다 궁금한 점

미해결

김영한의 실전 자바 - 고급 3편, 람다, 스트림, 함수형 프로그래밍

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요. 강의를 아직 다 듣지 못해서 뒤에 관련 내용이 나올 수도 있지만 궁금해서 질문드립니다. 같은 람다식이 여러번 실행될 때마다 새 인스턴스가 생성되는 건가요, 아니면 JVM이 내부적으로 같은 람다식을 한 번 생성해서 재사용하는 건가요? 감사합니다!

  • java
  • lambda
yyy 댓글 2 좋아요 0 조회수 111

스트림과 for문 질문

미해결

김영한의 실전 자바 - 고급 3편, 람다, 스트림, 함수형 프로그래밍

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요, 스트림과 for문을 어느 경우에 선택해서 사용해야 할까요? 실무에서 스트림과 for문을 기준이 없이 남발하게 되면 오히려 코드 품질이나 성능이 악화될 수 있나요?

  • java
  • 함수형-프로그래밍
  • lambda
  • optional
woo_ooni 댓글 1 좋아요 0 조회수 75

질문아닙니다ㅜㅜ

미해결

React Native with Expo: 제로초에게 제대로 배우기

질문은 아닌데..챌린지 미션에 질문하기가 있어서 쓰니까 신경쓰지 말아주세요... Link Share 공유 url은 components/Post.tsx에 있음 공식문서: share 부분 확인 ios에서는 url을 같이 넣어주면 좋고, 안드로이드에서는 title을 넣어주면 좋음 File Share expo-sharing 라이브러리 설치 후 사용 폰에 있는 파일을 다른 앱에 공유 가능 다른 앱에서 내 expo앱으로 공유하고 싶을 때 expo기본지원x Expo Share Extension이라는 외부 라이브러리를 따로 설치해서 사용해야 함 근데 npm run prebuild를 해야하는데, 이럼 expo-go에서 벗어나 native단을 건듦 한번 설치하면 못돌아옴

  • react
  • react-native
  • 하이브리드-앱
  • typescript
  • expo
이수민 댓글 1 좋아요 0 조회수 57

학습자료는 따로 공유가 안되는건가요?

해결됨

프론트엔드 마스터클래스

그 전까지는 크게 불편함이 없었는데 이번 장에 위에 설명이 건너뛰기가 돼서 놓치게 되네요. 다양한 학습자료 제공에 miro형식 파일이라고 강의 소개에 적혀있긴한데, 따로 첨부파일이나 링크는 등록이 안돼있는것 같아서요.

  • javascript
  • react
  • 함수형-프로그래밍
  • 객체지향
  • next.js
임영민 댓글 2 좋아요 0 조회수 236

디폴트 메서드를 사용한 리펙토링

미해결

김영한의 실전 자바 - 고급 3편, 람다, 스트림, 함수형 프로그래밍

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 안녕하세요! 최근 프로젝트를 진행하며 코드 구조를 정리하는 과정에서 궁금한 점이 생겨 질문드립니다. 현재 상황 PostStrategy 인터페이스를 만들고 3개의 구현체를 두어, 홈 피드에 게시글을 조회하는 전략을 분리했습니다. 인터페이스에는 homePosts() 관련 메서드가 여러 버전으로 존재합니다. ( homePosts , homePostsV2 , homePostsV3 등) public interface PostStrategy { boolean isExecutable(UserContext userContext); boolean requiresAuthentication(); PostSummaryResponse homePosts(int size, Long cursorPostId, String username); PostSummaryResponse homePostsV2(int size, Long cursorPostId, String username); PostSummaryResponse homePostsV3(int size, Long cursorPostId, UserContext userContext); ... } 문제 상황 구현체 중 ForYouPostStrategy 만 V2와 V3를 실제로 사용하고 있고, 나머지 구현체에서는 homePosts() 만 호출하는 식으로 처리하고 있습니다. 처음엔 단순했는데 버전이 늘어나면서 인터페이스가 점점 커지고 불필요한 코드가 많이 생긴 상황입니다. 궁금한 점 PostStrategy 인터페이스에 default 메서드를 정의해 공통 로직을 담고, 특정 전략에서만 필요한 부분을 오버라이드하는 방식으로 해도 괜찮을지 궁금합니다. 또는 인터페이스가 아닌 다른 방식으로 리팩토링하는 것이 더 적절할지 궁금합니다.

  • java
  • 함수형-프로그래밍
  • lambda
  • optional
zzwan 댓글 1 좋아요 0 조회수 83

실무에서의 커스텀 Collector 사례 여부

미해결

김영한의 실전 자바 - 고급 3편, 람다, 스트림, 함수형 프로그래밍

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 안녕하세요! 현재 Stream API Collector 65강까지 수강 완료한 수강생입니다. 먼저 강사님 덕분에 자바에 대해서 계속 공부하는 시간이 정말 즐겁니다! 감사합니다! 아래와 같은 질문 사항이 있어 남깁니다! 실무에서 Collector 를 직접 구현해야 하는 상황은 어떤 경우가 많나요? 직접 Collector 를 구현해야 하는 상황이 생긴다면 병렬 스트림에서도 안전하게 동작하도록 어떤 설계 포인트를 가장 중요하게 봐야 할까요? 다소 정답이 없는 질문이지만 방향성과 강사님의 생각이 궁금합니다! 😃 감사합니다.

  • java
  • 함수형-프로그래밍
  • lambda
  • optional
zbass 댓글 1 좋아요 0 조회수 89

query-string과 url파라미터 이름이 같은 경우는 어떻게 되나요?

미해결

한 입 크기로 잘라먹는 Next.js

안녕하세요 예를 들어서 book 디렉토리 밑에 [id.tsx] 을 만들고 /book/10?id=test 이런 형태로 넘긴다면 router.query의 값은 어떤 형태로 저장이 되나요?

  • react
  • typescript
  • next.js
  • 카카오공채-개발
qazwsxqaz 댓글 3 좋아요 0 조회수 133

Expo 강의 질문 (preview build?)

미해결

React Native with Expo: 제로초에게 제대로 배우기

혹시 ios나 android 네이티브 빌드해서 연동하는 방법도 해당 강의에서 진행하나요? 현재 25강을 듣고 있긴 한데... 들으면 들을수록 네이티브쪽도 건들어야하는 것 같아서 질문드립니다! 혹시나 해당 강의가 포함되어있으면 몇 강인지 말씀주실 수 있으신가요? 또... 스위프트, 코틀린 말고 자바나 오브젝티브씨도 같이 알아야하나요?

  • react
  • react-native
  • 하이브리드-앱
  • typescript
  • expo
0S 댓글 2 좋아요 0 조회수 79

리액트 개발자 도구 현업 사용 빈도

미해결

한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지

안녕하세요, 현재 Vue 2.0을 사용하고 있으며, React로 이직을 하고자 해당 강사님의 강의를 수강하고있습니다. 혹시 현업에서도 해당 도구를 많이 사용하는지 빈도가 궁금합니다. Vue를 사용하면서는 그러지아니하다보니 이것을 알고있는게 좋은지 파악이 안된다보니 쌩뚱한 질문을 드려 죄송합니다.

  • javascript
  • react
  • node.js
  • 카카오공채-개발
임스헝 댓글 2 좋아요 0 조회수 86

사진 촬영 후 갤러리 저장 시 권한 문제

미해결

React Native with Expo: 제로초에게 제대로 배우기

안녕하세요, 제로초님! 강의 잘 듣고 있습니다. 다름이 아니라 ImagePicker 로 카메라 사진 촬영 후 MediaLibrary 를 사용해서 갤러리에 저장할 때, 다음과 같은 에러가 발생합니다. 확인해보니 AUDIO 권한이 선언되지 않았다고 하는데, 아래와 같이 app.json 의 plugin 에 권한을 추가해도 동일한 에러가 발생합니다. { "expo": { // ... "plugins": [ // ... [ "expo-media-library", { "photosPermission": "Allow $(PRODUCT_NAME) to access your photos.", "savePhotosPermission": "Allow $(PRODUCT_NAME) to save photos.", "isAccessMediaLocationEnabled": true, "granularPermissions": ["audio", "photo"] } ] ], // ... } } 제로초님이 올려주신 코드를 그대로 복사 & 붙여넣기 해봐도 같은 문제가 발생하는데, 혹시 제가 놓친 부분이 있을까요...? 강의에서 다룬 부분의 코드와 package.json 첨부하겠습니다. import { FontAwesome, Ionicons } from '@expo/vector-icons'; import * as ImagePicker from 'expo-image-picker'; import * as Location from 'expo-location'; import * as MediaLibrary from 'expo-media-library'; import { useRouter } from 'expo-router'; import React, { useState } from 'react'; import { Alert, FlatList, Image, Linking, Pressable, StyleSheet, Text, TextInput, TouchableOpacity, View, } from 'react-native'; import { useSafeAreaInsets } from 'react-native-safe-area-context'; // ... export default function Modal() { // ... const canAddThread = (threads.at(-1)?.text.trim().length ?? 0) > 0 || (threads.at(-1)?.imageUris.length ?? 0) > 0; const canPost = threads.every( thread => thread.text.trim().length > 0 || thread.imageUris.length > 0, ); const removeThread = (id: string) => { setThreads(prevThreads => prevThreads.filter(thread => thread.id !== id), ); }; const pickImage = async (id: string) => { let { status } = await ImagePicker.requestMediaLibraryPermissionsAsync(); if (status !== 'granted') { Alert.alert( 'Permission not granted', 'Please grant camera roll permission to use this feature', [ { text: 'Open settings', onPress: () => { Linking.openSettings(); }, }, { text: 'Cancel', }, ], ); return; } let result = await ImagePicker.launchImageLibraryAsync({ mediaTypes: ['images', 'livePhotos', 'videos'], allowsMultipleSelection: true, selectionLimit: 5, }); console.log('image result:', result); if (result.canceled) return; setThreads(prevThreads => prevThreads.map(thread => thread.id === id ? { ...thread, imageUris: thread.imageUris.concat( result.assets?.map(asset => asset.uri) ?? [], ), } : thread, ), ); }; const takePhoto = async (id: string) => { let { status } = await ImagePicker.requestCameraPermissionsAsync(); if (status !== 'granted') { Alert.alert( 'Permission not granted', 'Please grant camera permission to use this feature', [ { text: 'Open settings', onPress: () => { Linking.openSettings(); }, }, { text: 'Cancel', }, ], ); return; } let result = await ImagePicker.launchCameraAsync({ mediaTypes: ['images', 'livePhotos', 'videos'], allowsMultipleSelection: true, selectionLimit: 5, }); console.log('camera result:', result); // MediaLibrary 권한 요청 및 사진 저장 status = (await MediaLibrary.requestPermissionsAsync()).status; if (status === 'granted' && result.assets?.[0].uri) { await MediaLibrary.saveToLibraryAsync(result.assets[0].uri); } if (result.canceled) return; setThreads(prevThreads => prevThreads.map(thread => thread.id === id ? { ...thread, imageUris: thread.imageUris.concat( result.assets?.map(asset => asset.uri) ?? [], ), } : thread, ), ); }; const removeImageFromThread = (id: string, uriToRemove: string) => { setThreads(prevThreads => prevThreads.map(thread => thread.id === id ? { ...thread, imageUris: thread.imageUris.filter( uri => uri !== uriToRemove, ), } : thread, ), ); }; // ... } { "name": "expo-threads-clone", "main": "expo-router/entry", "version": "1.0.0", "scripts": { "start": "expo start", "reset-project": "node ./scripts/reset-project.js", "android": "expo start --android", "ios": "expo start --ios", "web": "expo start --web", "lint": "expo lint" }, "dependencies": { "@expo/vector-icons": "^15.0.2", "@react-navigation/bottom-tabs": "^7.4.0", "@react-navigation/elements": "^2.6.3", "@react-navigation/native": "^7.1.8", "expo": "~54.0.12", "expo-blur": "~15.0.7", "expo-constants": "~18.0.9", "expo-dev-client": "~6.0.13", "expo-font": "~14.0.8", "expo-haptics": "~15.0.7", "expo-image": "~3.0.8", "expo-image-picker": "~17.0.8", "expo-linking": "~8.0.8", "expo-location": "~19.0.7", "expo-media-library": "~18.2.0", "expo-router": "~6.0.10", "expo-splash-screen": "~31.0.10", "expo-status-bar": "~3.0.8", "expo-symbols": "~1.0.7", "expo-system-ui": "~6.0.7", "expo-web-browser": "~15.0.8", "react": "19.1.0", "react-dom": "19.1.0", "react-native": "0.81.4", "react-native-gesture-handler": "~2.28.0", "react-native-reanimated": "~4.1.1", "react-native-safe-area-context": "~5.6.0", "react-native-screens": "~4.16.0", "react-native-web": "~0.21.0", "react-native-worklets": "0.5.1" }, "devDependencies": { "@types/react": "~19.1.0", "typescript": "~5.9.2", "eslint": "^9.25.0", "eslint-config-expo": "~10.0.0" }, "private": true }

  • react
  • react-native
  • 하이브리드-앱
  • typescript
  • expo
Sckroll 댓글 1 좋아요 0 조회수 124

강의에 언급된 영상 질문

미해결

Next.js 까보기: "쓸 줄 아는 개발자"에서 "알고 쓰는 개발자"로

안녕하세요! 좋은 강의 만들어주셔서 감사합니다 🙂 수업을 순서대로 보고 있는데, 지난 시간에 살펴봤다는 에러 정의가 담겨 있는 영상이 무엇인지 궁금합니다..! 커리큘럼 상으로는 이전 영상이 라우팅 관련된 것이라서 에러 관련 내용이 없었거든요.

  • react
  • typescript
  • next.js
Lofo 댓글 2 좋아요 0 조회수 91

IntelliJ 한글 깨지는 현상 문의

미해결

김영한의 실전 자바 - 고급 3편, 람다, 스트림, 함수형 프로그래밍

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 이전에 Spring MVC 강의에서는 한글이 잘 나왔었는데, Java 강의 시 설정을 잘 못 헀는지.. 추가 설정이 필요한건지, 한글이 깨지는 현상이 있어서, 처리법이 따로 있는지 문의 드립니다. Java는 강의 따라하면서 21로 설정 한 상태입니다.

  • java
  • 함수형-프로그래밍
  • lambda
  • optional
  • intellij
UJ 댓글 1 좋아요 0 조회수 262

추가 강의 주제 문의드립니다!

미해결

한 입 크기로 잘라먹는 Next.js

안녕하세요 정환님! 강의 정말 잘 듣고 있습니다. 설명이 이해하기 쉽게 정리되어 있어 큰 도움이 되었습니다. 혹시 앞으로 Next.js를 활용한 실무 프로젝트나 자바스크립트 심화 개념을 다루는 강의도 제작하실 계획이 있으실까요?

  • react
  • typescript
  • next.js
sujin kim 댓글 2 좋아요 0 조회수 52

실무 적용 관련해서 질문이 있습니다!

미해결

실무에 바로 적용하는 스토리북과 UI 테스트

강의를 듣고 실무에 어떻게 적용해볼수 있을까 생각하다보니 궁금한 점들이 있어서 질문 남깁니다! 규모가 큰 기업들에서는 Storybook을 어떤 구조로 관리하고 있나요? 소규모 팀에서는 "프로젝트 내부 세팅 후 나중에 분리" vs "처음부터 모노레포" 중 뭐가 더 현실적일까요? (초기 비용 vs 장기 유지보수 고려)

  • react
  • typescript
  • tailwindcss
  • storybook
  • ui-testing
dydgus0421 댓글 2 좋아요 0 조회수 101

sitemap 에 Pormise가 필요한 이유

미해결

손에 익는 Next.js - 블로그 만들기

5:53 부분에서 sitemap 에서 Promise가 필요하다 하셨는데 왜 필요한지 궁금합니다.

  • react
  • 블로그
  • next.js
gmldnjs0402 댓글 2 좋아요 0 조회수 95

private folders 와 전역 폴더

미해결

Next.js 완벽 마스터 (v15): 노션 기반 개발자 블로그 만들기 (with 커서AI)

프로젝트 개발 중에, src/components 폴더에 재사용할 것들을 만들어서 사용하는 것과, src/app/_components 를 사용하는 것을 배웠는데, 둘의 사용성 차이가 있나요? 굳이 이 두 기능을 둘 다 사용을 할 필요가 있을까요? 오히려 하나만 사용하는게 좋지 않나 싶었습니다. 반드시 분리를 해야만 하는 특별한 이유가 있어서 굳이 분리를 하게 되는 것일까요?

  • react
  • 블로그
  • next.js
  • cursor
  • cursorai
Junho 댓글 2 좋아요 0 조회수 110

가상환경 같은건 없나요?

해결됨

Supabase, Next 풀 스택 시작하기 (feat. 슈파베이스 OAuth, nextjs 14)

안녕하세요 리액트나 NextJS는 익숙하지 않아 질문드립니다. 파이썬을 쓸때는 가상환경을 만들어서 프로젝트 마다 관리를 하는데 NextJS는 각 프로젝트 폴더마다 관리가 되나요? 이것저것 하다가 실수하면 다 지우고 처음부터 다시 하는편이라서 파이썬 가상환경이 너무 마음에 들었는데 혹시 NextJS도 가능한가 궁금합니다. 잘 모르기 때문에 실수해서 패키지가 엉망이 된 경우가 많아서 걱정부터 되네요. 다들 기본적으로 잘하셔서 그런가 보통 강의를 들을때 이런 부분은 잘 안물어보시나봐요.

  • react
  • 클론코딩
  • next.js
  • supabase
히징징 댓글 3 좋아요 0 조회수 145

verify_token 함수의 네이밍에 대한 질문입니다

해결됨

React & FastAPI로 만드는 투표 커뮤니티 플랫폼: 결제 시스템으로 수익화까지!

안녕하세요! JWT 구현 중 verify_token 함수의 네이밍이 궁금합니다. app/core/jwt_handler.py def verify_token(token: str) -> int: payload = decode_token(token) return payload.get("uid") verify라는 이름은 보통 boolean을 반환할 것 같은데, 실제로는 uid(int)를 반환하고 있어서 조금 헷갈립니다. get_uid_from_token이나 extract_user_id 같은 이름이 더 명확하지 않을까요? 감사합니다!

  • react
  • mysql
  • docker
  • rest-api
  • FastAPI
고리오영감 댓글 2 좋아요 0 조회수 86

AI와 CSS 라이브러리의 궁합

해결됨

React 완벽 마스터: 기초 개념부터 린캔버스 프로젝트까지

안녕하세요. CSS 라이브러리에 대한 비교 설명까지 너무 감사합니다. 앞으로 AI Agent 를 활용한 코딩을 고려하고 있습니다. 이런 경우 더욱 적합한 CSS 라이브러리를 추천해 주실 수 있을까요? 예를 들어 저는 현재 Cursor AI를 이용하고 있습니다. 좋은 강의 감사합니다.

  • react
  • React-Context
  • react-router
  • tailwindcss
  • react-query
충전중 댓글 1 좋아요 0 조회수 146

CSR , SSR 의 수요 궁금증 질문

미해결

코드로 배우는 React 19 with 스프링부트 API서버

안녕하세요, 개인적으로 궁금한 게 있어서 질문드립니다. 요즘 React Router를 보면 SSR 프로젝트를 위한 프레임워크가 나오는 등, 서버 사이드 렌더링 환경을 지원하는 방향으로 발전하고 있는 것 같더라고요. 그래서 문득 궁금해졌는데, 요즘 시장에서는 CSR 방식의 수요가 많이 줄어드는 추세인가요? 아니면 여전히 CSR 중심의 프로젝트도 많은 편인가요? 현재는 CSR 기반으로 개발하고 있는데, 앞으로의 흐름을 생각하면 SSR 관련 기술도 공부해야 할지 고민 중입니다. 현업에서 체감하시는 부분이나 조언을 듣고 싶습니다

  • react
  • typescript
  • spring-boot
  • jpa
  • jwt
규행 댓글 2 좋아요 0 조회수 110

인기 태그

인프런 TOP Writers

주간 인기글