SlideShare una empresa de Scribd logo
1 de 27
Descargar para leer sin conexión
2020년 5월 30일
개발 이야기 특집(자바)
박재호(jrogue@gmail.com)
참고 자료
• <컴퓨터 vs 책> 블로그
• http://jhrogue.blogspot.com/
• OKdevTV 유튜브 방송
• 오늘 방송:
https://www.youtube.com/watch?v=tJBxmVLu0xI&list=PLdntWJk2t
JPKvRB0mSqC5tyKUv7HFtcqg&index=2
• 재미있는 개발 이야기 리스트:
https://www.youtube.com/playlist?list=PLdntWJk2tJPKvRB0mSqC5t
yKUv7HFtcqg
• 슬라이드 셰어
• https://www.slideshare.net/jrogue/presentations
오늘의 짤방
2020년 5월 23일 25주년
https://www.oracle.com/news/connect/25-years-of-java-technology-community-family.html
JetBrains가 사랑하는 자바의 25가지 특성
• https://blog.jetbrains.com/kr/2020/05/25-things-we-love-
about-java-ko/
호환성
• 25년 전 코드도 최신 JVM에서 수행 가능
성숙도
• 25년 동안 학교, 대학, 직장에서 자바 사용
• 공급업체, 비영리단체, 개인들이 문서화에 참여
• 코딩을 원하는 개발자들에게 수 많은 일거리 창출
지속적 개선
• 호환성 & 성숙도 vs 플랫폼 & 언어 발전
• 자바 9부터 6개월 주기로 신형 버전 출시
균형성
• 자바는 호환성과 미래 사이에서 균형을 맞춤
• 제거될 예정인 사용 중단 기능에 대한 경고 제공 + 해당 항목의 대체 기능 발
전
• 높은 안정성을 원하는 사람은 LTS를 계속 사용 vs 신형 기능을 원하는 사람
들은 최신 버전을 사용
표준
• Java EE/Jakarta EE/JDBC 등 개발자의 삶을 편하게 만들어줌
• Java 언어 사양, 자바 메모리 모델, JVM 등 자바 언어를 구체적으로
명세
작성은 한 번만, 실행은 어디서나
• WORA(Write Once, Run Anywhere)
• 클라우드 시절에는 가치가 다소 퇴색되었지만 여전히 이점을 활용
• IntelliJ IDEA조차도 데스크톱에서 WORA를 활용
성능
• 자바는 고성능
• 25년 동안 성능을 개선: 가비지 컬렉터, JIT → 금융업에서도 널리
사용되고 있음
관찰 가능성/관리
• JFR(Java Flight Recorder)와 Mission Control이 OpenJDK에 포
함(Java 11 이후)
• JMX를 사용해 애플리케이션을 동적으로 관리
JVM
• JVM은 자바 언어 자체와 별개로 구성
• 플랫폼 독립적
기타 JVM 상에서 동작하는 언어
• 코틀린(by JetBrains)
• Groovy, Scala, Clojure, Jruby
• 자바 간의 상호 운영성 보증
라이브러리/프레임워크
• Spring과 Spring Boot!
빌드 도구와 의존성 관리
• JAR 파일 배포에서 Maven/Gradle로 발전
JUnit과 자동화된 테스트
• 1997년에 JUnit 등장
• 2004년에 TestNG 등장
IDE
• IntelliJ!
• 정적 타입으로 인해 IDE에서 강력한 작업을 수행할 수 있음(예: 리팩
터링)
공동체
• 자바 공동체는 거대하고 성숙됨 → 사용자 그룹, 교육
개발팀
• 자바 세상의 거인들
Javadoc과 문서
• Javadoc은 API 문서를 언어의 핵심 부분을 만들고 있음
• 메소드 호출, 클래스/패키지 사용
오픈 소스
• OpenJDK
무료
• 오라클이 자바 11에서 라이선스/지원 변경 이후에도 무료로 계속 사
용 가능
객체지향적
• 자바는 처음부터 객체지향적인 언어로 설계
• 설계 패턴과 코딩 우수 사례
발전과 적응
• 람다 식, 불변 데이터 구조, 유형 추론 등 새로운 추세를 반영
가독성에 중점
• 자바 코드는 프로그래머가 아닌 사람도 읽게 만드는 경우가 많음
• 연산자 중복(Overload) 미지원
언어 기능
• 람다 식
• Streams API(w/ 람다 식)
• java.time
• Optional
• var(유형 추론)
• 접근 한정자/모듈
• switch 식
• 도움이 되는 NullPointerExceptions
• 어노테이션
• 검사된 예외

Más contenido relacionado

Más de Jay Park

(독서광) 책 vs 책: 코딩 테스트 합격자 되기 vs 파이썬 알고리즘 인터뷰
(독서광) 책 vs 책: 코딩 테스트 합격자 되기 vs 파이썬 알고리즘 인터뷰(독서광) 책 vs 책: 코딩 테스트 합격자 되기 vs 파이썬 알고리즘 인터뷰
(독서광) 책 vs 책: 코딩 테스트 합격자 되기 vs 파이썬 알고리즘 인터뷰Jay Park
 
