IntelliJ IDEA 2020.3의 새로운 기능

IntelliJ IDEA 2020.3은 디버거에 대화형 힌트 및 인라인 감시를 추가하고, Java 15에 대한 지원을 개선하였으며, Git 스테이징에 대한 지원을 비롯해 기타 다양한 기능을 도입했습니다. 계속 읽으면서 이 모든 기능을 알아보세요!

사용자 경험

새로운 시작 화면

새로운 시작 화면

IntelliJ IDEA 시작 화면이 재설계되었습니다. 초기 마법사는 프로젝트 관리를 위한 Projects(프로젝트), IDE 인터페이스 설정을 위한 Customize(사용자 지정), 플러그인 설치를 위한 Plugins(플러그인), 도움말 및 학습 리소스에 액세스하기 위한 Learn IntelliJ IDEA(IntelliJ IDEA 학습)의 네 가지 탭이 포함된 빠른 액세스 화면으로 대체되었습니다.

IntelliJ IDEA 배우기

IntelliJ IDEA 배우기

시작 화면에서 바로 Learn IntelliJ IDEA(IntelliJ IDEA 배우기) 탭을 열어보세요. 여기에서 대화형 강의 및 유용한 도움말 링크를 찾을 수 있습니다. Start Learning(학습 시작)을 클릭하여 다양한 IDE 기능을 실제 환경에서 차근차근 학습해 보세요. Learn(배우기) 뷰에 나온 지침을 따라 실제 코딩 샘플에서 새로운 스킬을 테스트해 보세요.

OS 설정과 동기화된 IDE 테마

OS 설정과 동기화된 IDE 테마

IntelliJ IDEA의 테마를 OS 테마와 동기화할 수 있습니다. 이 기능을 활성화하려면 Settings(설정) / Preferences(환경 설정) | Appearance & Behavior(모양 및 동작) | Appearance(모양)로 이동하여 Sync with OS(OS와 동기화) 체크박스를 선택하세요. Sync with OS 옆에 있는 톱니바퀴 아이콘을 클릭하면 원하는 테마를 선택할 수 있습니다.

리더 모드

리더 모드

이제 읽기 전용 파일 및 외부 라이브러리의 파일이 Reader mode(리더 모드)에서 기본적으로 열립니다. 이 모드에서는 주석이 서식 지정된 텍스트처럼 보이고 글꼴 이음자가 활성화되어 코드를 더 쉽게 읽을 수 있습니다. Reader 모드 설정은 Settings(설정) / Preferences(환경 설정) | Editor(에디터) | Reader Mode(리더 모드)에서 사용자 지정할 수 있습니다.

LightEdit 업데이트

LightEdit 개선 사항

IntelliJ IDEA 2020.3에서는 LightEdit 모드의 UX를 개선했습니다. 명령줄에서 LightEdit 모드로 파일을 열려면 이제 열려는 파일 이름 앞에 -e(--edit)를 입력하거나 파일 이름을 생략하여 이전 세션을 다시 열면 됩니다. LightEdit 창의 새로운 상태 표시줄에서는 전체 IDE 기능에 액세스할 수 있습니다. LightEdit 모드의 업데이트에 관해 자세히 알아보려면 이 블로그 게시물을 읽어보세요.

향상된 문법 검사기

향상된 철자 및 문법 검사기

이제 Alt+Enter를 누르면 IDE가 문법이나 철자를 수정하기 위한 제안을 호출합니다. 또한 새로운 버전의 LanguageTool 문법 검사 엔진을 사용하여 영문 텍스트 검토를 개선하고 10개 이상의 언어에 대한 지원을 추가했습니다.

전체 검색 커밋 해시

전체 검색 업데이트

새로운 Git 탭을 Search Everywhere(전체 검색) 대화상자에 추가했습니다. 이제 Search Everywhere 대화상자에서 커밋 해시와 메시지, 태그, 브랜치를 검색할 수 있습니다. 검색 필드에서는 간단한 수학적 계산을 할 수도 있습니다.

미리보기 탭

미리보기 탭

