Live Template이 뭐임
Jetbrains 계통의 IDEA에서 쓸 수 있는 Code Snippets
코딩을 하다보면 반복되는 패턴을 많이 마주하게 됩니다. 여기서는 거창하게 디자인 패턴 같은 거를 말하는건 아니고, 아래와 같이 사소한 것들을 말한 겁니다.
- for 문으로 같은 동작 n번 반복하기
- if 문으로 null 확인하기
이런 자주 쓰이는 언어의 패턴을 짧은 단축키로 바로 칠 수 있게 해 주는 걸 Code Snippets이라고 합니다. 가장 유명한 Code Snippets이라면 Emmet이 있겠네요.
Emmet은 HTML에서 쓰는 Code Snippets인데, 특히 반복해서 타이핑해야 하는 일이 많은 HTML에서 유용합니다. 예를들어 아래와 같은 HTML 코드를
<header>
<ul>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
</header>
header>ul>li*4로 바로 만들 수 있습니다.
IntelliJ에서 어떤 Live Template이 있는지 보기
설정 -> Editor -> Live Template에 가면 각 언어에서 쓸 수 있는 Live Template 전체 목록을 볼 수 있습니다.
Live Template은 단순히 정해진 코드를 출력하고 끝나는게 아니라, 이름이나 데이터 타입을 변경해야 할 경우 Tab을 눌러 차례대로 이동할 수 있습니다. 이동할 부분은 IntelliJ에서의 경우 $로 감싸서 표시합니다.
예를 들어 위 이미지의 경우 anonymous class를 만드는 Live Template인데, class의 이름과 내용이 각각 $로 감싸져 있는 걸 볼 수 있습니다.
🐜 개미픽
기본으로 제공되는 Live Template이 상당히 많지만, 써볼려고 상당한 노력을 해 봤지만 아래의 경우를 제외하고는 손에 익지는 않더라구요. 특히 위의 anonymous는... 저걸 치느니 (자동완성을 되지만) 그냥 코드를 치는게 나을 거 같아요. 아무튼, 아래 Live Template을 1개 1개 사용하는 연습부터 시작해 보시면 코딩 속도가 조금은 빨라집니다!
- exfun (extension function)
fun $RECEIVER$.$NAME$($PARAMS$): $RETURN$ {
$END$
}
- fun0
fun $NAME$(): $RETURN$ {
$END$
}
- fun1
fun $NAME$($PARAM1$ : $PARAM1TYPE$): $RETURN$ {
$END$
}
- fun2
fun $NAME$($PARAM1$ : $PARAM1TYPE$, $PARAM2$ : $PARAM2TYPE$) : $RETURN$ {
$END$
}
- void
fun $NAME$($PARAMS$) {
$END$
}
- ifn
if ($VAR$ == null) {
$END$
}
- inn
if ($VAR$ != null) {
$END$
}
- iter (iterations)
for ($VAR$ in $ITERABLE$) {
$END$
}
참고
'👨💻 프로그래밍 > Java, Kotlin, Spring' 카테고리의 다른 글
Spring의 @Controller, @Repository, @Service, @Component 등 알아보기 (0) | 2024.05.01 |
---|---|
Kotlin Sequence (스퀸스) 에 대해 알아보자 (1) | 2024.02.04 |
Kotlin의 inline 함수 알아보기 (0) | 2023.10.09 |
Spring에서 같은 type의 Bean 구분하는 방법 (0) | 2023.06.06 |
자바 21 - 자바 상속(Inheritance) (0) | 2021.05.21 |