(독서광) 테니스 이너 게임
(독서광) 테니스 이너 게임(독서광) 테니스 이너 게임
(독서광) 테니스 이너 게임Jay Park
 
(독서광) 인간 vs. AI 정규표현식 문제 풀이 대결
(독서광) 인간 vs. AI 정규표현식 문제 풀이 대결(독서광) 인간 vs. AI 정규표현식 문제 풀이 대결
(독서광) 인간 vs. AI 정규표현식 문제 풀이 대결Jay Park
 
(독서광) 모던 리눅스 교과서
(독서광) 모던 리눅스 교과서(독서광) 모던 리눅스 교과서
(독서광) 모던 리눅스 교과서Jay Park
 
(독서광) 상자 밖에 있는 사람
(독서광) 상자 밖에 있는 사람(독서광) 상자 밖에 있는 사람
(독서광) 상자 밖에 있는 사람Jay Park
 
(독서광) 자바 알고리즘 인터뷰 with 코틀린
(독서광) 자바 알고리즘 인터뷰 with 코틀린(독서광) 자바 알고리즘 인터뷰 with 코틀린
(독서광) 자바 알고리즘 인터뷰 with 코틀린Jay Park
 
(독서광) 리그 오브 레전드 플레이어 중심주의
(독서광) 리그 오브 레전드 플레이어 중심주의(독서광) 리그 오브 레전드 플레이어 중심주의
(독서광) 리그 오브 레전드 플레이어 중심주의Jay Park
 
(일상다반사) 2023년 구독자 3,000명 돌파 이벤트
(일상다반사) 2023년 구독자 3,000명 돌파 이벤트(일상다반사) 2023년 구독자 3,000명 돌파 이벤트
(일상다반사) 2023년 구독자 3,000명 돌파 이벤트Jay Park
 
(독서광) 오늘날 우리는 컴퓨터라 부른다
(독서광) 오늘날 우리는 컴퓨터라 부른다(독서광) 오늘날 우리는 컴퓨터라 부른다
(독서광) 오늘날 우리는 컴퓨터라 부른다Jay Park
 
(독서광) 사실은 이것도 디자인입니다
(독서광) 사실은 이것도 디자인입니다(독서광) 사실은 이것도 디자인입니다
(독서광) 사실은 이것도 디자인입니다Jay Park
 
(독서광) 프로덕트 매니지먼트
(독서광) 프로덕트 매니지먼트(독서광) 프로덕트 매니지먼트
(독서광) 프로덕트 매니지먼트Jay Park
 
(독서광) 슬기로운 파이썬 트릭
(독서광) 슬기로운 파이썬 트릭(독서광) 슬기로운 파이썬 트릭
(독서광) 슬기로운 파이썬 트릭Jay Park
 
(독서광) 유혹하는 글쓰기
(독서광) 유혹하는 글쓰기(독서광) 유혹하는 글쓰기
(독서광) 유혹하는 글쓰기Jay Park
 
(독서광) Docs for Developers 기술 문서 작성 완벽 가이드
(독서광) Docs for Developers 기술 문서 작성 완벽 가이드(독서광) Docs for Developers 기술 문서 작성 완벽 가이드
(독서광) Docs for Developers 기술 문서 작성 완벽 가이드Jay Park
 
(독서광) 개발자를 넘어 기술 리더로 가는 길
(독서광) 개발자를 넘어 기술 리더로 가는 길(독서광) 개발자를 넘어 기술 리더로 가는 길
(독서광) 개발자를 넘어 기술 리더로 가는 길Jay Park
 
(독서광) 필독! 개발자 온보딩 가이드
(독서광) 필독! 개발자 온보딩 가이드(독서광) 필독! 개발자 온보딩 가이드
(독서광) 필독! 개발자 온보딩 가이드Jay Park
 
(독서광) 인공지능 소프트웨어 품질 보증을 위한 테스트 기법
(독서광) 인공지능 소프트웨어  품질 보증을 위한 테스트 기법(독서광) 인공지능 소프트웨어  품질 보증을 위한 테스트 기법
(독서광) 인공지능 소프트웨어 품질 보증을 위한 테스트 기법Jay Park
 
(독서광) Node.js 백엔드 개발자 되기
(독서광) Node.js 백엔드 개발자 되기(독서광) Node.js 백엔드 개발자 되기
(독서광) Node.js 백엔드 개발자 되기Jay Park
 
(독서광) 싱크 어게인
(독서광) 싱크 어게인(독서광) 싱크 어게인
(독서광) 싱크 어게인Jay Park
 
(독서광) 면역
(독서광) 면역(독서광) 면역
(독서광) 면역Jay Park
 

Más de Jay Park (20)

