묻고 답해요
160만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결김영한의 실전 자바 - 고급 3편, 람다, 스트림, 함수형 프로그래밍
9. 스트림 API3-컬렉터 오타?
p.18. 다운스트림 컬렉터부분에1.groupBy(Student::grade) 가 아니고1.groupingBy(Student::getGrade) 로 바뀌어야 되는거 아닌지요.오타인거 같습니다. record로 선언된 클래스가 아니어서요. p. 23 reducing 그림에서도 비슷한 오타가 보입니다.
-
해결됨프론트엔드 마스터클래스
배포 관련 내용 추가될 예정이 있을까요?
안녕하세요, 좋은 강의 잘 보고 있습니다.혹시 CDN 등 배포 관련 섹션이나 내용이 추가될 예정이 있을지 궁금합니다.
-
미해결김영한의 실전 자바 - 고급 3편, 람다, 스트림, 함수형 프로그래밍
(추석 챌린지) 복습 정리내용
[질문 내용]람다 (lambda)람다는 익명 함수이다. 따라서 이름 없이 함수를 표현한다.(매개변수) -> {본문}용어 - 람다 vs 람다식(Lambda Expression)람다 : 익명 함수를 지칭하는 일반적 용어. (개념)람다식 : (매개변수) → {본문} 형태로 람다를 구현하는 구체적인 문법 표현을 지칭람다도 익명 클래스처럼 클래스가 만들어지고, 인스턴스가 생성된다.함수형 인터페이스함수형 인터페이스는 정확히 하나의 추상메서드를 가지는 인터페이스를 말한다.람다는 추상 메서드가 하나인 함수형 인터페이스에만 할당할 수 있다.단일 추상 메서드를 줄여서 SAM(Single Abstract Method)라 한다.@FunctionalInterface를 통하여 함수형 인터페이스를 보장할 수 있다.추상 메서드가 추가되면 컴파일 오류 발생 !(Ex) @Override를 통해 재정의된 함수임을 알 수 있듯이.고차함수(Higher-Order Function)고차 함수란, 함수를 값처럼 다루는 함수를 뜻함함수를 인자로 받는 함수(메서드)함수를 반환하는 함수(메서드)기본 함수형 인터페이스다음은 자바가 기본으로 제공하는 대표적 함수형 인터페이스이다.Function : 입력 O, 반환 OConsumer : 입력 O, 반환 XSupplier : 입력 X, 반환 ORunnable : 입력 X, 반환 X특화 함수형 인터페이스Function으로 구현가능하나, 테스트 용도인 인터페이스라는 것을 명확히 하기 위해 사용Predicate : 입력 O, 반환 boolean조건 검사, 필터링 용도Operator (UnaryOperator, BinaryOperator) : 입력 O, 반환 O동일한 타입의 연산 수행, 입력과 같은 타입을 반환하는 연산 용도 추석 완강 챌린지 중 질문드리고 싶으나, 아직 완벽히 이해된 단계가 아니어서 부득이 복습하며 정리한 내용을 질문으로 작성했습니다. ㅠㅠ틀린 부분 있다면 지적 부탁드립니다!
-
미해결함수형 프로그래밍과 JavaScript ES6+
프론트엔드 실무에서 어떤때에 쓰이는지 궁금합니다
안녕하세요. 추석챌린지로 수강하고있어 미션으로 질문을 남기게되었습니다.함수형프로그래밍과 지연성 확장성… 의 중요성을 알게되긴했는데 실무에서 어떤때에 쓰일수있는지… 궁금합니다.
-
미해결김영한의 실전 자바 - 고급 3편, 람다, 스트림, 함수형 프로그래밍
스트림과 for문 질문
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]안녕하세요,스트림과 for문을 어느 경우에 선택해서 사용해야 할까요?실무에서 스트림과 for문을 기준이 없이 남발하게 되면 오히려 코드 품질이나 성능이 악화될 수 있나요?
-
미해결함수형 프로그래밍과 JavaScript ES6+
함수형 프로그래밍 심화 강의 자료 추천
좋은 강의 덕분에 함수형 프로그래밍에 더 관심을 가지게 됐습니다. 😊함수형 프로그래밍을 더 깊에 배우고 싶은데 추천해주실만한 책이나 강의가 있을까요?
-
해결됨프론트엔드 마스터클래스
학습자료는 따로 공유가 안되는건가요?
그 전까지는 크게 불편함이 없었는데 이번 장에 위에 설명이 건너뛰기가 돼서 놓치게 되네요. 다양한 학습자료 제공에 miro형식 파일이라고 강의 소개에 적혀있긴한데, 따로 첨부파일이나 링크는 등록이 안돼있는것 같아서요.
-
미해결김영한의 실전 자바 - 고급 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 메서드를 정의해 공통 로직을 담고, 특정 전략에서만 필요한 부분을 오버라이드하는 방식으로 해도 괜찮을지 궁금합니다.또는 인터페이스가 아닌 다른 방식으로 리팩토링하는 것이 더 적절할지 궁금합니다.
-
미해결김영한의 실전 자바 - 고급 3편, 람다, 스트림, 함수형 프로그래밍
실무에서의 커스텀 Collector 사례 여부
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]안녕하세요!현재 Stream API Collector 65강까지 수강 완료한 수강생입니다.먼저 강사님 덕분에 자바에 대해서 계속 공부하는 시간이 정말 즐겁니다! 감사합니다! 아래와 같은 질문 사항이 있어 남깁니다!실무에서 Collector를 직접 구현해야 하는 상황은 어떤 경우가 많나요?직접 Collector를 구현해야 하는 상황이 생긴다면 병렬 스트림에서도 안전하게 동작하도록 어떤 설계 포인트를 가장 중요하게 봐야 할까요? 다소 정답이 없는 질문이지만 방향성과 강사님의 생각이 궁금합니다! 😃감사합니다.
-
미해결김영한의 실전 자바 - 고급 3편, 람다, 스트림, 함수형 프로그래밍
IntelliJ 한글 깨지는 현상 문의
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]이전에 Spring MVC 강의에서는 한글이 잘 나왔었는데, Java 강의 시 설정을 잘 못 헀는지.. 추가 설정이 필요한건지,한글이 깨지는 현상이 있어서, 처리법이 따로 있는지 문의 드립니다.Java는 강의 따라하면서 21로 설정 한 상태입니다.
-
미해결김영한의 실전 자바 - 고급 3편, 람다, 스트림, 함수형 프로그래밍
함수형 프로그래밍 적용 범위/원칙
질문 1. 자바는 인터페이스와 클래스로 설계와 구현을 나눠 유지보수의 효율성을 높이는 언어인데, 함수형 프로그래밍은 언제 쓸까요? 실무에서 함수형을 적용하는 범위/원칙(불변, 부작용 분리 등)가 궁금합니다! 질문 2. stream vs for-loop 선택 기준이 궁금합니다. 가독성을 위해서 또는 단순 변환 및 집계일 때 이외에도 스트림을 사용하는지, 성능적으로는 어떤 것이 더 좋은지 등도 궁금합니다.
-
미해결코틀린 함수형 프로그래밍 - 입문편
git 업로드 가능한가요?
강의 들으며 학습하는 내용(강의 관련 코드)를 개인 git에 업로드 하여도 되나요?
-
미해결함수형 프로그래밍과 JavaScript ES6+
함수형 자바스크립트 프로그래밍 책
안녕하세요 강의 잘 보고 있습니다 🙂 멀티패러다임 프로그래밍 책을 최근에 보고 더 자바스크립트 근간을 공부할 필요가 있구나 싶어서 이 강의도 듣게 되었습니다. 다름이 아니라 '함수형 자바스크립트 프로그래밍'이라는 책도 출간이 되어 있는 걸로 알고 있는데, 혹시 강의와 같은 내용일까요?
-
해결됨프론트엔드 마스터클래스
이벤트 루프 실행 관련
저는 풀스택 주니어입니다.특수 목적을 위해 바닐라js에서 ,document.innerHTML이나 element.remove(), element.append() 등으로 html element의 생성과 삭제가 빈번한로직을 다루고 있습니다.이 때 종종 브라우저 렌더링의 실행 완료에 대해 명확하게 알지 못해서 찝찝한 채로 브라우저에 렌더링 일을 시키고 있습니다. 그러던 중 이벤트 루프 관련 3개 강의(16,17,18강) 를 듣고 복습차, 17강으로 다시 돌아와서 보는 2분18초 경에 브라우저 랜더링에 대해 궁금한게 생겼습니다. 예를 들면const mySchedule = async () => { await randeringPipelineTask(); //랜더링파이프라인 await macroTask(); // 매크로태스크(); }으로 구성된 mySchedule 메서드가 있다고 가정하겠습니다.macroTask()는 renderingPipelineTask()의 브라우저 페인트까지 모두 완료를 확인한 후에 실행될까요? 아니면 JS엔진이라는 것은, 페인트는 브라우저에 렌더링을 해달라고 부탁까지만하고 macroTask()를 실행할까요?('실행의 시작'과 '실행의 끝'을 나눠서 생각해서 그런지 생각하면 할수록 햇갈립니다.)
-
해결됨프론트엔드 마스터클래스
Map 강의 누락된 것 같습니다.
안녕하세요! 강의가 누락된 것 같아 글 작성합니다. 확인부탁드릴게요! 30강 Map 강의로부터 31강까진 문제없이 연결되는데, 32. WeakRef + FinalizationRegisty 강의시작부터 연결이 매끄럽지 못합니다. 뜬금없이 대안?에 대해서 나오는데 Map 예제부분과 WeakMap 부분이 누락된것같습니다.
-
해결됨김영한의 실전 자바 - 고급 3편, 람다, 스트림, 함수형 프로그래밍
스트림에 대해서 질문(float)은 사용하는지
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. 기본형 특화 스트림 을 공부 하다가 갑자기 float가 생각나서 질문을 드립니다. 저가 코드를 쳐보니 스트림을 이용해서 스트림<Float>을 만들 수 있다는 것을 확인하였습니다.현재 개발에서 float 및 스트림<Float>을 사용할까 입니다. double형도 있지만 float도 있어서 사용 할수 도 있겠다 싶어서요. 그래서 질문은현시점에서 스트림<Float>및 Float 를 만들어서 어느 정도 사용하는지 알고 싶습니다. 답변 부탁 드립니다.
-
미해결김영한의 실전 자바 - 고급 3편, 람다, 스트림, 함수형 프로그래밍
[자료 패키지 누락] 2.람다 자료에서 문제 패키지명 생략 (25page)
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 문제 2. 값매개변수화 - 다양한단위를매개변수로받기 ( 2. 람다 자료 25page)예시코드 부분에서 다른 문제에서는 패키지가 import 되어 있는 방면 25 page에 있는 예시문제에서는 package lambda.ex1; 없어서이렇게 남기게 되었습니다!
-
해결됨프론트엔드 마스터클래스
Variable Object 질문
안녕하세요, 좋은 강의 감사합니다.실행 컨텍스트 부분에서 궁금한 점이 있어서 질문드립니다. 강의에서 Variable Object를 설명해주셨는데, 제가 개인적으로 찾아본 자료들에서는 ES2015부터 실행 컨텍스트가 Lexical Environment, Variable Environment, this binding으로 구성된다고 나와 있더라고요.Variable Object는 그 이전 스펙에서 사용되던 용어인 것 같은데, 혹시 강의에서 이 개념을 선택해서 설명하신 특별한 교육적 의도가 있으셨을까요?제가 아직 깊이 이해하지 못해서 그런데, 두 방식 중 어떤 것이 JavaScript 동작 원리를 학습하는 데 더 도움이 되는지, 또는 어떤 차이점들이 있는지 알려주시면 감사하겠습니다.
-
미해결김영한의 실전 자바 - 고급 3편, 람다, 스트림, 함수형 프로그래밍
지연 평가
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]지연평가를 하는 이유 중 하나가 메서드 뒤의 괄호 부분에서 계산 등을 하면 먼저 즉시 평가되어 안 써도 되는 cpu의 사용량을 쓰게 한다고 하셨고,그를 개선하기 위해 람다를 매개변수로 설정하여 if문 안에서 get(apply 등)메서드를 실행 전까지 계산을 안하기 때문에 지연 평가하여 쓸 데 없는 cpu 낭비를 하지 않는다고 하셨습니다.여기서 궁금한게 메서드를 콜할 때 매개변수에 람다를 저장하는 것과 원시값이나 참조값을 저장하는 것 중 어떤게 더 메모리를 잡아먹나요?람다를 저장하는게 더 많이 잡아먹는다면 cpu 낭비와 비교했을 때 어느 것이 더 손해인지 알고싶습니다.
-
해결됨프론트엔드 마스터클래스
메모이제이션 뒷부분 짤린건가요?
103강 메모이제이션과 104강 가상화가 매끄럽게 이어지지 않고 끊긴 느낌이라 질문드립니다!