이제 클릭 한 번으로 미리보기 탭에서 파일을 열 수 있습니다. 미리보기 탭에서 파일을 열 때 파일의 이름은 이탤릭체로 표시됩니다. 파일을 편집하기 시작하면 미리보기가 중단되고 일반 파일로 바뀝니다. 다른 파일을 한 번 클릭하여 미리보기 모드에서 열면, 해당 파일이 이전에 열린 파일을 대체하며 같은 탭에 표시됩니다. 이 기능을 활성화하려면 Project(프로젝트) 뷰에서 톱니바퀴 아이콘을 클릭하고 Enable Preview Tab(미리보기 탭 활성화)을 선택하세요.

Linux 이모티콘 선택기

Linux 이모티콘 선택기

2020.3 버전에 Linux용 이모티콘 선택기가 추가되었습니다🥳. 이모티콘 선택기를 열려면 Ctrl+Alt+;을 누르세요. 이모티콘을 카테고리별로 필터링하고, 이름별로 검색하고, 이모티콘의 스킨톤을 변경할 수 있습니다. 이모티콘 선택기는 키보드 탐색을 완벽하게 지원합니다.

IDE에서 JDK 업데이트

IDE 내에서 JDK 업데이트

2020.3 버전부터 JDK 업데이트가 있을 때마다 표시되는 팝업에서 최신 JDK로 마이그레이션할 수 있습니다. 설치할지 건너뛸지만 선택하면 됩니다.

에디터

새로운 메서드 추출 레이아웃

새로운 메서드 추출 레이아웃

Java 메서드를 추출하기가 더 간편해졌습니다. 간단히 macOS에서 ⌥⌘M을 누르거나 Windows나 Linux에서 Ctrl+Alt+M을 누르거나 Refactor(리팩터링) / Extract(추출) / Introduce(삽입) / Method(메서드)…를 선택하면 IDE에서 추출을 바로 수행합니다.

이름 변경 리팩터링 업데이트

더 직관적으로 이름 변경 설정에 액세스

인레이 힌트에 표시되는 새로운 Rename(이름 변경) 환경 설정을 사용하여, 주석 및 문자열 리터럴 또는 인쇄 가능한 텍스트에서 사용 위치의 이름을 변경할지 여부를 선택할 수 있습니다. 이 힌트를 호출하려면 macOS에서는 ⇧F6을, Windows 및 Linux에서는 Shift+F6을 누른 다음 Tab을 누르세요. Show Options Popup for In-place Refactoring(제자리에서 적용되는 리팩터링에 대한 옵션 팝업 표시)의 단축키는 Settings(설정) / Preferences(환경 설정) | Keymap(키맵)에서 변경할 수 있습니다.

탭을 드래그 앤 드롭

탭을 드래그 앤 드롭

프로젝트에서 작업하는 동안 여러 탭을 열려는 경우, 이제 파일 탭을 드래그 앤 드롭하여 에디터를 가로 또는 세로로 분할할 수 있습니다. 또한 파일을 열 때 에디터를 세로로 분할하는 Open in Right Split(오른쪽 분할에서 열기) 액션을 도입하였습니다. 이 액션은 Project(프로젝트) 뷰 또는 기타 Recent Files(최근 파일), Search Everywhere(전체 검색), Navbar와 같은 탐색 팝업에서 호출하세요.

고정된 탭

고정된 탭 개선 사항

2020.3 버전에서는 고정된 탭에 새로운 핀 아이콘이 표시됩니다. 이 아이콘을 클릭하면 파일 고정이 해제됩니다. 고정되거나 고정 해제된 다른 파일 위로 탭을 드래그 앤 드롭하여 고정 및 고정 해제할 수도 있습니다. 사용자가 많은 탭을 열어 놓는 경향이 있는 경우 고정된 모든 탭을 한 행으로 유지할 수 있습니다. 이렇게 하려면 Settings(설정) / Preferences(환경 설정) | Editor(에디터) | General(일반) | Editor Tabs(에디터 탭)로 이동해 Show pinned tabs in a separate row(고정된 탭을 별도의 행에 표시) 체크박스를 선택하세요.

Markdown 개선 사항

Markdown 편집 및 미리보기 개선

이제 Markdown 도구의 미리보기 UI와 UX가 한층 더 개선되었습니다. Settings(설정) / Preferences(환경 설정) | Editor(에디터) | Code Style(코드 스타일) | Markdown에서 Markdown 서식을 사용자 지정할 수 있습니다. 서식을 적용하려면 macOS에서 ⌘+Alt+L을, Windows 또는 Linux에서는 Ctrl+Alt+L을 누르세요. 에디터의 우측 상단에 있는 Auto-Scroll Preview(미리보기 자동 스크롤) 버튼을 누르면 미리보기 창과 에디터의 스크롤을 동기화할 수 있습니다. We’ve also added support for Mermaid.js.

