You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
스트림 사용, 메서드 참조 등 IDE(intelliJ)의 자동완성 기능이 없이 자연스럽게 스트림을 작성할 수 있는지? -> NO
2. 미루다가 발등에 불 떨어진 현실
회사에서 새로운 프로젝트 유지보수를 하게 됨
그런데 WebFlux가 ....
리액티브 프로그래밍의 특징으로는 현재 익숙한 명령형 프로그래밍이 아닌 선언형 프로그래밍
In computing, reactive programming is a declarative programming paradigm concerned with data streams and the propagation of change
기본적으로 스프링에서 사용중인 리액티브 스트림즈 구현체인 Project Reactor 뿐만 아니라 다른 구현체 또한 선언형 프로그래밍으로 작성
Java 에서 선언형 프로그래밍 작성을 위해서는 람다, 스트림 개념이 필수!
3. 호기심
스트림을 이용하면 골치 아픈 병렬 처리를 해결할 수 있어
데이터가 언제 얼마나 쓰일지를 미리 알 수 없는 경우가 많은데 스트림의 lazy evaluation (지연 연산) 으로 인해 필요한 경우 연산을 하여 자원 낭비를 줄일 수 있어
위와 같은 이야기를 들은 경험이 있는데 어떤 이유로 이러한지 알고 싶음
목표
현재 회사에서 사용 중인 WebFlux 기술을 이해하기 위해 리액티브 프로그래밍을 알아야 함
리액티브 프로그래밍에 대해 알고 싶고, 리액티브 프로그래밍을 하기 위해 알아야 할 Java 8 ver 이후 개념을 학습하고 싶음 (특히 스프링에서 기존 MVC 방식이 아닌 스프링 5.x 버전 부터 지원하는 Reactive Programming 을 하기 위해 필요한 지식들)
위에서 언급한 호기심을 해결하고 싶음
Chapter 1을 읽은 후 회고
1.2.5 자바가 진화해야하는 이유 부분에서 사실 이번 스터디를 하는 동기, 목표가 더욱 확실해 졌음
Java는 파라미터로 메서드를 넘길 수 없는 (메서드가 일급이 아닌) 문제로 인해 일급 함수의 특징을 가진 다른 프로그래밍 언어로 돌아설 사용자를 막기 위해 익명클래스, 람다, 메서드 참조가 생겨남
컴파일 시점에서 타입 에러를 잡기 위해 제네릭이 생겨남
고전적 객체지향을 넘어서 함수형 프로그래밍을 자바에서 도입하기 위해 특히 Java 8에서 많은 변화가 생김 언어는 하드웨어나 프로그래머 기대의 변화에 부응하는 방향으로 변화해야 함!
프로그래밍 언어 또한 시간이 지나며 기술적 변화에 맞추기 위해, 다른 경쟁 언어에 뒤쳐져 사용자를 잃지 않기 위해 계속해서 변화한다.
프로그래밍 언어도 살아남기 위해 변화하는데, Java를 사용하는 개발자로써 Java17, 20이 나온 시점에서 아직까지 Java 8 버전 이후 나온 개념을 잘 모른다는 것이 뒤쳐지고 있다고 생각하였음
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
[CHAPTER 1] - 자바 8, 9, 10, 11 : 무슨 일이 일어나고 있는가?
어떠한 것을 배울 거야
라는 소개글로 이번 chapter는 정리보다는 스터디를 진행하기전 동기, 목표, chapter 1을 읽고난 이후 느낀점 위주로 작성하겠습니다.목차
동기
1. 언제까지 미룰꺼야...
람다
,스트림
을 접했을 때2. 미루다가 발등에 불 떨어진 현실
3. 호기심
스트림을 이용하면 골치 아픈 병렬 처리를 해결할 수 있어
데이터가 언제 얼마나 쓰일지를 미리 알 수 없는 경우가 많은데 스트림의 lazy evaluation (지연 연산) 으로 인해 필요한 경우 연산을 하여 자원 낭비를 줄일 수 있어
목표
Chapter 1을 읽은 후 회고
1.2.5 자바가 진화해야하는 이유
부분에서 사실 이번 스터디를 하는 동기, 목표가 더욱 확실해 졌음Java는 파라미터로 메서드를 넘길 수 없는 (메서드가 일급이 아닌) 문제로 인해 일급 함수의 특징을 가진 다른 프로그래밍 언어로 돌아설 사용자를 막기 위해 익명클래스, 람다, 메서드 참조가 생겨남
컴파일 시점에서 타입 에러를 잡기 위해 제네릭이 생겨남
고전적 객체지향을 넘어서 함수형 프로그래밍을 자바에서 도입하기 위해 특히 Java 8에서 많은 변화가 생김
언어는 하드웨어나 프로그래머 기대의 변화에 부응하는 방향으로 변화해야 함!
프로그래밍 언어 또한 시간이 지나며 기술적 변화에 맞추기 위해, 다른 경쟁 언어에 뒤쳐져 사용자를 잃지 않기 위해 계속해서 변화한다.
프로그래밍 언어도 살아남기 위해 변화하는데, Java를 사용하는 개발자로써 Java17, 20이 나온 시점에서 아직까지 Java 8 버전 이후 나온 개념을 잘 모른다는 것이 뒤쳐지고 있다고 생각하였음
이번 스터디를 통해 나 또한 Java 처럼 계속 배우며 변화해 가야겠다고 느낌
Beta Was this translation helpful? Give feedback.
All reactions