본문 바로가기

Tools77

[Git] 좋은 커밋 메시지를 작성하기 위한 규칙 협업을 잘 하는 개발자가 되려면 커밋 메시지 작성에 관심을 기울여야 한다. 잘 작성된 커밋 메시지는 코드 변경에 대한 컨텍스트를 담고 있어 다른 개발자(혹은 미래의 나)가 코드 변경에 대한 내용을 쉽게 이해할 수 있도록 도와준다. 따라서 좋은 협업자라면 커밋 메시지를 잘 써야 한다. 좋은 커밋 메시지를 작성하기 위해서 알고 있으면 좋은 규칙은 다음과 같다. 제목과 본문 사이에 빈 줄 하나를 사용하라 제목은 50자로 제한하라 제목은 대문자로 시작하라 제목은 마침표로 끝내지마라 제목은 명령형으로 써라 본문의 한줄은 72자 이내로 제한하라 본문에서는 어떻게(How)보다 무엇(What)과 왜(Why)를 설명하라. 규칙 1. 제목과 본문 사이에 빈 줄 하나를 사용하라 원래 깃의 커밋 메시지에서는 제목과 본문을 구.. 2023. 12. 30.
[IntelliJ] PlantUML Integration 플러그인 설치 및 사용법 소프트웨어 개발에 있어 문서화의 중요성은 매번 강조된다. 그 중에 UML(Unified Modeling Language) 다이어그램은 가장 많이 사용되는 도구 중 하나다. PlantUML은 텍스트만으로도 UML 다이어그램을 그릴 수 있게 도와주는 오픈소스 소프트웨어다. 인텔리제이에는 PlantUML을 이용해 UML 다이어그램을 그릴 수 있는 PlantUML Integration 플러그인이 있다. PlantUML Integration 플러그인 설치 Settings > Plugins > Marketplace 에서 PlantUML Integration을 검색하자. Install 버튼을 눌러 설치한 후 인텔리제이를 재시작하자. PlantUML Integration 사용법 이제 인텔리제이에서 새로운 파일을 생성할.. 2023. 4. 30.
[IntelliJ] Saving Actions 플러그인 설치 및 사용법 - Actions on Save 기능 인텔리제이를 이용해 소스코드를 편집하다가 파일을 저장하게 되면 수정 내용이 디스크에 반영되어 영구 저장된다. 인텔리제이에는 파일이 저장될 때 어떤 작업을 동시에 수행하도록 설정할 수 있는 플러그인이 있다. 바로 Saving Actions 플러그인이다. Saving Actions 플러그인을 이용해 파일이 저장될 때, 불필요한 import 문 최적화나 코드 재정렬, 저장된 포맷으로 코드를 포매팅하는 등의 작업을 할 수 있다. 의식적으로 기능을 수행하는게 아닌 파일이 저장될 때 자동으로 수행되기 때문에 여러모로 편하다. Saving Actions 플러그인 설치 - 구버전 구버전 인텔리제이의 경우 인텔리제이의 Settings > Plugins > Marketplace에서 Saving Actions를 검색한다. .. 2023. 4. 29.
[IntelliJ] SonarLint 플러그인 설치 및 사용법 정적 코드 분석(Static Program Analysis)은 프로그램의 실행없이 소스코드나 오브젝트 파일을 통해 소프트웨어를 분석하는 것을 말한다. 소스코드에 숨어있는 잠재적인 버그, 구조적인 문제, 코드스멜을 찾아 버그를 줄이는데 도움이 된다. 인텔리제이에는 SonarLint라는 플러그인이 있는데 SonarQube라는 프로젝트를 기반으로 만든 정적 코드 분석 플러그인이다. SonarQube는 별도의 서버가 필요하다. 젠킨스 팜 같은 것과 연동해 프로젝트 전체에 대한 정적검사를 할 수 있다는 장점이 있지만 SonarQube만을 위한 환경을 구축하는게 다소 귀찮다. 또 한, 커밋 이후 PR 단계까지 넘어가야 분석이 가능하기 때문에 정적 분석의 피드백을 반영하는데에 다소 시간이 걸리기도 한다. SonarL.. 2023. 4. 28.
[IntelliJ] GitToolBox 플러그인 설치 및 사용법 여러 프로그래머가 함께 개발하는 프로젝트의 경우 git을 이용해 버전관리를 하는 경우가 많다. 특정 소스코드를 누가 언제 수정했으며, 수정 내용은 무엇인지 어떻게 바꿨는지를 커밋 로그를 통해 알 수 있다. 인텔리제이는 git 기능을 제공하고 있는데, 인텔리제이가 제공하는 git 기능에 더불어 조금 더 편리한 기능을 제공하는 플러그인을 소개하고자한다. 바로 GitToolBox 플러그인이다. GitToolBox 설치 Settings > Plugins > Marketplace에서 GitToolBox를 검색한다. Install 버튼을 눌러서 플러그인을 설치한다. 그리고 인텔리제이를 재시작하면 GitToolBox 플러그인이 적용된다. GitToolBox 플러그인이 적용되면 소스코드 에디터의 커서가 있는 부분에 해.. 2023. 4. 27.
[IntelliJ] String Manipulation 설치 및 사용법 인텔리제이에서 문자열을 조작하는데 최적화된 플러그인을 사용할 수 있다. String Manipulation 플러그인을 사용하면 프로그래밍을 하면서 필요한 문자열 조작 상황을 쉽게 해결할 수 있다. 예를 들어 여러 문자열을 일괄 조작한다던지, 문자열을 대문자 혹은 소문자로 변경하거나 카멜케이스나 스네이크 케이스로변경하는 등의 작업을 쉽게할 수 있다. String Manipulation 설치 Settings > Plugins의 Marketplace 탭에서 String Manipulation을 검색한다. Install 버튼을 눌러서 설치한다. 별도의 재시작은 필요하지 않다. String Manipulation 사용법 - Switch Case 변수 이름의 표기법을 간편하게 변경할 수 있다. 코딩 컨벤션에 따라 .. 2023. 4. 26.
[IntelliJ] Key Promoter X 플러그인 설치 및 사용법 인텔리제이 같은 IDE를 많이 사용하다보면 자주 사용하는 기능들은 마우스 클릭 대신 단축키를 사용하게 된다. 키보드에 양손이 올려져있다가 특정 기능을 실행하기 위해 마우스로 손이 옮겨가면 시간이 좀 더 걸릴 뿐만아니라 집중력이 흐려지기도 한다. 따라서 자주 사용하는 기능들은 최대한 단축키를 사용하면 좋다. 인텔리제이의 Key Promoter X 플러그인은 사용자가 단축키를 사용할 수 있도록 도움을 주는 플러그인이다. 인텔리제이에서 사용자가 어떤 액션을 하면, 그 액션을 어떤 단축키로 대체할 수 있는지 알려준다. 자주 사용하는 동작인데 인텔리제이의 단축키로 설정되어 있지 않다면 새 단축키를 만들어보라고 권유하기도 한다. Key Promoter X 설치 Settings > Plugins > Marketpla.. 2023. 4. 25.
[IntelliJ] Shifter 플러그인 설치 및 사용법 프로그래밍을 하다보면 소스코드의 일부를 바꾸는 일정한 패턴이 있다. 예를 들어 public 접근 제어자를 private으로 바꾼다던가 boolean 값을 false에서 true 바꾸는 등의 수정 작업은 매우 빈번하다. 이런 패턴의 수정을 단축키 한 번으로 할 수 있게 만들어주는 플러그인이 있다. 바로 Shifter 플러그인이다. Shifter 플러그인 설치 Settings > Plugins 에서 Shifter를 검색한다. Install 버튼을 눌러서 설치한다. Shifter 사용법 Shifter의 사용법은 간단하다. 소스코드 에디터 창에서 코드의 일부분을 드래그해서 블록으로 지정한 다음 Shift Up 혹은 Shift Down 단축키를 누르면 된다. Shift Up/Down 단축키는 다음과 같다. Ctr.. 2023. 4. 24.
[IntelliJ] Grep Console 플러그인 설치 및 사용법 인텔리제이를 이용해 테스트 케이스를 돌리는 등 콘솔 창에서 로그를 분석해야하는 경우가 있다. 콘솔 창으로 쏟아지는 로그를 인텔리제이의 작은 창을 통해 분석하다보면 로그가 한눈에 들어오지 않는 불편함을 경험하게 된다. 인텔리제이의 'Grep Console'이라는 플러그인을 이용하면 이런 불편함을 조금이나마 줄일 수 있다. Grep Console 플러그인은 인텔리제이의 콘솔에 표시되는 정보를 좀 더 유용하게 볼 수 있도록 도와주는 플러그인이다. Grep Console 플러그인 설치 Settings > Plugins 로 들어가서 Marketplace에 Grep Console을 검색하자. Install 버튼을 눌러 설치해준다. 설치가 완료되면 인텔리제이를 재시작 해준다. Grep Console - 하이라이트 G.. 2023. 4. 23.