파일 형식 연결

IntelliJ IDEA를 파일을 여는 디폴트 애플리케이션으로 설정

IntelliJ IDEA를 파일을 여는 디폴트 애플리케이션으로 설정할 수 있습니다. Preferences(환경 설정) / Settings(설정) | Editor(에디터) | File Types(파일 형식)에서 Associate file types with IntelliJ IDEA…(파일 형식을 IntelliJ IDEA와 연결…) 버튼을 클릭하세요. 그런 다음, 열린 대화상자에서 IDE에서 열려는 파일의 확장자를 선택하세요. macOS를 사용하는 경우 변경 내용을 적용하려면 컴퓨터를 재시작해야 합니다.

템플릿당 여러 개의 파일

템플릿당 여러 개의 파일

Preferences(환경 설정) / Settings(설정) | Editor(에디터) | File and Code Templates(파일 및 코드 템플릿)에서 여러 개의 파일을 생성하는 템플릿을 추가할 수 있습니다. 우선, +를 클릭하여 새 템플릿을 생성하세요. 템플릿에 또 다른 파일을 추가하려면, + 옆에 있는 Create Child Template File(하위 템플릿 파일 생성) 아이콘을 클릭하세요. File name(파일 이름) 필드에서 Description(설명) 섹션에 나열된 변수를 사용하여 파일 이름 및 경로를 생성하는 패턴을 입력할 수 있습니다.

디버거

디버거 대화형 힌트

대화형 힌트

애플리케이션이 디버그 모드에서 실행 중일 때 변수를 클릭하면, 값을 변경할 수 있는 관련 필드가 포함된 인라인 힌트를 얻을 수 있습니다. 이 새로운 인라인 힌트 내에서 Create Renderer(렌더러 생성)를 클릭하면 모든 디버거 뷰에서 인라인 값 표시를 구성할 수 있는 대화상자가 열립니다.

디버거 인라인 감시

인라인 감시

특정 컨텍스트와 연결되고 에디터 내에 바로 표시되는 새로운 유형의 감시 표현식을 추가했습니다. 이 새로운 감시 표현식을 생성하려면 인라인 힌트 팝업에서 Add as Inline Watch(인라인 감시로 추가)를 클릭하거나 컨텍스트 메뉴에서 Add Inline Watch(인라인 감시 추가)를 선택하거나 에디터에서 변수를 마우스 오른쪽 버튼으로 클릭하면 됩니다. 인라인 감시는 Debug(디버그) 도구 창의 Variables(변수) 탭에 있는 새 Inline Watches(인라인 감시) 노드에서 관리할 수 있습니다.

디버거에서 참조 객체 표시

Java 디버거의 기본 메모리 프로파일링

이제 디버거가 실행되는 동안 기본 프로파일링 옵션을 사용할 수 있습니다. Debug(디버그) 도구 창의 컨텍스트 메뉴에서 새 프로파일링 기능을 호출해 보세요. 첫 번째 옵션은 Show referring objects(참조 객체 표시)로, 객체에서 GC 루트까지의 최단 경로를 찾습니다. 두 번째 옵션은 Calculate retained size(보존된 크기 계산)로, 객체의 보존된 크기를 계산하고 보존된 집합을 표시합니다.

향상된 Gradle 디버그

향상된 Gradle 디버그

이제 Gradle 작업의 디버그 세션당 하나의 탭만 열립니다. 이 탭에는 Frames(프레임)Variables(변수)를 비롯해 Console(콘솔) 출력이 있습니다. 디버거 제어도 올바르게 작동합니다. 이전에 사용된 디버그 로직으로 롤백하려면 Edit configurations(구성 편집)… 화면에서 Reuse Gradle debug session for forked processes(포크된 프로세스에 대해 Gradle 디버그 세션 재사용) 체크박스를 선택 취소하세요.

프로파일러

프로파일러를 프로세스에 연결

프로파일러 도구 창 업데이트 Ultimate

