[TIP] IntelliJ 자주 쓰는 코드를 템플릿 정의 Live Templates🍯 꿀팁2024. 7. 1. 09:05
Table of Contents
1. IntelliJ Live Templates 란? 🤔
IntelliJ Live Templates : IntelliJ의 Live Templates는 자주 사용하는 '코드 패턴'을 빠르게 삽입할 수 있는 기능입니다.
사용자가 미리 설정한 키워드를 입력하면, 정의된 코드 조각이 자동으로 삽입되어 반복적인 코딩을 줄이고 개발 시간을 단축할 수 있습니다. 이를 통해 효율적으로 일관된 코딩 스타일을 유지할 수 있습니다.
- Live Templates 미사용 / 사용 예시 (Junit 5 테스트 코드 작성)
예시처럼 동일한 코드 작성이지만, 매우 효율적으로 '코드 패턴'을 정의할 수 있는 기능입니다.
테스트 코드를 작성할 때, 위와 같이 매번 똑같은 코드 패턴을 입력하는 것을 간소화해 'tdd' 입력만으로도 구성할 수 있습니다.
2. IntelliJ Live Templates 생성 ⚙️
- (MAC) IntelliJ IDEA -> Settings 설정 창
- (MAC) 검색에 'Live Templates' 검색
- 또는, Editor -> Live Templates 선택
- '+' 버튼 클릭 후 Template Group 클릭 (기존 정의된 그룹에 생성하셔도 됩니다.)
- 사용자 원하는 그룹 이름 입력
- 생성된 그룹 선택 후 '+' -> Live Template 클릭
- 새로운 Template 생성되었을 시 성공 🎉
3. IntelliJ Live Templates 세부 설정 ⚙️
3 - 1. Abbreviation, Description
- Abbreviation : 템플릿 키워드 설정 (ex : 'tdd' 설정 후 tdd 입력 시 설정한 코드 패턴 표시)
- Description : 템플릿 설명
3 - 2. Template text
// $CLASS_NAME$
@org.junit.jupiter.api.Test
void $NAME$() {
// given
$END$
// when
// then
org.assertj.core.api.Assertions.assertThat();
}
- Template text : 키워드 입력 후 표현되는 코드 패턴
- $VAR$ : 사용자 정의 변수 (ex : $CLASS_NAME$, $NAME$) + '3-3' 파트에 추가 설명
- $END$ : 삽입 후 커서가 위치할 최종 위치
3 - 3. Edit Variables...
- Name : 'Template text' 에서 정의했던 $VAR$ 변수 이름
- Expression : 변수의 값을 동적으로 내장 함수나 사용자 정의 표현식으로 사용
- Default value : 변수에 기본적으로 할당될 값
- Skip if defined
- 활성화 : 변수 설정 부분을 건너뛴다.
- 비활성화 : 변수 설정 부분을 체크한다.
- 예시 자료 설명
- $CLASS_NAME$
- Expression에 className() 메서드 사용. 현재 클래스인 'TestClass' 명으로 표시
- Skip if defined 활성화로 설정을 패스
- $NAME$
- Defalut value 값을 "name" 설정해 기본으로 코드 패턴 생성
- Skip if defined 비활성화로 설정을 체크
- $CLASS_NAME$
3 - 4. Options
- Expand with : 키워드 입력 후 템플릿 적용 키
- Reformat according to style : 코드의 들여쓰기, 공백 등을 자동으로 조절
- Shorten FQ names : 선언문을 자동으로 축약하여 import 문으로 추가
- ex :@org.junit.jupiter.api.Test -> @Test
- Use static import if possible : static 메소드나 필드를 static import로 가져오게 해주는 기능
- ex : Assertions.assertThat() -> assertThat()
3 - 5. Define 코드 작성 환경 설정
- Define : 템플릿을 활성화하여 특정 컨텍스트(코드 작성 환경)를 지정하는 기능
- Java (다양한 환경이 존재하지만, 현 포스팅에서는 Java로 소개하겠습니다)
- Statement : 메서드 내부나 다른 실행 블록 내에서 직접 실행되는 코드를 위한 템플릿을 정의할 때 사용
- Expression : 변수 할당, 리턴 값 등에서 사용
- Declaration : 변수, 메서드, 클래스 등을 선언하는 부분에 특화된 템플릿 설정
- Comment : 코드 내의 주석 부분에 적용할 수 있는 템플릿 설정
- Imports : import 선언을 관리하는 부분에 사용할 수 있는 템플릿 설정
환경 설정에 어려움을 겪으시는 분은 자신의 맞는 환경 '전체 선택' 추천 ✅
Java 사용 : Java 선택
Kotlin 사용 : Kotlin 선택
공부하면 할수록 더욱 편리한 기능들을 제공해주는 IDEA, Java, Spring 세부 사항들은 개발 속도에 더욱 효율성을 상승시켜 주는 기능들이 수두룩 한 거 같다.. ⚙️
항상 놀랍고 새롭습니다. 감사합니다! 🙇🏻
4. 참고(Reference) 📖
'🍯 꿀팁' 카테고리의 다른 글
[TIP] 기술 블로그 쉽게 쓰고 운영하기 - 개발자의 글쓰기 (0) | 2024.08.24 |
---|---|
[TIP] 알고리즘 문제를 풀면 자동 커밋 및 기록 (0) | 2024.06.23 |
@택이✌️ :: Code::택이
Backend 개발자를 꿈꾸는 꿈나무💭 기술 블로그
꾸준함을 목표로 하는 꿈나무 개발자 택이✌️입니다. 궁금하신 점이나 잘못된 정보가 있으면 언제든지 연락주세요. 📩 함께 프로젝트 및 스터디도 언제든지 희망합니다! 📖