(독서광) 책 vs 책: 코딩 테스트 합격자 되기 vs 파이썬 알고리즘 인터뷰
(독서광) 책 vs 책: 코딩 테스트 합격자 되기 vs 파이썬 알고리즘 인터뷰(독서광) 책 vs 책: 코딩 테스트 합격자 되기 vs 파이썬 알고리즘 인터뷰
(독서광) 책 vs 책: 코딩 테스트 합격자 되기 vs 파이썬 알고리즘 인터뷰
 
(독서광) 테니스 이너 게임
(독서광) 테니스 이너 게임(독서광) 테니스 이너 게임
(독서광) 테니스 이너 게임
 
(독서광) 인간 vs. AI 정규표현식 문제 풀이 대결
(독서광) 인간 vs. AI 정규표현식 문제 풀이 대결(독서광) 인간 vs. AI 정규표현식 문제 풀이 대결
(독서광) 인간 vs. AI 정규표현식 문제 풀이 대결
 
(독서광) 모던 리눅스 교과서
(독서광) 모던 리눅스 교과서(독서광) 모던 리눅스 교과서
(독서광) 모던 리눅스 교과서
 
(독서광) 상자 밖에 있는 사람
(독서광) 상자 밖에 있는 사람(독서광) 상자 밖에 있는 사람
(독서광) 상자 밖에 있는 사람
 
(독서광) 자바 알고리즘 인터뷰 with 코틀린
(독서광) 자바 알고리즘 인터뷰 with 코틀린(독서광) 자바 알고리즘 인터뷰 with 코틀린
(독서광) 자바 알고리즘 인터뷰 with 코틀린
 
(독서광) 리그 오브 레전드 플레이어 중심주의
(독서광) 리그 오브 레전드 플레이어 중심주의(독서광) 리그 오브 레전드 플레이어 중심주의
(독서광) 리그 오브 레전드 플레이어 중심주의
 
(일상다반사) 2023년 구독자 3,000명 돌파 이벤트
(일상다반사) 2023년 구독자 3,000명 돌파 이벤트(일상다반사) 2023년 구독자 3,000명 돌파 이벤트
(일상다반사) 2023년 구독자 3,000명 돌파 이벤트
 
(독서광) 오늘날 우리는 컴퓨터라 부른다
(독서광) 오늘날 우리는 컴퓨터라 부른다(독서광) 오늘날 우리는 컴퓨터라 부른다
(독서광) 오늘날 우리는 컴퓨터라 부른다
 
(독서광) 사실은 이것도 디자인입니다
(독서광) 사실은 이것도 디자인입니다(독서광) 사실은 이것도 디자인입니다
(독서광) 사실은 이것도 디자인입니다
 
(독서광) 프로덕트 매니지먼트
(독서광) 프로덕트 매니지먼트(독서광) 프로덕트 매니지먼트
(독서광) 프로덕트 매니지먼트
 
(독서광) 슬기로운 파이썬 트릭
(독서광) 슬기로운 파이썬 트릭(독서광) 슬기로운 파이썬 트릭
(독서광) 슬기로운 파이썬 트릭
 
(독서광) 유혹하는 글쓰기
(독서광) 유혹하는 글쓰기(독서광) 유혹하는 글쓰기
(독서광) 유혹하는 글쓰기
 
(독서광) Docs for Developers 기술 문서 작성 완벽 가이드
(독서광) Docs for Developers 기술 문서 작성 완벽 가이드(독서광) Docs for Developers 기술 문서 작성 완벽 가이드
(독서광) Docs for Developers 기술 문서 작성 완벽 가이드
 
(독서광) 개발자를 넘어 기술 리더로 가는 길
(독서광) 개발자를 넘어 기술 리더로 가는 길(독서광) 개발자를 넘어 기술 리더로 가는 길
(독서광) 개발자를 넘어 기술 리더로 가는 길
 
(독서광) 필독! 개발자 온보딩 가이드
(독서광) 필독! 개발자 온보딩 가이드(독서광) 필독! 개발자 온보딩 가이드
(독서광) 필독! 개발자 온보딩 가이드
 
(독서광) 인공지능 소프트웨어 품질 보증을 위한 테스트 기법
(독서광) 인공지능 소프트웨어  품질 보증을 위한 테스트 기법(독서광) 인공지능 소프트웨어  품질 보증을 위한 테스트 기법
(독서광) 인공지능 소프트웨어 품질 보증을 위한 테스트 기법
 
(독서광) Node.js 백엔드 개발자 되기
(독서광) Node.js 백엔드 개발자 되기(독서광) Node.js 백엔드 개발자 되기
(독서광) Node.js 백엔드 개발자 되기
 
(독서광) 싱크 어게인
(독서광) 싱크 어게인(독서광) 싱크 어게인
(독서광) 싱크 어게인
 
(독서광) 면역
(독서광) 면역(독서광) 면역
(독서광) 면역
 

2020년 5월 30일 개발 이야기 정리(자바 25주년 기념 특집)