Skip to content

modern java in action을 기반으로 한 스터디 레포입니다.

License

Notifications You must be signed in to change notification settings

speculatingwook/java-8-study

Repository files navigation

☕ java8 study ☕

이 스터디는 사용법을 익숙하게 만드는 것을 우선으로 합니다. 이후 이론이나 자세한 내용은 여유가 있다면 정리해봐요!

📚 사용 교재

  • 모던 액션 인 자바
  • 추가 교재 사용 고려중

🚀 미션 진행 방법

  • build.gradle을 참고하여 환경 설정은 스스로 찾아서 한다.
  • 미션을 시작할 때, 해당 기수(앞년도만) + 자신의 영문 이름으로 브랜치를 파고(예: 24YoonByungWook), 해당 레포에 브랜치를 생성한다.
  • main 브랜치는 절대 건들지 말아주세요!!
  • 이후 fork하여 개인 브랜치에서 작업한다.(fork할때, 모든 브랜치를 fork한다!) 미션을 마치면 해당 레포로 병합 요청한다.
  • 리뷰 후 병합할 예정입니다!

  • 예시
git status
- On branch main
git branch 24YoonByungWook
git checkout 24YoonByungWook
git push origin 24YoonByungWook
// 이후 fork하여 개인 레포에서 미션 진행

1. 람다표현식 / Stream 익숙해지기

  • lambda 디렉토리를 확인해보자.

미션

요구사항

참고
  • 모던 자바 인 액션
    • chapter 3 람다 표현식
    • chapter 4 스트림 소개
    • chapter 5 스트림 활용
    • chapter 6 스트림으로 데이터 수집


2. Optional 클래스

미션

참고
  • 모던 자바 인 액션
    • chapter 11 null 대신 Optional 클래스

요구사항

  • JDK 8 이상을 사용합니다.


3. 함수형 프로그래밍과 자바

  • 이 파트는 미션이 없습니다!
참고
  • 모던 자바 인 액션
    • chapter 18 함수형 관점으로 생각하기
    • chapter 19 함수형 프로그래밍 기법
    • chapter 20 OOP와 FP의 조화 : 자바와 스칼라 비교


4. 병렬 데이터 처리 알아보기: 아직 미정

parallel 디렉토리를 확인해보자.

Stream 성능 측정 툴 JMH

<아직 제작중>

  • 인텔리제이 extension 설치(선택)
  • 다음 링크 참고
  • 해당 프로젝트 디렉토리 가서 다음 명령어 실행
gradle jmh


5. 리팩토링, 테스팅, 디버깅



6. 자바 동시성 프로그래밍

About

modern java in action을 기반으로 한 스터디 레포입니다.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages