전체 글

젠킨스란? 젠킨스는 오픈 소스 자동화 도구로, 지속적인 통합(CI)과 지속적인 배포(CD)를 지원합니다. 이를 통해 소프트웨어 개발 프로세스를 자동화하고, 빌드, 테스트 및 배포 등의 작업을 지속적으로 수행할 수 있습니다. 젠킨스는 빌드 및 테스트 프로세스를 자동화하고, 소스 코드 변경이 발생할 때마다 빌드 및 테스트 수행하고 이를 자동으로 통합합니다. 젠킨스의 동작 원리 소스 코드 변경 감지 젠킨스는 버전 관리 시스템(Git, SVN 등)과 연동하여, 소스 코드 변경을 감지합니다. 빌드 소스 코드 변경이 감지되면, 빌드를 수행합니다. 이때, 빌드 스크립트를 이용하면 소스 코드를 컴파일하고, 실행 가능한 형태로 변환합니다. 테스트 빌드가 완료되면, 테스트를 수행합니다. 이때, 자동화된 테스트를 수행하거나..
🔥해당 글은 프로젝트 팀원과 함께 프로젝트 퀄리티 및 더 나은 개발자가 되기 위하여 북 스터디를 진행하였습니다.
    ✏️[모던 자바 인 액션, 전문가를 위한 자바 8, 9, 10 기법 가이드] 스터디 관련 책 내용을 정리한 글입니다. 📌 이 장의 내용 스칼라 소개 자바와 스칼라의 관계 스칼라의 함수와 자바의 함수 비교 클래스와 트레이트 이 장에서는 스칼라 언어를 소개하고, 자바와 비교하며 함수형 프로그래밍의 다양한 기능을 살펴봅니다. 스칼라에서는 자바에 비해 더 다양하고 심화된 함수형 기능을 제공하며, 간결하고 가독성이 좋은 코드를 구현할 수 있다는 점을 확인할 수 있습니다. 이를 위해 스칼라로 간단한 프로그램을 구현하고 컬렉션을 다루는 방법, 함수, 클로저, 커링 등을 살펴보고, 인터페이스와 디폴트 메서드의 기능을 담당하는 트레이트라는 기능도 살펴봅니다. 20.1 스칼라 소개 이 절에서는 스칼라의 특징을 간단한 "H..
✏️[모던 자바 인 액션, 전문가를 위한 자바 8, 9, 10 기법 가이드] 스터디 관련 책 내용을 정리한 글입니다. 📌 이 장의 내용 일급 시민, 고차원 함수, 커링, 부분 적용 영속 자료구조 자바 스트림을 일반화하는 게으른 평가와 게으른 리스트 패턴 매칭, 자바에서 패턴 매칭을 흉내 내는 방법 참조 투명성과 캐싱 이 장에서는 고급 함수형 프로그래밍 기법을 다룹니다. 이론적 지식뿐 아니라 실무에서 적용 가능한 기술을 배울 수 있습니다. 다루는 내용으로는 고차 함수, 커링, 영구 자료구조, 게으른 리스트, 패턴 매칭, 참조 투명성을 이용한 캐싱, 콤비네이터 등이 있습니다. 19.1 함수는 모든 곳에 존재한다 함수형 언어 프로그래머는 함수를 값으로 취급할 수 있음을 의미하는 일급 함수 개념을 폭넓게 사용합..
✏️[모던 자바 인 액션, 전문가를 위한 자바 8, 9, 10 기법 가이드] 스터디 관련 책 내용을 정리한 글입니다. 📌 이 장의 내용 왜 함수형 프로그래밍을 사용하는가? 함수형 프로그래밍은 어떻게 정의하는가? 선언형 프로그래밍과 참조 투명성 함수형 스타일의 자바 구현 가이드라인 반복과 재귀 이 장에서는 함수형 프로그래밍이란 무엇인지 설명하고, 함수형 프로그래밍의 개념과 관련 용어를 살펴본 후, 함수형 프로그래밍이 제공하는 이점인 부작용, 불변성, 선언형 프로그래밍, 참조 투명성, 자바 8에서 제공하는 기능 등을 설명합니다. 그리고 고차원 함수, 커링, 영속 데이터 구조체, 게으른 리스트, 패턴 패칭, 콤비네이터 등 함수형 프로그래밍의 기법을 자세히 살펴봅니다. 18.1 시스템 구현과 유지보수 이 절에서..
✏️[모던 자바 인 액션, 전문가를 위한 자바 8, 9, 10 기법 가이드] 스터디 관련 책 내용을 정리한 글입니다. 📌 이 장의 내용
✏️[모던 자바 인 액션, 전문가를 위한 자바 8, 9, 10 기법 가이드] 스터디 관련 책 내용을 정리한 글입니다. 📌 이 장의 내용
보통의 개발자들은 HotSpot JVM을 주로 사용합니다. Java 언어와 함께 개발 및 배포되며, Java SE 개발 키트를 다운로드하면 HotSpot JVM이 자동으로 설치됩니다. HotSpot JVM의 주요 특징 HotSpot JVM은 말 그대로 Hot한 Spot을 찾아서 해당 부분에서는 JIT 컴파일러를 사용하는 방법이다. JIT 컴파일러 Hotspot JVM은 JIT(Just-In-Time) 컴파일러를 사용하여 바이트 코드를 런타임에 네이티브 코드로 변환합니다. 실행 시점에 코드를 컴파일하여 빠르게 실행할 수 있도록 최적화하는 기능을 제공합니다. 내부적으로 프로파일링을 통해 핫스팟을 찾아내고, 해당 부분에 대한 네이티브 코드를 생성한다. 네이티브 코드를 생성하는 방법에서 Client와 Serve..
JRE, JDK, JVM 소개 JRE JRE는 Java Runtime Environment의 약자로 자바 런타임 환경이라는 뜻입니다. JRE는 Java 프로그램을 실행하기 위해 필요한 환경을 제공하며, 이는 JVM과 Java 클래스 라이브러리를 포함하고 있습니다. JRE만 설치되어 있다면 Java 프로그램을 실행할 수 있지만, 개발은 할 수 없습니다. JDK JDK는 Java Development Kit의 약자로 자바 개발 키트라는 뜻입니다. JDK는 개발자가 Java 프로그램을 개발하기 위해 필요한 도구 모음입니다. 이는 JRE, Javac(자바 컴파일러), jar(라이브러리), jdb(디버깅), apt(애노테이션) 등 자바로 개발할 수 있도록 여러 기능들을 제공하는 역할을 합니다. JVM JVM은 J..
✏️[모던 자바 인 액션, 전문가를 위한 자바 8, 9, 10 기법 가이드] 스터디 관련 책 내용을 정리한 글입니다. 📌 이 장의 내용 Thread, Future, 자바가 풍부한 동시성 API를 제공하도록 강요하는 진화의 힘 비동기 API 동시 컴퓨팅의 박스와 채널 뷰 CompletableFuture 콤비네이터로 박스를 동적으로 연결 리액티브 프로그래밍용 자바 9 플로 API의 기초를 이루는 발행 구독 프로토콜 리액티브 프로그래밍과 리액티브 시스템 최근 소프트웨어 개발 방법에서는 멀티코어 프로세서를 활용한 병렬 처리 기술과 마이크로 서비스 아키텍처, 매시업 형태의 애플리케이션 개발이 주목되고 있습니다. 멀티태스크 프로그래밍의 양면성이 중요한 역할을 하며, 자바에서는 Future 인터페이스와 Complet..
규니95
Gyunny