오랜만에 책 한권을 읽게 되어서 책을 보고 느낀 것과 정리한 것을 공유 하려 합니다. "함께 자라기" 책은 여러 IT 유튜버 및 블로그에서 추천해주어서 읽어 보게 되었습니다. 책을 읽다 보니 내가 마주한 현재 상태와 비슷하게 고충을 느끼는 부분, 어떻게 개선 및 학습해야 하는지에 대해서 잘 정리되어 있었습니다. 전체 내용에 대한 부분을 정리할 순 없지만 핵심적으로 많은 것을 느낀 부분을 정리 해 두려고 합니다. * 자라기 1. 제자리걸음에서 벗어나기 우선 지루함을 느낄 때, 즉 실력이 비해 너무 쉬운 일을 하는 경우 이때는 a1, a2 두가지 전략을 쓸 수 있습니다. 1. 지루함을 느끼는 경우 : a1 실력 낮추기 작업의 난이도는 그대로 두고 실력을 낮추는 전략입니다. 팔과 다리에 모래주머니를 달고 운동..
SonarQube란? 다양한 프로그래밍 언어에서 버그, 코드 스멜, 보안 취약점을 발견할 수 있도록 코드 분석을 자동으로 해주는 정적 코드 분석 도구다. 중복 코드, 코딩 표준, 유닛 테스트, 코드 커버리지, 코드 복잡도, 주석, 버그 및 보안 취약점의 보고서를 제공해준다. 1. 설치에 앞서, SonarQube의 기반인 Java 설치를 먼저 진행한다. (이미 설치되어 있는 경우 생략한다.) sudo apt update sudo apt upgrade sodu apt install openjdk-17-jdk 2. SonarQube는 root 사용자로 실행하면 안되므로, 별도의 유저를 생성한다. sudo useradd -b /opt/sonarqube -s /bin/bash sonarqube 3. 커널 매개변수..
1. PostgreSQL 설치 최신 버전의 PostgreSQL 설치 명령어 sudo apt-get -y install postgresql 특정 버전의 PostgreSQL를 설치하려면 아래와 같이 작성한다. sudo apt-get -y install postgresql-14 2. PostgreSQL 명령어 postgresql 실행 sudo service postgresql start postgresql 상태 확인 sudo service postgresql status postgresql 종료 sudo service postgresql stop postgresql 접속 sudo -i -u postgres psql 3. 유저 및 데이터베이스 생성하기 유저 생성 create user master password..
1. 젠킨스(Jenkins)란? 모든 언어의 조합과 소스 코드 레포지토리에 대한 지속적인 통합(Continuous integration, CI)과 지속적 배포(continuous delivery, CD) 환경을 구축하기 위한 도구다. 빌드, 테스트, 배포 프로세스를 자동화하여 소프트웨어 품질과 개발 생산성을 높일 수 있다. Jenkins 설치1. apt 최신 버전 업데이트 sudo apt-get update 2. jdk 설치 sudo apt-get install openjdk-17-jdk 3. jenkins 저장소 key 다운로드 wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add - 4. sources.list에 추가..
공식 가이드 https://about.gitlab.com/install/#ubuntu Download and install GitLab Download, install and maintain your own GitLab instance with various installation packages and downloads for Linux, Kubernetes, Docker, Google Cloud and more. about.gitlab.com 1. 필수적인 의존성 라이브러리 설정 및 설치를 진행 sudo apt-get update sudo apt-get install -y curl openssh-server ca-certificates 2. 메일 발송을 위한 Postfix를 설치 (필수 아님) sud..
해당 책은 이론부분만 블로그에 적고, 소스적인 부분은 github을 통해 작성하여 url 공유를 하도록 하려고 한다. 2. 스프링 부트에서 테스트 코드를 작성하자 2.1 테스트 코드 소개 TDD와 단위 테스트(Unit Test)는 다른 이야기이다. TDD는 테스트가 주도하는 개발을 이야기한다. 테스트 코드를 먼저 작성하는 것부터 시작한다. 레드 그린 사이클 항상 실패하는 테스트를 먼저 작성하고(Red) 테스트가 통과하는 프로덕션 코드를 작성하고(Green) 테스트가 통과하면 프로덕션 코드를 리팩토링합니다(Refactor). 반면 단위 테스트는 TDD의 첫 번째 단계인 기능 단위의 테스트 코드를 작성하는 것을 이야기합니다. 테스트 코드를 작성함으로써 얻는 이점으로 다음과 같다. 단위 테스트는 개발단계 초기..