본문 바로가기

intellij27

[IntelliJ] Json Viewer 플러그인 설치 및 사용법 REST API를 통해 얻어온 JSON 데이터는 종종 한줄로 출력된다. 불필요한 공백 문자나 줄바꿈 문자를 최소화해서 전송되는 데이터의 양을 줄이기 위해서다. 이렇게하면 데이터의 양은 어느정도 줄어들지만 개발자가 리턴받은 데이터를 알아보기는 매우 불편해진다. 인텔리제이의 JSON 관련 플러그인 중에는 이런 불편함을 해결해주는 기능을 포함하는 경우가 많다. 그 중에 가장 간단한 형태인 Json Viewer 플러그인을 사용해보자. Json Viewer 플러그인 Settings > Plugins 에서 Json Viewer를 검색하자. Install 버튼을 눌러서 설치한다. View > Tool Windows > JSON Viewer 항목을 선택한다. 그러면 인텔리제이의 오른쪽에 JSON Viewer가 열린다... 2023. 4. 20.
[IntelliJ] Randomness 플러그인 설치 및 사용방법 프로젝트를 진행하면서 유닛 테스트를 작성해야하는 경우가 많다. 함수나 클래스의 기능을 테스트하기 위해 임의의 데이터를 사용하게 되는데, 임의의 데이터를 생성하는 작업은 귀찮다. 인텔리제이의 Randomness 플러그인은 코딩을하면서 자주 사용하는 Number, Strings, UUID 같은 랜덤 데이터 혹은 이 데이터들의 배열을 생성해준다. 코딩을 하면서 키보드 단축키를 이용해 랜덤 데이터를 쉽게 생성할 수 있어, 유닛 테스트를 쉽고 빠르게 작성할 수 있다. Randomness 플러그인 설치 'Randomness' 플러그인은 인텔리제이의 Plugins의 Marketplace에서 조회 및 설치할 수 있다. 인텔리제이 화면 상단의 IntelliJ IDEA > Settings > Plugins 화면으로 들어간.. 2023. 4. 20.
[IntelliJ] RoboPOJOGenerator 플러그인 설치 및 사용방법 Spring Boot에서 컨트롤러를 개발하는 경우 JSON 포맷으로 값을 받아 POJO(Plain Old Java Object) 객체에 저장하거나 Java 객체에 있는 값을 JSON 포맷으로 변환해서 응답으로 내어주는 경우가 많다. 이 때문에 값을 표현하는 JSON 포맷과 POJO 클래스 사이에 강한 연관성이 생기게 되는데, 필드의 추가, 제거, 변경이 있을 때마다 POJO 객체를 수정해야 한다. 문제는 설계된 JSON 포맷을 보고 POJO 클래스를 손으로 만드는 경우 매우 귀찮다는 것이다. 귀찮고 번거로운 단순반복 작업은 종종 휴먼 에러를 발생시키고, 소프트웨어에 버그를 만들기도 한다. 따라서 이런 작업은 되도록 자동화하는게 좋다. 인텔리제이의 플러그인 중에 RoboPOJOGenerator라는 플러그인.. 2023. 4. 19.
[IntelliJ] Indent Rainbow 플러그인 설치 및 사용법 파이썬 같은 언어는 인덴트(들여쓰기)가 프로그래밍 언어의 문법에 핵심적인 역할을 한다. 따라서 현재 작성중인 라인이 어느 레벨의 인덴트인지를 정확히 아는 것이 중요하다. 인덴트 레벨이 다르면 전혀 다른 동작을 하는 프로그램이 되어 버리기 때문이다. 인텔리제이나 파이참 같은 IDEA에서 이런 들여쓰기를 잘 관리해주긴하지만 한눈에 잘 안들어온다고 생각된다면 Indent Rainbow 플러그인을 써보자. Indent Rainbow 플러그인 설치 'Indent Rainbow' 플러그인은 인텔리제이의 Plugins 메뉴의 Marketplace에서 조회 및 설치할 수 있다. 인텔리제이 화면 상단의 IntelliJ IDEA > Settings > Plugins 화면으로 들어가자. 검색 창에 Indent Rainbow.. 2023. 4. 18.
[IntelliJ] Rainbow CSV 플러그인 설치 및 사용법 컴퓨터는 쉽게 알아볼 수 있지만 사람은 눈빠지는 포맷 중 하나가 CSV, TSV 같은 것들이다. 빽빽하게 연결되어 있는 데이터들이 콤마나 탭 문자같은 구분자(Delimiter)로 연결되어 있다. CSV, TSV 같은 포맷을 사람이 보기 좋은 형태로 표현해주는 플러그인이 있다. 여러 Rainbow 시리즈 중에 'Rainbow CSV'라는 플러그인이다. Rainbow CSV 플러그인 설치 'Rainbow CSV' 플러그인은 인텔리제이의 Plugins 메뉴의 Marketplace에서 조회 및 설치할 수 있다. 인텔리제이 화면 상단의 IntelliJ IDEA > Settings > Plugins 화면으로 들어가자. 검색 창에 Rainbow CSV를 입력하면 플러그인을 검색할 수 있다. Install 버튼을 눌러.. 2023. 4. 18.
[IntelliJ] Presentation Assistant 플러그인 설치 및 사용방법 코드를 작성하는 동안 개발자의 손은 대부분 키보드 위에 있다. 단축키가 없다면 코드를 입력하다가 IDE의 특정 기능을 실행하고 싶은 경우, 마우스로 손을 옮긴 후 마우스 포인터를 이동해 클릭을 해야한다. 별거 아닌 동작이지만 손을 움직여야하기 때문에 약간의 시간적 손실과 의식의 흐름이 방해를 받을 수 있다. 이 때문에 많은 IDE 들이 개발자들의 생산성 향상을 위해서 단축키를 제공한다. 인텔리제이도 마찬가지다. 다만 수 많은 기능과 그 기능에 매핑되어 있는 단축키들을 모두 외울 수는 없다. 이럴 때 사용하면 좋은게 'Presentation Assistant'라는 인텔리제이 플러그인이다. Presentation Assistant 플러그인은 인텔리제이의 기능이 실행될때마다 동일한 기능을 실행하기 위한 단축키.. 2023. 4. 15.
[IntelliJ] Rainbow Brackets 플러그인 설치 및 사용법 자바 언어는 코드 블럭을 구분하거나 연산자 우선순위를 조정하기 위해 괄호를 사용한다. 문제는 괄호가 굉장히 많이 사용되거나 코드 블럭이 페이지를 넘어가는 등의 상황이 오면 가독성이 매우 떨어진다는 점이다. 다음 코드를 보자. public class Main { public static void main(String[] args) { float result = (((1 + 2) / 3.0f) + 1 + (3.0f / (2 + 1))); long value = ((((((1+1)*2)+3)*4)+5)*6); System.out.println(result); System.out.println(value); } } 의도적으로 지저분한 수식을 만들어봤다. 이를 기본 IntelliJ 에디터로보면 이렇게 보인다. 이.. 2023. 4. 14.
[IntelliJ] Maven Helper 플러그인 설치 및 사용법 메이븐(Maven)은 여전히 가장 많이 사용되고 있는 빌드 시스템 중 하나다. 메이븐을 이용하여 자바 프로젝트에서 사용하는 라이브러리들을 쉽게 가져올 수 있고 프로젝트의 빌드, 테스트, 배포 등을 쉽고 직관적으로 관리할 수 있다. 하지만 메이븐 프로젝트의 가장 큰 단점은 의존성 충돌이다. 프로젝트에서 사용하는 서로 다른 두 라이브러리가 같은 라이브러리의 다른 버전을 사용할 경우 메이븐은 두 버전 중 하나만 선택해서 로드한다. 의존성 충돌(Dependency Conflict)이라는 이런 상황에 놓일 경우 운이 좋으면 두 버전이 호환되어 문제가 없겠지만, 운이 나쁘면 호환되지 않는 쪽에서 NoSuchMethodException이 발생하거나 아예 동작이 달라지는 경우도 발생한다. 메이븐 프로젝트를 관리하다보면.. 2023. 3. 17.
[IntelliJ] TODO, FIXME 같이 코드에 태그(Code Tag) 달기 IntelliJ에서는 소스코드에 몇 가지 태깅을 할 수 있다. 예를 들어, TODO 키워드를 추가하면 그 코드 부분에서 해야할 작업들을 써넣을 수 있다. FIXME 역시 마찬가지다. 이런 태그를 입력하면 소스코드가 노란색으로 표시되면서 태그를 넣을 수 있다. IntelliJ는 TODO와 FIXME를 기본으로 제공하는데 사용자가 이런 태그를 추가할 수도 있다. 코드 태그 추가 [Settings] 창을 연다. [Editor] 설정으로 들어가서 'TODO' 항목을 선택하면 현재 등록되어 있는 TODO 패턴을 볼 수 있다. 지금은 todo와 fixme라는 단어가 등록되어 있다. 오른쪽에 있는 + 버튼을 누르면 새로운 패턴을 추가할 수 있다. 코드리뷰할 때 주목해봐야 할 내용들을 추가하기 위해서 'COMMENT'.. 2023. 1. 11.