새롭게 설계된 Profiler(프로파일러) 도구 창에서는 실행 중인 애플리케이션에 프로파일러를 연결할 수 있습니다. 실행 중인 전체 Java 프로세스 목록에서 Enter를 눌러 Attach Profiler to a Process(프로세스에 프로파일러 연결)를 호출하고 사용할 통합 도구를 선택하세요. Recent Snapshot(최근 스냅샷) 영역에서는 이전에 생성된 스냅샷에 빠르게 액세스할 수 있습니다.

플레임 그래프 검색

플레임 그래프 검색 Ultimate

이제 플레임 그래프 검색은 더 사용자 친화적으로 개선되어, 눈에 띄는 검색 필드, 빠른 탐색을 위한 위/아래 화살표, 전체 플레임 그래프 또는 특정 하위 트리에서 검색할 수 있는 필터를 제공합니다.

Jfr 및 hprof 드래그 앤 드롭

.jfr 및 .hprof에 간편하게 액세스 Ultimate

이제 .jfr.hprof 파일을 여느라 이런저런 작업을 할 필요가 없습니다! 이러한 형식의 파일을 빠르게 열려면 에디터에 드래그 앤 드롭한 다음 File(파일) | Open(열기)으로 열거나 Project(프로젝트) 뷰에서 두 번 클릭하세요.

로컬 Maven 및 Tomcat 지원 Ultimate

이제 로컬 Maven 및 Tomcat 실행 구성을 다른 실행 구성과 동일한 방식으로 프로파일링할 수 있습니다. 프로파일링하려는 항목을 오른쪽 마우스 버튼으로 클릭한 다음, CPU, Allocation, Java Flight Recorder 등 필요한 프로파일링 옵션을 선택하세요.

버전 관리

Git 스테이징 지원

Git 스테이징 지원

이제 IDE에서 바로 변경 내용을 스테이징할 수 있습니다. 이 기능을 사용하려면 Settings(설정) / Preferences(환경 설정) | Version Control(버전 관리) | Git으로 이동하여 Enable staging area(스테이징 영역 활성화) 옵션을 선택하세요. + 아이콘을 클릭하여 Commit(커밋) 뷰의 새 Staged 노드에 파일을 추가하세요. 여백 또는 Diff 뷰에서 변경 사항을 스테이징할 수도 있습니다. 자세한 내용은 블로그 게시물을 읽어보세요.

업데이트된 VCS 메뉴

재배열된 VCS 메뉴

이제 VCS 메뉴는 현재 사용 중인 버전 관리 시스템에 따라 이름이 지정됩니다. 이 메뉴를 프로젝트 버전 관리에 가장 유용한 액션을 제외한 나머지는 모두 제거하여 더 간결하게 만들었습니다. 프로젝트에서 Git만 사용하는 경우, VCS 메뉴는 위의 이미지처럼 보입니다.

브랜치 개선 사항

브랜치 개선 사항

새 브랜치를 생성할 때 브랜치 이름에서 허용되지 않는 기호가 있으면 IDE가 자동으로 수정합니다. 또한 현재 브랜치가 관련 액션을 표시하도록 컨텍스트 메뉴가 재작업되었습니다. 원격 브랜치의 경우, Merge into Current(현재 브랜치로 병합) 및 Rebase Current onto Selected(현재 브랜치를 선택 브랜치로 리베이스) 액션의 이름이 각각 Pull into Current Using Merge(병합을 사용하여 현재 브랜치로 풀)Pull into Current Using Rebase(리베이스를 사용하여 현재 브랜치로 풀)로 변경되었습니다.

실행 구성

실행 구성 업데이트

실행/디버그 구성 업데이트

Run/Debug Configurations(실행/디버그 구성)를 재정렬하여 가장 자주 사용하는 설정을 한 화면에 배치해 더 깔끔하게 만들었습니다. 필수 필드에는 필드 내 라벨이 포함되며 명령줄에서와 동일한 순서로 정렬됩니다. 다른 매개변수를 구성해야 하는 경우 Modify options(옵션 수정)를 클릭하세요.

실행 구성 템플릿 공유

실행/디버그 구성 템플릿 저장 및 공유

