본문 바로가기

전체 글79

git이란? 이번 포스팅 주제는 git 입니다. 소프트웨어라는 것은 항상 다수의 사람들과 협업해서 만들어 진다고 생각합니다. 그러기 위해서 내가 담당하는 코드 영역을 남들과 분리하고 모두 공용해서 사용하는 외부 프로젝트 저장소의 필요성이 점점 높아졌습니다. 그렇기에 요즘 git과 github에 대한 개념과 사용법을 익히는 것이 매우 중요해 졌다고 생각합니다. 그래서 이번 포스팅에서는 git에 대한 간단한 개념과 구조에 대해 한번 살표보겠습니다. git 이란? git은 버전 관리 시스템(VCS) 입니다. VCS란 프로젝트의 변경 사항(파일들의 추가/수정/삭제)을 버전으로 관리해주는 역할을 합니다. git은 변경 사항을 commit 으로 저장하고 이것이 버전이 되는 것입니다. 이렇게 버전을 만들어서 관리해주면 이전의 상.. 2023. 8. 12.
모던 자바 인 액션 - 7장 - 병렬 데이터 처리와 성능 배울 내용 병렬 스트림으로 데이터를 병렬 처리 병렬 스트림의 성능 분석 포크/조인 프레임워크 Spliterator로 스트림 데이터 쪼개기 배웠던 내용 새로운 스트림 인터페이스를 이용해서 데이터 컬렉션을 선언형으로 제어하는 방법에 대해 배움 외부 반복 -> 내부 반복으로 바꾸면 네이티브 자바 라이브러리가 스트림 요소의 처리를 제어할 수 있음 그래서 자바 개발자들은 컬렉션 데이터 처리 속도를 높이려고 따로 고민할 필요 X 컴퓨터의 멀티 코어를 활용해서 파이프라인 연산을 실행할 수 있음 자바 7 에서는 컬렉션을 병렬로 처리하기 굉장히 까다로웠습니다. 간단한 병렬 처리 순서 데이터를 서브파트로 나누어서 각각의 스레드로 할당 자원에 대한 레이스 컨디션(race condition)이 발생하지 않도록 동기화 처리 마.. 2023. 8. 10.
JMH(Java Microbenchmark Harness) - Gradle을 통해 Benchmark 구현 이번 포스팅에서는 Gradle 빌드 도구를 사용해서 JMH 라이브러리를 다운받고 빌드해서 Benchmark를 구현해보려고 합니다. 환경 IDE: IntelliJ 2023.2 Gradle: gradle-8.2 plugin: id "me.champeau.jmh" version "0.7.1" Gradle 버전에 따른 plugin 확인 Gradle 버전에 따라 사용할 plugin을 적절히 골라주셔야 합니다. build.gradle plugins { id 'java' id "me.champeau.jmh" version "0.7.1" } plugins에 해당되는 Gradle 버전에 맞는 plugin을 골라주시면 됩니다. 참고로 0.6.0 이전의 플러그인 버전은 me.champeau.gradle.jmh플러그인 ID를.. 2023. 8. 8.
WslRegisterDistribution failed with error: 0x80370114 이번 포스팅은 wsl 설치중 발견한 error 메시지에 대해 알아본 내용을 정리한 것입니다. 에러 종류 Resolving Error: 0x80370114 The operation could not be started because a required feature is not installed. 해당 에러는 설치하려는 기능에 대해 현재 저의 pc 환경이 아직 제대로된 준비가 되지 않았음을 뜻합니다. 원인 원인은 windows 업데이트하면서 재부팅 후 설치 시 기능이 롤백되면서 가상머신 플랫폼 항목이 체크가 해제되는 오류가 있었던 것 같습니다. 해결방법 해결방법은 windows 기능 켜기/끄기 창을 띄워서 가상머신 플랫폼 항목을 활성화 시켜주는 것입니다. 제어판 -> 프로그램 -> windows 기능 켜기.. 2023. 8. 7.