IntelliJ IDEA 2020.3에서는 실행 구성 템플릿을 XML 파일로 저장한 다음 Git 또는 다른 VCS를 통해 팀원과 공유할 수 있습니다. 이 기능을 활성화하려면 Edit Configurations(구성 편집)…로 이동하여 Templates(템플릿) 노드를 펼치고 구성 템플릿을 선택한 다음, Store as project file(프로젝트 파일로 저장) 체크박스를 선택하고 이 구성 템플릿을 저장할 경로를 정의하세요.

공동 개발

Code With Me EAP

IntelliJ IDEA 2020.3은 공동 개발 및 페어 프로그래밍을 위한 새로운 서비스인 Code With Me(EAP)를 지원합니다. Code With Me를 사용하면 현재 IDE에 열려 있는 프로젝트를 다른 사람과 공유하고 실시간으로 함께 작업할 수 있습니다. 이 서비스는 플러그인 마켓플레이스에서 다운받을 수 있습니다.(Preferences(환경 설정) / Settings(설정) | Plugins(플러그인) | Marketplace). Code With Me에 관한 자세한 내용은 이 게시물을 확인하세요.

Java

레코드를 클래스로 변환

레코드 변환

레코드를 클래스로 변환할 수 있는 새로운 인텐션 액션을 추가했습니다. 이 액션은 코드베이스를 다운그레이드할 때 유용할 수 있습니다. 레코드를 사용하게 되는 경우와 사용 방법에 관해서는 이 블로그 게시물에서 읽을 수 있습니다.

sealed 클래스 지원

sealed 클래스 완벽 지원

In this release, we’ve added completion, code insight, and refactorings for sealed classes. sealed 제어자를 사용하면 클래스를 sealed 클래스로 선언하여 해당 클래스를 확장하거나 확장하지 못하게 만들 다른 클래스를 정의할 수 있습니다. 하위 클래스는 final, non-sealed 또는 sealed가 될 수 있습니다. 이 기능을 사용하는 방법의 몇가지 예시를 보려면 이 블로그 게시물을 읽어보세요.

머신러닝 코드 완성

머신러닝 기반 코드 완성 분류

제안을 정렬하여 가장 적절한 항목을 먼저 표시하는 새로운 머신러닝 기술 덕분에 코드 완성 제안이 더 스마트해지고 컨텍스트에 더 충실해졌습니다. 새로운 순위 시스템이 제안의 순서를 변경하는 방식을 확인하려면 Settings(설정) / Preferences(환경 설정) | Editor(에디터) | General(일반) | Code Completion(코드 완성)으로 이동해 Mark position changes in the completion popup(코드 완성 팝업에서 위치 변경 표시) 체크박스를 선택하세요.

Shebang 지원

Shebang(#!) 지원

파일이 Shebang 메커니즘을 사용하는 경우, IntelliJ IDEA는 이를 자동으로 식별하여 사용자가 파일을 올바르게 열고 코드 분석 기능을 사용할 수 있도록 합니다. shebang(#!)이 포함된 파일에서 강조 표시 기능도 작동합니다.

주석 삭제 검사

새로운 검사 기능

IntelliJ IDEA 2020.3에서는 코드 개선에 도움이 되는 새로운 검사를 도입했습니다. 여기서 가장 중요한 검사 중 하나는 주석 처리된 줄을 삭제하거나 주석을 제거할 수 있는 Commented out code(주석 처리된 코드)입니다. IntelliJ IDEA 2020.3의 다른 새로운 검사에 관한 자세한 내용은 이 블로그 게시물을 참조하세요.

향상된 코드 완성

향상된 코드 완성

이제 클래스를 처음부터 작성할 경우, 코드 완성 기능에서 최상위 Public 선언 뒤에 오게 될 클래스, 인터페이스, 열거형 또는 레코드를 제공합니다. String.toUpperCase 또는 String.toLowerCase 메서드를 사용하면 Locale.ROOT를 사용하라는 메시지가 표시됩니다. String.getBytes()를 호출하려고 하면, IDE에서 UTF_8 문자 세트를 사용하도록 제안합니다.

Kotlin

인라인화 리팩터링의 새로운 유형

교차 언어 변환이 가능해져 Java에서 Kotlin 요소를 인라인화할 수 있습니다. 또한 also, let, run, apply,, with 범위 함수를 인라인화 리팩터링할 수 있습니다. IDE가 구문을 더 철저히 분석하고 올바르게 서식을 지정할 수 있도록 람다 식의 인라인화을 개선했습니다.

구조 검색 및 바꾸기

구조 검색 및 바꾸기

Kotlin에 구조 검색 및 바꾸기(SSR) 액션을 지원합니다. 소스 코드의 구문과 의미를 고려하여 코드 패턴을 검색하고 바꿀 수 있습니다. 변수 필터를 사용하면 검색 범위를 좁힐 수 있습니다.

새로운 인프라

Kotlin IDE 플러그인 릴리스 주기가 IntelliJ IDEA 릴리스 주기와 같아집니다. 또한 Kotlin IDE 플러그인을 IntelliJ IDEA 코드베이스와 결합된 새 저장소로 이동하여 플랫폼 변경 내용을 적용하는 데 걸리는 시간을 최소화했습니다.

프레임워크 및 기술

새롭게 작업된 엔드포인트 도구 창

새롭게 작업된 엔드포인트 도구 창 Ultimate

이 릴리스에서는 HTTP 및 WebSocket 프로토콜용 클라이언트와 서버 API를 모두 표시하는 Endpoints(엔드포인트) 도구 창이 크게 개선되었습니다. 목록을 더 간결하게 만드는 옵션과 함께 엔드포인트가 모듈별로 그룹화되어 더 보기 편하게 표시됩니다. 또 필터, 여러 검색 매개변수, 코드 완성 기능이 제공되는 포괄적 검색 기능을 사용할 수 있습니다. 새 탭에서 각 엔드포인트에 관한 문서를 읽을 수도 있습니다. 엔드포인트에 연결된 URL이 있는 경우, 해당 URL의 Open API 표현을 확인하고 특정 HTTP 클라이언트에 액세스할 수 있습니다.

cURL 변환

cURL 변환 Ultimate

이제 HTTP 요청 에디터에서 Alt+Enter를 누르고 Convert to cURL and copy to clipboard(cURL로 변환 및 클립보드로 복사) 옵션을 선택하여 HTTP 요청을 cURL로 내보낼 수 있습니다.

향상된 URL 완성

향상된 URL 완성 Ultimate

이제 URL 완성에서 다양한 정보(프레임워크 아이콘, HTTP 메서드, 엔드포인트를 선언한 클래스 또는 파일의 소스 위치)를 제공합니다. 더 이상 사용되지 않는 URL은 취소선 형식으로 표시됩니다.

URL 인레이 힌트

URL 인레이 힌트 Ultimate

URL에 사용하는 몇가지 주요 액션에 대한 빠른 액세스를 추가했습니다. 액션에 액세스하려면 URL 옆에 있는 지구 아이콘을 클릭하세요. 이러한 액션은 현재 Spring MVC, WebFlux, Feign Client, JAX-RS, Micronaut, Retrofit 프레임워크에 제공됩니다.

Kotlin에서 Spring Security 완성

Spring 업데이트 Ultimate

이제 Spring MVC Functional Routing, RestOperations, Spring WebTestClient, Spring Reactive WebClient에 코드 인사이트가 지원됩니다. 또한 함께 선언된 엔드포인트도 표시됩니다. Kotlin Spring Security 프로젝트용 코드 완성 및 탐색 기능도 추가되었습니다.

HTTP 요청 변환

HTTP 요청 변환 Ultimate

이전 HTTP 클라이언트 형식의 HTTP 요청을 계속 사용하는 경우, 열려 있는 요청의 상단에서 Convert request to the new format(요청을 새 형식으로 변환)을 클릭하면 쉽게 변환할 수 있습니다. 이 작업을 수행하는 또 다른 방법에는 Project(프로젝트) 뷰의 컨텍스트 메뉴 또는 HTTP 요청 에디터를 사용하는 것이 있습니다.

Swagger 업데이트

Swagger 업데이트 Ultimate

$ref 키워드로 외부 정의를 참조하려는 경우를 포함해 다양한 사례에서 코드 인사이트 기능이 크게 향상되었습니다. 또 다른 중요한 업데이트로 Swagger Hub 지원이 추가되어, Swagger Hub에서 공개 및 비공개 사양을 모두 가져와 Endpoints(엔드포인트) 도구 창에서 열 수 있게 되었습니다. 또 하나의 멋진 기능은 Swagger UI가 이제 Darcula 테마와 동기화된다는 것입니다.

Quarkus 구성

Quarkus 및 Micronaut 실행 구성 Ultimate

새 Quarkus 및 Micronaut 프로젝트의 실행 구성이 자동 생성되므로 애플리케이션을 즉시 실행하고 디버그할 수 있습니다. Edit Configurations(구성 편집)에서 Quarkus 설정을 변경하려는 경우, Environment(환경) 섹션에는 프로젝트를 빌드하는 데 Gradle과 Maven 중 어느 것을 사용하는지에 따라 그에 해당하는 설정만 표시됩니다.

@Query 완성

Micronaut 데이터용 @Query 어노테이션에 코드 완성 지원 Ultimate

IntelliJ IDEA 2020.3에서는 저장소 인터페이스를 만들 때 사용하는 사전 정의된 메서드에 대한 코드 완성을 도입했습니다. 사용자 지정 쿼리를 생성할 때 도움이 되는 Micronaut @Query 어노테이션에 대한 지원도 추가했습니다. 이 어노테이션을 사용하면 코드 조각에 JPQL 언어를 사용할 수 있습니다.

Scala

병렬 컴파일

병렬 컴파일

이제 Scala Compile Server가 독립 모듈을 병렬로 컴파일합니다. 컴파일 속도를 대폭 향상하기 위해 기본적으로 최대 4개의 컴파일 스레드를 지원하도록 디폴트 VM 옵션을 조정했습니다. 컴퓨터에 CPU 코어 수와 RAM이 넉넉하면 디폴트 값을 조정하여 컴파일 시간을 더욱 향상시킬 수 있습니다.

컴파일 차트

컴파일 차트

병렬 컴파일의 효율성을 높이려면 프로젝트 모듈의 구조와 컴파일 서버의 VM 옵션을 최적화할 수 있습니다. 이 작업을 도와주는 Compilation Charts(컴파일 차트)가 추가되어 최적화 가능한 부분이 있을 경우 한 눈에 파악할 수 있습니다. 예를 들어 차트를 이용하면, 병목 현상을 일으키는 모듈, 스레드 수를 늘릴 수 있는 기회, 최대 힙 크기를 조정해야 할 때를 파악할 수 있습니다. 빨라진 컴파일 및 주의를 끄는 동적인 차트 덕에 이제 "컴파일 중"이라는 말은 철 지난 우스갯소리가 되었습니다.

향상된 패키지 접두사

이제 Scala 플러그인으로 IntelliJ IDEA의 패키지 접두사를 Scala의 체인 패키지 절 및 상대적 import 문과 결합할 수 있습니다. 이 각각의 기능은 다소 모호하지만, 접두사를 결합하면 모호함의 수준이 크게 증가하는 일 없이 직관적이고 내부적으로 일관된 시스템을 만들 수 있습니다(자세한 정보). 더 이상 빈 디렉터리 체인을 그대로 두어야 하거나 동일한 패키지 접두사를 계속 반복할 필요가 없이 디렉터리와 패키지를 깔끔하게 유지할 수 있습니다.

MUnit 지원

Scala 플러그인은 이미 JUnit, ScalaTest, uTest, Specs2를 지원하고 있습니다. 그리고 이 목록에 또 다른 항목을 추가할 때가 되었습니다. 이제 MUnit 지원이 모든 일반적 이점과 함께 제공됩니다.

Scala 3 개선 사항

Scala 3 개선 사항

IntelliJ Scala 플러그인에서는 곧 출시되는 Scala 3을 꽤 오랫동안 지원해 왔으며 JetBrains는 그 모든 새로운 업데이트에 발맞춰가기 위해 열심히 노력하고 있습니다. Particularly, the Scala plugin now understands the new syntax for main methods. 덕분에 Hello Worlds 개발이 그 어느 때보다 쉬워졌습니다!

JavaScript

TS Problems 뷰 통합

TypeScript 및 Problems 도구 창 통합 Ultimate

TypeScript 언어 서비스를 Problems(문제) 도구 창으로 통합하고 TypeScript 도구 창을 제거했습니다. 이러한 변경은 더 간편하게 한 곳에서 코드 문제를 검토할 수 있도록 하기 위해 적용되었습니다. 이전에 TypeScript 도구 창에서 제공되던 액션은 상태 표시줄 상의 전용 위젯으로 옮겼습니다.

사용 위치에서 React 구성 요소 생성

사용 위치에서 React 구성 요소 생성 Ultimate

코드에 해결되지 않은 React 구성 요소가 있으신가요? 그 위에 캐럿을 배치하고 Alt+Enter를 누른 다음, 목록에서 Create class / function component(클래스/함수 구성 요소 생성)를 선택하면 IDE가 적절한 코드 구문을 사용자 대신 생성해줍니다.

IntelliJ IDEA 2020.3에서 제공하는 기타 JavaScript 관련 개선 사항을 자세히 알아보려면 WebStorm의 새로운 기능을 확인하세요.

Kubernetes

Kubernetes 로그 다운로드

로그 다운로드 Ultimate

이제 로컬 컴퓨터에 로그를 다운로드할 수 있습니다. 간단히 Services(서비스) 도구 창의 왼쪽 패널에서 Download Log(로그 다운로드) 버튼을 클릭하기만 하면 됩니다. 기본적으로 pod는 Scratches and Consoles(스크래치 및 콘솔) | Kubernetes Files(Kubernetes 파일) | <context> | <namespace> | pods에 저장되지만, Settings(설정) / Preferences(환경 설정) | Build, Execution, Deployment(빌드, 실행, 배포) | Kubernetes의 Pod Logs(Pod 로그) 섹션에서 설정을 변경할 수 있습니다.

Kubernetes 셸 실행

콘솔 열기 및 셸 실행 Ultimate

콘솔이 포함된 컨테이너에 연결하기 위한 Open Console(콘솔 열기) 및 pod 컨테이너용 셸을 실행하기 위한 Run Shell(셸 실행)이라는 두 가지 새로운 액션이 Services(서비스) 도구 창의 왼쪽 패널에 추가되었습니다. 설정의 Pod Shell 섹션에 빠르게 액세스하려면 도구 아이콘을 클릭하세요.

향상된 URL 완성

Kubernetes에서 CRD 로드 Ultimate

이제 활성 클러스터에서 CRD 스키마를 자동으로 로드할 수 있습니다. 이렇게 하려면 Preferences(환경 설정) / Settings(설정) | Languages & Frameworks(언어 및 프레임워크) | Kubernetes로 이동하여 Use API schema from an active cluster(활성 클러스터의 API 스키마 사용) 체크박스를 선택하세요.

데이터베이스 도구

MongoDB용 SQL

MongoDB용 SQL Ultimate

이제 SQL을 사용하여 MongoDB 데이터베이스를 쿼리할 수 있습니다. IntelliJ IDEA 2020.3 supports SELECT queries with clauses such as JOIN, WHERE, GROUP BY, HAVING, ORDER BY, LIMIT, OFFSET, and all available MongoDB functions except map, reduce, filter, and let. MongoDB용 SQL에 관해 자세히 알아보려면 이 블로그 게시물을 읽어보세요.

Couchbase 지원 및 새로운 데이터 추출기 Ultimate

이제 IDE에서 Couchbase Query 서비스가 지원됩니다. 또한 열을 쉼표로 구분된 문자열로 복사할 수 있는 One-Row, 삽입될 여러 개의 새로운 줄이 포함된 단일 INSERT 문을 생성하는 SQL-Insert-Multirow라는 두 가지 새로운 추출기가 도입되었습니다.

기타

일상 루틴에서 사용할 수 있는 기타 유용한 업데이트가 있습니다.

  • The upcoming Maven 3.7.0 will feature new POMs with a simplified structure. IntelliJ IDEA 2020.3에는 이미 이에 대한 지원이 포함되어 있습니다.
  • 이제 Lombok 플러그인이 기본 제공됩니다.
  • IntelliJ IDEA는 인기 있는 Maven 라이브러리의 공유 색인을 JetBrains 서버에서 바로 다운로드할 수 있습니다. IntelliJ Platform SDK로 플러그인을 개발하는 경우 공유 색인이 자동으로 다운로드됩니다.
  • macOS Big Sur에 어울리도록 UI 디자인을 업데이트했습니다.
  • macOS 시스템 단축키와 완벽하게 호환되는 새로운 키맵이 Preferences(환경 설정)/Settings(설정) | Keymap(키맵)에서 제공됩니다.
  • 이제 패치 생성 시 디폴트로 Git 형식을 사용합니다.