The JetBrains Blog https://blog.jetbrains.com/ko Developer Tools for Professionals and Teams Mon, 19 Jun 2023 04:34:28 +0000 ko-KR hourly 1 https://blog.jetbrains.com/wp-content/uploads/2023/02/cropped-icon-512-32x32.png The JetBrains Blog https://blog.jetbrains.com/ko 32 32 JetBrains Aqua에서 Cypress 지원 https://blog.jetbrains.com/ko/qa/2023/06/cypress-support-arrives-to-jetbrains-aqua/ Mon, 19 Jun 2023 04:30:24 +0000 https://blog.jetbrains.com/wp-content/uploads/2023/06/Twitter_1200x675-14.png https://blog.jetbrains.com/?post_type=qa&p=364499 Aqua 팀이 반가운 소식을 전합니다!

사용자 여러분의 의견을 바탕으로 이제 Aqua에서 인기 테스트 프레임워크인 Cypress를 지원합니다. Cypress 사용 시 능률 개선을 위해 마련된 지원에 대해 알아보세요.

AQUA 다운로드

Cypress 지원

Aqua의 테스트 가시성 도입

Aqua에서 프로젝트를 열면 자동으로 Cypress 테스트를 탐지하고, 에디터의 테스트 옆에 실행 아이콘을 표시합니다. 따라서 마우스 클릭 한 번만으로 테스트를 쉽게 실행할 수 있습니다.

결과 살펴보기

테스트 완료 후 Aqua는 각 테스트의 관련 로그 및 콘솔 출력 등 포괄적인 테스트 결과를 제공합니다. 다양한 정렬 및 필터링 옵션이 지원되므로 실패하거나 무시한 테스트를 빠르게 살펴보고, 실행 시간을 분석할 수 있습니다.

Aqua의 테스트 결과 도구 창에서 선택한 테스트의 해당 소스 코드로 원활하게 전환할 수 있습니다.

효율적인 테스트 실행 구성 관리

Aqua에서 다양한 매개변수 또는 설정을 사용해 테스트 실행 구성을 쉽게 저장하고 공유할 수 있습니다.

간편한 테스트 검색

이제 Aqua를 사용해 구체적인 테스트 케이스를 손쉽게 검색할 수 있습니다. Go to Symbol(심볼로 이동) 또는 Search Everywhere(전체 검색) 기능을 활용해 원하는 테스트를 빠르게 찾아 바로 이동할 수 있습니다.

코드 편집 환경 개선

Aqua는 향상된 코드 편집 환경을 제공합니다. 스마트한 코드 완성, 탐색, 린터 지원 등 JavaScript 및 TypeScript 지원도 제공됩니다. Aqua의 코드 분석 기능이 Cypress 함수 및 표현식을 지원하도록 개선되어, 문자열 리터럴의 CSS 및 XPath 로케이터를 강조 표시하고 관련 코드 완성 제안을 제공합니다.

Aqua에서 매우 뛰어난 Cypress 별칭 기능을 지원합니다. 별칭 선언 및 사용 위치 탐색, 인라인 이름 변경, 사용하지 않는 별칭 선언 확인이 더욱 간편해졌습니다. 또한 Aqua는 화살표 함수에서 ‘this’ 객체에 대한 별칭 참조와 같은 잘못된 별칭 사용 위치에 대한 경고도 제공합니다.

간소화된 요소 검사 및 유효성 검사

Aqua는 임베디드 웹 검사 도구와 완벽히 통합되어, 테스트한 웹 페이지의 요소에 실제 로케이터를 제안합니다. 또한 소스 코드에서 페이지의 요소로 탐색을 지원하며, CSS 선택자를 기반으로 웹 검사 도구의 요소를 강조 표시합니다. 이 기능은 로케이터 유효성 및 요소의 가용성을 검사하는 데 도움이 됩니다. 그뿐 아니라, 웹 검사 도구는 해당 로케이터가 고유하고 안정적인지 확인하기 위해 페이지를 검사하고 다양한 유형의 로케이터를 검사하거나 생성하는 데 도움이 됩니다.

Cypress Launchpad

Open Cypress(Cypress 열기) 버튼을 클릭하면 Launchpad에 즉시 액세스하여 프로젝트의 테스트를 구성할 수 있습니다.

평범한 에디터 이상의 도구, Aqua

Aqua는 평범한 에디터보다 훨씬 다양한 기능을 갖춘 도구로, Cypress 테스트의 개발 및 유지 관리를 한층 간소화합니다. 또한 Aqua에는 웹 검사 도구가 통합되어, IDE에서 바로 분석 결과를 제공하고 실시간 데이터 기반 코드 완성 및 손쉬운 탐색을 지원합니다.

강력한 IDE인 Aqua는 다음과 같이 QA 전문가의 일상적 워크플로에 필수적인 도구를 제공합니다.

  • 데이터베이스 관리: 여러 데이터베이스에 원활하게 연결하여, 애플리케이션 데이터를 간편하게 준비하고 검사할 수 있습니다.
  • 에디터 기반 HTTP 클라이언트: 복잡한 HTTP 요청을 실행하고 어설션을 수행한 후 팀에 간편하게 공유하고, CI/CD 파이프라인에서 실행할 수 있습니다.
  • Docker 지원: 컨테이너 실행, 모니터링 및 구성을 위한 Aqua 기본 제공 기능으로 컨테이너 관리를 간소화할 수 있습니다.

Aqua는 이러한 기능 외에도 VCS 통합, 터미널 등을 제공하여 모든 테스트 요구 사항을 충족합니다.

Cypress 지원은 중요한 업데이트입니다. 이번 버전의 Aqua를 사용해 보세요. 이 기능은 공개 테스트 버전으로 지원되므로 문제가 있을 경우 이슈 트래커에 보고해 주세요.

피드백 양식을 사용해 의견, 질문 또는 제안 사항도 공유해 주세요. Toolbox App이나 웹사이트를 통해 최신 테스트 버전 빌드를 편리하게 다운로드할 수 있습니다.

최신 개선 사항을 확인하려면 블로그를 구독하고 Twitter 계정도 팔로우해 주세요.

성공적이고 효율적인 자동 테스트를 수행하시길 바랍니다!

Aqua 팀 드림

게시물 원문 작성자

Jessie Cho

Oscar Rodriguez

]]>
https://blog.jetbrains.com/ja/qa/2023/06/cypress-support-arrives-to-jetbrains-aqua/ https://blog.jetbrains.com/qa/2023/06/cypress-support-arrives-to-jetbrains-aqua/
JetBrains Aqua에서 Playwright 지원 https://blog.jetbrains.com/ko/qa/2023/06/playwright-support-arrives-to-jetbrains-aqua/ Mon, 19 Jun 2023 03:21:18 +0000 https://blog.jetbrains.com/wp-content/uploads/2023/06/Twitter_1200x675-13.png https://blog.jetbrains.com/?post_type=qa&p=364497 Aqua 팀의 특별 공지입니다!

Aqua 팀은 가장 인기 있는 테스트 프레임워크에 대한 최고의 지원을 제공하기 위해 노력해 왔습니다. 오랫동안 사용자분들이 Playwright 지원을 요청해 주셨습니다. 이제 새로운 Aqua 버전부터 완벽한 Playwright 지원이 제공됩니다.

AQUA 다운로드

Playwright 지원

Aqua에서 테스트 표시

프로젝트를 열면 Aqua에서 Playwright 테스트를 찾아 여백 아이콘을 표시하므로 에디터에서 테스트를 실행할 수 있습니다.

Playwright 테스트는 간편하고 쉽게 실행할 수 있습니다. 필요한 경우 파일 또는 디렉터리에서 모든 테스트를 실행하도록 선택할 수도 있습니다.

결과 탐색 및 이슈 검색

테스트 완료 후 Aqua는 상세한 테스트 결과와 해당 테스트의 관련 로그 및 콘솔 출력을 표시합니다. 다양한 정렬 및 필터링 옵션이 지원되므로 실패하거나 무시한 모든 테스트를 간편하게 살펴보고, 테스트 실행 시간을 검사할 수 있습니다.


Aqua의 테스트 결과 도구 창에서 선택한 테스트의 해당 소스 코드로 쉽게 이동할 수 있습니다. 사용자의 편의를 위해 Aqua는 단계별 실행 시간과 함께 인레이 힌트를 표시하고, 소스 코드 에디터에서 실패한 코드 줄이나 표현식을 강조 표시하고, 적합한 오류 메시지를 제공합니다. 이러한 기능으로 완벽한 사용자 경험을 선사합니다.

테스트 실행 설정 저장 및 공유

매개변수 또는 구성이 다른 여러 테스트 세트를 실행할 경우 설정을 Run Configuration(실행 구성)으로 저장하고, 팀과 구성을 공유하거나 설정 간 빠르게 전환할 수 있습니다.

또한 Aqua는 Playwright.tsconfig 파일을 따르며, 지정된 테스트 디렉터리에 선택한 테스트 파일이 없는 경우 조정을 제안합니다.

특정 테스트 케이스 검색

소스 코드에서 특정 테스트를 찾기 쉽지 않을 때가 있습니다. 특히 테스트가 함수로 선언되지 않은 경우 더욱 그렇습니다. Aqua는 이러한 경우 도움이 됩니다. ⇧ 키를 두 번 눌러 검색 창을 열고 Go to Symbol(심볼로 이동) 또는 Search everywhere(전체 검색) 기능을 사용하면 원하는 특정 테스트를 쉽게 찾아 이동할 수 있습니다.

디버거

또한 Aqua는 IDE에서 별도의 설정 없이 사용 가능한 Playwright 테스트용 디버거를 제공합니다. 중단점을 설정하면 실행을 중단하고 코드를 분석할 수 있습니다.

향상된 코드 편집 환경

Aqua는 스마트한 코드 완성, 탐색, 린터 지원 등 최고의 JavaScript 및 TypeScript 지원을 제공합니다.

또한 코드 분석 기능이 개선되었으며 Playwright용 함수 및 표현식도 지원됩니다.
Aqua는 문자열 리터럴의 CSS 및 XPath 로케이터를 강조 표시하고 관련 코드 완성을 제안합니다.

기본 제공 웹 검사 도구에서 테스트한 웹 페이지가 열려 있는 경우, Aqua는 페이지의 요소에 대한 실제 로케이터를 제안합니다.

page.getByRole, page.getByLabel, page.getByTestId 함수에 대한 웹 페이지의 실제 data-testid, aria-label, role 속성 값을 제안할 때도 동일한 수준의 지원이 제공됩니다. Aqua는 Playwright 구성 파일의 데이터 테스트 속성 이름을 따릅니다.

그뿐 아니라 Aqua는 소스 코드에서 페이지의 요소로의 탐색을 지원합니다. 예를 들어, CSS 선택자를 클릭하거나 ‘page.getByTestId’ 함수에 전달된 속성 값을 클릭할 경우 Aqua가 웹 검사 도구에서 해당 요소를 강조 표시합니다. 이러한 기능을 통해 로케이터의 유효성과 페이지에서 요소 사용 가능 여부를 쉽게 검사할 수 있습니다.

또한, 웹 검사 도구는 해당 로케이터가 고유하고 안정적인지 확인하기 위해 페이지를 검사하고 다양한 유형의 로케이터를 검사하거나 생성하는 데 도움이 됩니다.

Aqua를 사용하면 더 간편하고 효율적으로 Playwright 테스트를 개발 및 관리할 수 있습니다. IDE에 분석 결과를 제공하는 웹 검사 도구가 포함되어, 실시간 코드 완성 및 원활한 탐색이 가능합니다.

평범한 에디터 이상의 도구, Aqua

강력한 IDE인 Aqua에는 다음과 같이 QA 전문가의 일상적 업무에 필요한 모든 기능이 있습니다.

  • 데이터베이스 관리 기능: 여러 데이터베이스에 연결하고 애플리케이션 데이터를 준비 및 검사할 수 있습니다.
  • 에디터 기반 HTTP 클라이언트: 복잡한 HTTP 요청을 실행하고 어설션을 수행한 후 팀에 간편하게 공유하고, CI/CD 시스템에서 실행할 수 있습니다.
  • 컨테이너 실행, 모니터링 및 구성을 위한 Docker 지원.
  • VCS, 터미널 등.

Playwright 지원은 중요한 업데이트입니다. 이번 버전의 Aqua를 사용해 보세요. 이 기능은 공개 테스트 버전으로 지원되므로 문제가 있을 경우 이슈 트래커에 보고해 주세요.

피드백 양식을 사용하여 피드백을 공유하거나 질문을 보내주세요. Toolbox App이나 웹사이트를 통해 최신 테스트 버전 빌드를 다운로드할 수 있습니다.

최신 개선 사항을 확인하려면 블로그를 구독하고 Twitter 계정도 팔로우해 주세요.

자동화된 테스트가 순조롭게 실행되길 바랍니다!

Aqua 팀 드림

게시물 원문 작성자

Jessie Cho

Oscar Rodriguez

]]>
https://blog.jetbrains.com/ja/qa/2023/06/playwright-support-arrives-to-jetbrains-aqua/ https://blog.jetbrains.com/qa/2023/06/playwright-support-arrives-to-jetbrains-aqua/
Fleet 1.19, AI Assistant 및 간편한 rust-analyzer, Python 인터프리터, npm 구성 https://blog.jetbrains.com/ko/fleet/2023/06/fleet-1-19-ai-powered-features-and-easier-configuration-for-rust-analyzer-python-interpreters-and-npm/ Mon, 12 Jun 2023 03:23:59 +0000 https://blog.jetbrains.com/wp-content/uploads/2023/06/DSGN-16684-Featured-Blog-image-1280x720-2x-KOR.png https://blog.jetbrains.com/?post_type=fleet&p=362579 이제 Toolbox App에서 Fleet 1.19 업데이트를 다운로드할 수 있습니다. 이번 업데이트는 일반적인 개선 및 변경 사항 외에도 한 가지 주요 추가 사항이 있다는 점에서 특별합니다.

Fleet에 AI 기반 지원을 추가했습니다! 이 초기 구현에는 OpenAI API를 통해 생성형 AI의 도움을 받아 작동하는 몇 가지 새로운 기능이 포함되어 있습니다. Fleet은 아키텍처와 UX 측면 모두에서 상당히 많은 실험을 하고 있는 제품인 만큼, 여러분의 피드백이 필요합니다.

Fleet 1.19에서 시도해 볼 수 있는 초기 AI 지원 기능은 다음과 같습니다.

  1. 인라인 AI 프롬프트. Cmd+./Ctrl+.를 누르거나 코드 파일의 아무 위치에서나 ‘Generate Code’를 호출하고 필요한 내용을 작성하면 됩니다. Fleet AI가 적절한 코드 위치에 가장 적합한 코드를 삽입하며, 사용자가 이를 수락하거나 재생성할 수 있습니다.
    Fleet 1.19: 인라인 AI 프롬프트
  2. 커밋 메시지 생성. Fleet AI가 사용자의 변경 사항에 대한 설명을 작성하고 검토와 커밋을 할 수 있습니다. 팀원을 행복하게 해주세요!
    Fleet 1.19: 커밋 메시지 생성
  3. 커밋 설명. 중요한 변경 사항이 있는 커밋의 내용을 자세히 알고 싶으신가요? Fleet AI Assistant는 설명하는 데 능숙합니다.
    Fleet 1.19: 커밋 설명
  4. 문서 생성. 문서에서 도움이 될만한 코드를 찾을 때 언제든지 코드를 추가하거나 Fleet AI에게 도움을 요청할 수 있습니다.
    Fleet 1.19: 문서 생성
  5. AI 채팅. Fleet AI Assistant는 프로그래밍 주제에 관심이 있고 꽤 많이 알고 있습니다. 사용해 보세요! Fleet에 새로운 유형의 AI 채팅 도구 창이 추가되어 채팅 내용을 기록하고 나중에 다시 확인할 수 있습니다.
    Fleet 1.19: AI 채팅
  6. 코드 설명. 코드는 언뜻 복잡해 보일 수 있습니다. Fleet은 여러분의 이해를 도와줄 수 있으며 1~2개 요령을 알려줄 수도 있습니다. 코드 조각을 선택하고 ‘Explain Code(코드 설명)’를 호출하세요. Fleet이 새로운 채팅 창을 열고 여기에 설명이 표시됩니다. 필요한 경우 추가로 질문할 수 있으며 나중에 참조할 수 있도록 채팅 내용이 저장됩니다.
    Fleet 1.19: 코드 설명
  7. 터미널 지원. 뭔가에 대한 터미널 명령이 기억나지 않은 경험이 있으신가요? 터미널을 열고 Cmd+./Ctrl+.을 누른 다음 어시스턴트에게 물어보세요. IDE를 닫거나 --help를 샅샅이 읽을 필요가 없습니다.
    Fleet 1.19: 터미널 지원
  8. 터미널에 복사. Fleet AI Assistant가 채팅 답변에 Shell 명령을 제공한 경우, 한 번의 클릭으로 해당 명령을 터미널에 복사할 수 있습니다. 간단히 Enter 키를 눌러 명령을 실행하세요.
    Fleet 1.19: 터미널 지원

향후 업데이트에서 더 많은 기능이 제공될 예정입니다!

작동 방식

새로운 기능을 최대한 쉽게 사용해 볼 수 있도록 새로운 JetBrains AI 서비스에 대한 테스트 버전을 제공합니다. 이는 제품 사용자 여러분을 다양한 LLM(대형 언어 모델)과 투명하게 연결하고 많은 JetBrains 제품 내에서 특정 AI 기반 기능을 활성화하는 중요한 입구 역할을 합니다. JetBrains AI 서비스는 현재 OpenAI와 JetBrains에서 만든 몇몇 모델을 호스팅하고 있으며 나중에 더 많은 모델을 통합할 계획입니다. IntelliJ 기반 IDE 및 ReSharper에 대한 지원도 곧 제공될 예정입니다.

이 접근 방식은 향후 더 많은 모델을 통합할 수 있는 유연성을 제공하고 사용자가 가능한 최상의 옵션과 모델을 이용할 수 있게 해줍니다. AI 기반 기능은 이미 사용 중인 도구 내에 표시되며 기본적으로 통합되어 있으므로 필요에 따라 기능에 액세스하는 시간과 노력을 절약할 수 있습니다. 

일부 사용자는 JetBrains AI 서비스를 즉시 사용하지 못할 수도 있습니다. 일정 수의 사용자를 수용하고 최대 수용 인원에 도달하면 나머지 분들은 대기자 명단에 추가됩니다. 앞으로 몇 주에 걸쳐 제품을 사용해 볼 수 있도록 점차 더 많은 사람들을 초대할 예정입니다.

JetBrains가 코드와 데이터를 처리하는 방식

JetBrains는 코드와 데이터를 처리할 때 투명성의 중요성을 잘 알고 있습니다. JetBrains는 사용자의 데이터를 읽거나 저장하지 않으며 모델을 학습하는 데 사용하지 않습니다. Fleet이 LLM 모델 및 서비스 제공업체(예: OpenAI)로 데이터를 보낸 다음 결과를 받는 방식으로 작업이 이루어집니다. 사용자가 입력하는 프롬프트 외에도 Fleet은 코드 조각, 파일 유형, 사용된 프레임워크 및 LLM에 컨텍스트를 제공하는 데 필요할 수 있는 기타 정보와 같은 추가 정보를 보낼 수 있습니다. 자세한 내용은 JetBrains AI 서비스 이용 약관 및/또는 개인정보 처리방침을 참조하세요.

새로운 AI 기반 지원을 이용하는 방법

Fleet 1.19를 시작하면 전용 AI 채팅 도구 창이 열립니다. 이 도구 창에서 JetBrains AI 서비스에 로그인해야 합니다. JetBrains Account로 로그인하거나 간단히 새 계정을 만들 수 있습니다. 로그인하면 위에서 언급한 모든 기능에 액세스할 수 있습니다.

에디터에서 사용할 수는 기능 외에도, Git 기록과 같이 UI의 다양한 부분에서 사용할 수 있는 기능도 있습니다. Fleet의 Actions(액션) 팔레트에서 많은 액션을 찾고 실행할 수 있다는 점을 잊지 마세요. “AI Chats History(AI 채팅 기록)”과 같은 AI 지원 액션도 있습니다. Fleet 기능을 사용해 볼 때 별표 ✨를 찾아보세요. 이 표시는 UI에서 AI를 지원하는 기능과 액션을 뜻합니다.

하지만 여기서 끝이 아닙니다!

위의 기능을 바로 사용해 보고 싶겠지만 1.19에는 아직 소개하고 싶은 몇 가지 다른 중요한 변경 사항이 포함되어 있습니다.

많은 요청에 부응하여 npm 및 Node.js 실행 구성 사용 옵션을 추가했습니다. 이번 업데이트에서는 프로젝트 구축, 테스트 실행 및 기타 필요한 작업 수행을 위한 프로세스가 크게 단순화되었습니다. npm 또는 Node.js를 구성하기가 상당히 쉬워졌습니다.

Fleet 1.19: npm 및 Node.js 실행 구성

검색 결과를 탐색할 때 미리보기에서 해당 텍스트를 찾기 어렵다는 피드백을 받았습니다. 밝게 강조 표시하는 것으로 이 문제를 해결했습니다. 이제 가장 관련성이 높은 정보를 정확히 찾기가 훨씬 쉬워졌습니다.

Fleet 1.19: 검색 결과를 더 효과적으로 표시

Fleet 1.19에서는 Fleet의 settings.json 파일에 rust-analyzer 설정을 추가할 수 있도록 했습니다. rust-analyzer 설명서에 설명된 항목을 홈 또는 프로젝트 settings.json 파일에 추가하여 rust-analyzer를 맞춤화하세요.

Fleet 1.19: Rust analyzer

이제 이름 변경, 폴더 생성, 복사와 같은 액션과 기타 변경 사항을 프로젝트 뷰의 축소된 디렉터리 노드에서 실행할 수 있습니다. 이 향상된 기능으로 생산성이 향상되고 워크플로가 간소화되기를 바랍니다.

Fleet 1.19: 축소된 디렉터리에 대한 액션

Python 테스트 환경을 개선하기 위해 새로운 기능을 추가했습니다. 최신 업데이트로 이제 targetType, 지원 모듈 설명자 및 경로를 설정할 수 있습니다. 이제 여러 타깃도 지원되므로 특정 파일이나 디렉터리에서 보다 원활하게 테스트를 실행할 수 있습니다.

Fleet 1.19: Python 테스트 개선 사항

설정에서 Python 인터프리터를 쉽게 구분할 수 있도록 업데이트 했습니다. 이 개선 사항 덕분에 Python 인터프리터를 한 눈에 빠르게 식별하고 관리할 수 있습니다.

Fleet 1.19: Python 인터프리터 구분

이번 업데이트는 Fleet에 많은 중요 개선 사항이 적용된 굵직한 업데이트입니다. 여러분의 마음에 드셨으면 좋겠습니다! 변경 사항 전체 목록은 전체 릴리스 노트를 참조하세요.

문제가 발견되면 이슈 트래커에 보고해 주세요. 그리고 앞으로의 새로운 소식을 기대해 주세요.

업데이트를 다운로드하려면 Toolbox App에서 Fleet 버전 1.19를 설치하세요.

추신: 플러그인 지원과 플러그인 API에 대한 작업도 진행 중입니다. 곧 새로운 소식을 전해드릴 수 있기를 바랍니다.

JetBrains AI 관련 자주 하는 질문

  1. AI 기반 기능을 IntelliJ 기반 IDE 및 ReSharper에서 제공할 예정인가요?
    예. 이와 관련하여 새로운 소식을 계속 확인해 주세요.
  2. JetBrains IDE에서 AI Assistant의 가격은 얼마인가요?
    AI Assistant는 현재 테스트 버전 단계에서 무료로 사용할 수 있습니다. 라이선스 및 가격 모델은 추후에 제공할 예정입니다.
  3. JetBrains AI는 정확히 어떤 LLM을 사용하나요?
    모든 타사 서비스 제공업체와 해당 모델을 이 페이지에서 확인하실 수 있습니다. 그 외에 JetBrains에서 만든 모델도 일부 있습니다.
  4. 대기자 명단에 올라 있습니다. 언제쯤 액세스할 수 있나요?
    JetBrains AI를 사용할 수 있게 되면 즉시 이메일을 통해 알려드리겠습니다. 사용자에게 완벽한 경험을 제공하는 서비스가 되도록 만전을 기하려고 합니다. 앞으로 몇 달에 걸쳐 대기자 명단에 있는 분들을 점차적으로 초대하기 시작할 예정입니다. 액세스할 수 있는 정확한 날짜를 알려드리기는 어렵습니다.


JetBrains Tech Insights Lab에 참여하여 설문조사, 인터뷰 및 UX 연구에 참여해 주세요. 여러분의 참여는 더 나은 JetBrains Fleet을 만드는 데 큰 도움이 됩니다!

게시물 원문 작성자

Jessie Cho

Eugene Toporov

]]>
https://blog.jetbrains.com/pt-br/fleet/2023/06/fleet-1-19-ai-powered-features-and-easier-configuration-for-rust-analyzer-python-interpreters-and-npm/ https://blog.jetbrains.com/ja/fleet/2023/06/fleet-1-19-ai-powered-features-and-easier-configuration-for-rust-analyzer-python-interpreters-and-npm/ https://blog.jetbrains.com/fr/fleet/2023/06/fleet-1-19-ai-powered-features-and-easier-configuration-for-rust-analyzer-python-interpreters-and-npm/ https://blog.jetbrains.com/es/fleet/2023/06/fleet-1-19-ai-powered-features-and-easier-configuration-for-rust-analyzer-python-interpreters-and-npm/ https://blog.jetbrains.com/fleet/2023/06/fleet-1-19-ai-powered-features-and-easier-configuration-for-rust-analyzer-python-interpreters-and-npm/ https://blog.jetbrains.com/de/fleet/2023/06/fleet-1-19-ai-powered-features-and-easier-configuration-for-rust-analyzer-python-interpreters-and-npm/
TeamCity On-Premises 가격 인상에 대한 안내 https://blog.jetbrains.com/ko/teamcity/2023/06/increased-pricing-for-teamcity-on-premises/ Fri, 09 Jun 2023 03:09:45 +0000 https://blog.jetbrains.com/wp-content/uploads/2023/06/tc-featured_blog_1280x720-2.png https://blog.jetbrains.com/?post_type=teamcity&p=362157 2006년 TeamCity가 출시된 이후 수많은 새로운 기능이 추가되고 제품의 기능이 크게 확장되었습니다. TeamCity의 가격은 15년 넘게 인상되지 않았으며 JetBrains는 갱신 시 50% 할인된 가격으로 온프레미스 CI/CD 솔루션을 제공하는 몇 안 되는 회사 중 하나입니다.

계속해서 성장하는 JetBrains 팀을 지원하고, 릴리스 주기를 단축하며, 추가적인 기본 통합 기능을 개발하고, 모든 고객에게 빠르고 더 나은 지원을 제공하기 위해 TeamCity On-Premises의 신규 라이선스와 기존 라이선스 갱신 가격을 모두 인상하기로 결정했습니다.

가격 인상은 다른 라이선스 모델을 따르는 TeamCity Cloud가 아닌 TeamCity On-Premises에만 영향을 미칩니다. TeamCity On-Premises의 새로운 가격은 2023년 9월 1일부터 적용됩니다. TeamCity 가격 페이지에서 새 가격과 현재 가격을 모두 확인할 수 있습니다.

현재 가격으로 기존 라이선스 갱신

일반적으로 TeamCity On-Premises 라이선스 갱신은 최대 1년 전까지만 허용됩니다. 즉, 기존 TeamCity Enterprise 또는 TeamCity Build Agent 라이선스의 유지 관리 기간이 오늘부터 1년 이내에 만료되도록 설정된 경우 해당 라이선스를 1년 더 갱신할 수 있습니다.

그러나 현재 갱신 가격의 혜택을 더 오래 받을 수 있도록 고객에게 임시적으로 특별 혜택을 제공합니다. TeamCity Enterprise 또는 TeamCity Build Agent 라이선스의 유지 관리 기간이 오늘부터 2년 이내에 만료되는 경우, 해당 라이선스를 현재 가격으로 1년 더 갱신할 수 있습니다. 이 특별 혜택은 2023년 8월 31일 이전에 접수된 주문에만 적용됩니다.

예: TeamCity Enterprise 또는 TeamCity Build Agent 라이선스의 유지 관리 기간이 2024년 4월 30일까지 유효한 경우, 지금 선불로 지불하고 2026년 4월 30일까지 추가로 2년 동안 현재 요금으로 라이선스를 연장할 수 있습니다.

이 특별 혜택에는 선불 결제가 필요하며, 현재 가격으로 1년을 추가적으로 갱신할 수 있습니다.

가격 인상이 누구에게도 반길만한 일이 아니라는 사실을 잘 알고 있습니다. 가격 인상을 최소화하기 위해 계속해서 최선을 다하겠습니다.

앞으로 몇 주 동안 모든 고객에게 연락을 취하여 이 소식을 알려 드릴 예정입니다.

감사합니다.

게시물 원문 작성자

Jessie Cho

Yegor Naumov

]]>
https://blog.jetbrains.com/pt-br/teamcity/2023/06/increased-pricing-for-teamcity-on-premises/ https://blog.jetbrains.com/ja/teamcity/2023/06/increased-pricing-for-teamcity-on-premises/ https://blog.jetbrains.com/fr/teamcity/2023/06/increased-pricing-for-teamcity-on-premises/ https://blog.jetbrains.com/es/teamcity/2023/06/increased-pricing-for-teamcity-on-premises/ https://blog.jetbrains.com/teamcity/2023/06/increased-pricing-for-teamcity-on-premises/ https://blog.jetbrains.com/de/teamcity/2023/06/increased-pricing-for-teamcity-on-premises/
2023년 개발자 에코시스템에 관한 설문조사에 참여하세요 https://blog.jetbrains.com/ko/blog/2023/06/09/take-part-in-the-developer-ecosystem-survey-2023/ Fri, 09 Jun 2023 02:49:49 +0000 https://blog.jetbrains.com/wp-content/uploads/2023/06/Featured_Blog_1280x720-2.png https://blog.jetbrains.com/?post_type=blog&p=360937 2017년부터 JetBrains는 개발자 커뮤니티를 보다 깊이 있게 이해하고 제품과 도구를 개선하며 그 해의 업계 현황을 전체적으로 조망하기 위한 노력의 일환으로 연례 개발자 에코시스템 설문조사를 실시하고 있습니다. 올해도 다르지 않습니다!


2023년 개발자 에코시스템 설문조사가 시작되어 여러분의 참여를 기다립니다. 소프트웨어 개발 에코시스템에 대한 포괄적이고 독립적인 연구를 수행하려면 여러분의 귀중한 통찰력과 피드백이 필요합니다. 약 30분 정도 소요되는 설문조사에 참여하여 여러분의 개발자 이야기를 공유해 주세요.

설문조사는 10개 언어로 제공되며 다음의 경품 추첨에 응모할 수 있습니다.

  • MacBook Pro 16
  • NVIDIA GeForce RTX 4090 그래픽 카드
  • iPhone 14 Pro
  • $300 Amazon 상품권
  • JetBrains All Products Pack

여러분의 의견은 저희와 커뮤니티 전체에 큰 도움이 됩니다. 설문조사에 참여하여 여러분의 생각을 공유해 주세요. 설문 조사를 시작하려면 아래 링크를 클릭하세요.

개발자 에코시스템 설문조사에 참여하기

많은 개발자가 참여할수록 설문조사에 커뮤니티의 현재가 더 정확하게 반영됩니다. 설문조사를 친구 및 동료와 공유하고 추가 경품 추첨에 참여하세요. 설문조사 마지막 페이지에 추천용 링크가 있습니다.


이전과 마찬가지로 설문조사 결과 및 최신 기술과 소프트웨어 개발 동향에 관한 통찰력과 함께 상세한 인포그래픽을 공유할 예정입니다. 또한 여러분이 직접 분석해 볼 수 있도록 익명 처리된 원시 데이터를 제공합니다. 마지막으로, 커뮤니티의 다른 구성원과 자신이 어떻게 비교되는지 알아볼 수 있도록 모든 참가자에게 개인화된 인포그래픽을 준비할 예정입니다.

계속해서 설문조사에 참여하여 2023년 개발자 에코시스템의 현황을 파악하는 데 도움을 주세요. 여러분의 의견은 소중합니다!

감사합니다.

JetBrains Research 팀 드림

게시물 원문 작성자

Jessie Cho

Anastassiya Sichkarenko

]]>
https://blog.jetbrains.com/zh-hans/blog/2023/06/09/take-part-in-the-developer-ecosystem-survey-2023/ https://blog.jetbrains.com/pt-br/blog/2023/06/09/take-part-in-the-developer-ecosystem-survey-2023/ https://blog.jetbrains.com/ja/blog/2023/06/09/take-part-in-the-developer-ecosystem-survey-2023/ https://blog.jetbrains.com/fr/blog/2023/06/09/take-part-in-the-developer-ecosystem-survey-2023/ https://blog.jetbrains.com/es/blog/2023/06/09/take-part-in-the-developer-ecosystem-survey-2023/ https://blog.jetbrains.com/blog/2023/06/09/take-part-in-the-developer-ecosystem-survey-2023/ https://blog.jetbrains.com/de/blog/2023/06/09/take-part-in-the-developer-ecosystem-survey-2023/
Compose Multiplatform for iOS 알파 버전 출시 https://blog.jetbrains.com/ko/kotlin/2023/05/compose-multiplatform-for-ios/ Tue, 30 May 2023 02:51:07 +0000 https://blog.jetbrains.com/wp-content/uploads/2023/05/compose-blog-featured-image-ko-1280x600-1.png https://blog.jetbrains.com/?post_type=kotlin&p=358191 Kotlin으로 크로스 플랫폼 사용자 인터페이스를 만들 수 있는 JetBrains만의 선언형 프레임워크인 Compose Multiplatform에서 이제 iOS를 지원합니다! 즉, Compose Multiplatform에서 사용자 인터페이스를 100% Kotlin으로 한 번만 빌드하면 Android, iOS 등에서 사용할 수 있습니다.

이번 릴리스에서 주목해야 할 점은 간략하게 다음과 같습니다.

  • Compose Multiplatform for iOS가 알파 버전으로 출시되어, 실험용으로 또는 취미 프로젝트에서 사용할 수 있습니다. 사용해 보시고 Kotlin으로 공유하는 모바일 사용자 인터페이스의 미래를 만들어 보세요!
  • Compose Multiplatform은 Android에서 이미 UI 개발에 사용되고 있는 API를 활용합니다. 따라서 Android 개발자도 Compose Multiplatform for iOS를 빠르고 손쉽게 시작할 수 있습니다. 처음 시작하는 개발자도 기존의 개념과 모범 사례를 바탕으로 학습할 수 있습니다.
  • Compose Multiplatform for iOS는 알파 버전 릴리스이기에 아직 작업이 진행 중인 부분이 많습니다. 공유 Kotlin 사용자 인터페이스의 미래를 만들고 알리기 위해서는 커뮤니티의 도움이 필요합니다. 그러니 한번 사용해 보시고 피드백을 공유해 주세요!

Compose for iOS 시작하기

JetBrains는 Compose Multiplatform for iOS를 KotlinConf 2023에서 처음으로 발표했습니다. 실제 Compose Multiplatform for iOS가 실행되는 모습을 자세히 보고 싶으신 경우 Sebastian Aigner와 Nikita Lipsky의 “Compose Multiplatform for iOS” 발표 영상을 참고하세요.

비즈니스 로직을 넘어 한 단계 더 발전한 Kotlin Multiplatform

Kotlin Multiplatform에서 Kotlin 개발자들은 이미 검증된 방식으로 코드를 공유하고 있습니다. 플랫폼별 API 및 기능에 대한 액세스를 포기할 필요 없이 다양한 플랫폼에서 비즈니스 로직을 공유할 수 있습니다. 이는 프로덕션 상태의 수많은 애플리케이션에서 검증된 방식으로서 점점 더 많은 회사가 이를 활용해 애플리케이션 내 불필요한 중복 로직을 없애고 있습니다.

그러나 이때까지 Kotlin Multiplatform에는 매우 중요한 부분 하나가 누락되어 있었습니다. 타깃 플랫폼마다 별도의 사용자 인터페이스를 빌드하고 유지하고 싶지 않을 때 필요한 솔루션이 바로 그것이었습니다. 여러분의 상황일 수도 있는 이것이 필요한 이유는 여러 가지입니다. 각 타깃 플랫폼에 맞게 구현할 리소스나 인력이 부족해서일 수도 있고, 애플리케이션을 사용자에게 최대한 빨리 배포하고 빠르게 반복해야 하는 상황이라 둘 이상의 UI를 동기화하며 일일이 구현할 시간이 없어서일 수도 있습니다.

Compose Multiplatform은 이 문제를 해결합니다. 여기에서 사용자 인터페이스를 한 번 구현하면 모든 타깃 플랫폼에서 사용할 수 있습니다. 이는 Android 및 iOS 간에 공유되어야 하는 일반적인 모바일의 경우나 데스크탑 또는 웹과 같은 추가 플랫폼이 포함되어야 하는 경우를 모두 아우릅니다.

Compose Multiplatform은 Kotlin Multiplatform 애플리케이션을 위한 선택적 레이어로서, 이를 이용해 선언형 사용자 인터페이스를 한 번 빌드하면 여러 타깃 플랫폼에서 사용할 수 있습니다.

Jetpack Compose에서 빌드

Compose Multiplatform은 100% Kotlin으로 된 최신 Android 개발에 권장되는 UI 프레임워크인 Google의 Jetpack Compose를 기반으로 빌드됩니다. Compose Multiplatform을 개발하는 JetBrains 팀은 Google과 협력하며 변경 사항을 정기적으로 Jetpack Compose 저장소에 올립니다.

Compose Multiplatform의 API는 Jetpack Compose에서 이미 검증된 API입니다. 따라서 Jetpack Compose를 사용하여 최신 Android 사용자 인터페이스를 만들어 본 경험이 있는 개발자라면 자신의 기술을 그대로 활용하여 Compose Multiplatform으로 iOS와 기타 플랫폼을 대상으로 공유 사용자 인터페이스를 작성할 수 있습니다.

API가 정말 같다는 점을 설명드리기 위해, 사용자가 버튼을 누를 때마다 이미지의 가시성이 변화되도록 하는 Compose Multiplatform 코드의 스니펫을 예시로 살펴보겠습니다.

Jetpack Compose를 이전에 써 본 경험이 있다면 코드의 상당 부분이 익숙하실 겁니다. Compose Multiplatform을 사용하면 상태 관리, 레이아웃 및 애니메이션을 포함한 최신 Android 개발에 사용되는 똑같은 API를 활용할 수 있습니다. 리소스 로드와 같이 Jetpack Compose에서 특정 시스템에 한정되어 있는 작업의 경우, Compose Multiplatform은 위의 스니펫에 있는 painterResource 함수처럼 모든 플랫폼에서 활용할 수 있는 편리한 대안을 제공합니다.

보시다시피 이 코드는 Android 및 iOS 모두에서 실행되며 결과도 일관됩니다.

iOS에서는 그래픽 라이브러리인 Skiko 기반의 캔버스 구현을 통해 Compose Multiplatform 사용자 인터페이스가 랜더링됩니다. Android에서 Compose Multiplatform은 Jetpack Compose입니다. 이는 애플리케이션을 특정 플랫폼의 UI로 이전하려는 경우에도 어떠한 제약을 받거나 작성한 코드를 버리는 일 없이 Android 기반의 Compose Multiplatform 애플리케이션을 계속 사용할 수 있다는 의미입니다.

Kotlin Multiplatform에서 빌드

Compose Multiplatform으로 빌드된 앱은 Kotlin Multiplatform 애플리케이션입니다. 따라서 동일한 기존의 검증된 메커니즘을 사용하여 센서, 환경 설정, 데이터 저장, 암호화 등과 같은 플랫폼 API에 액세스할 수 있습니다. 또한 데이터베이스 래퍼부터 SDK용 크로스 플랫폼 래퍼까지 무엇이든 제공하는 Kotlin Multiplatform 라이브러리도 활용할 수 있습니다. 물론, Kotlin Multiplatform을 Compose Multiplatform과 독립적으로 계속 사용하며 비즈니스 로직, 네트워크 및 기타 추상화된 항목을 공유할 수도 있습니다.

SwiftUI 및 UIKit 뷰와의 상호호환성

실제 애플리케이션에는 기기에 맞는 기능이 필요하며, 상당수의 경우 UI 레이어도 예외가 아닙니다. 브라우저를 임베드하거나 영상을 재생할 때, iOS의 기본 기능에 액세스하여 사용자 경험을 다양하게 구성하고 싶을 때가 있습니다.

이런 상황을 위해 Compose Multiplatform의 알파 버전에는 양방향 상호 호환성을 지원하는 프로토타입이 UI 레이어에 탑재되어 있습니다. UIKitView를 사용하면 지도, 웹 뷰, 미디어 플레이어 및 카메라 피드와 같은 복잡한 플랫폼별 위젯을 공유 사용자 인터페이스에 임베딩할 수 있습니다. 다른 방법으로, ComposeUIViewController를 이용하면 Compose Multiplatform 화면을 SwiftUI 애플리케이션에 임베딩하여 Compose Multiplatform을 점진적으로 iOS 애플리케이션에 적용할 수 있습니다.

iOS에서 Compose Multiplatform은 기본 사용자 인터페이스를 통해 양방향 상호운용성을 제공합니다. MapKit의 MKMapView와 같이 복잡한 UI 뷰를 Compose UI에 통합할 수도 있고 Compose 화면을 SwiftUI 애플리케이션에 임베딩할 수도 있습니다.

우수한 사용자 경험 만들기

Compose Multiplatform for iOS는 현재 알파 버전이므로 아직 작업 중인 영역이 많습니다. 여러 플랫폼에서 우수한 사용자 경험을 제공하려면 각고의 노력이 필요합니다. 또한, JetBrains 팀 모두는 Compose Multiplatform 애플리케이션이 어느 플랫폼에서든 편안하고 자연스럽게 느껴지도록 만드는 데 필요한 모든 측면을 확실히 해결하려고 합니다. 이러한 노력은 애플리케이션의 바탕 느낌을 좌우하는 제스처와 스크롤의 물리적 움직임과 같은 가장 기본적인 상호작용에서부터 시작하여, 내비게이션 원칙 및 전환이나 텍스트 선택, 입력 관리, 컨텍스트 메뉴와 같이 복잡하거나 유사한 상호작용으로까지 이어집니다.

또한 Compose Multiplatform 애플리케이션이 탄탄한 접근성 통합 기능을 제공해야 하며 사용자 선택을 존중해야 한다는 점을 저희는 인지하고 있습니다. 따라서 기본적인 iOS 메커니즘, 즉 시스템의 TTS 기능에서부터 사용자가 기기에서 설정한 확대/축소 및 대비 환경 설정에 이르는 모든 항목을 견고하게 통합하고자 노력하고 있습니다.

당연하게도 주의를 기울여야 할 다양하고도 광범위한 영역이 있습니다. 이러한 모든 영역에 최대한 주의를 기울임으로써 iOS 기반의 Compose Multiplatform이 최상의 사용자 경험을 제공할 수 있도록 하고자 합니다. 이 과정에서 저희는 사용자가 원하는 것을 최우선시하려고 하므로, 언제든지 여러분의 의견을 보내 주세요!

또한 저희는 고주사율의 화면에서 부드러운 성능을 확보하는 것이 좋은 사용자 경험을 구성하는 매우 중요한 요소라는 사실을 잘 알고 있습니다. 이를 위해 Compose Multiplatform 팀과 Kotlin/Native 팀은 서로 협력하여 공유 사용자 인터페이스의 iOS 성능을 개선하고 있습니다.

Compose Multiplatform for iOS에 테마 적용

iOS 기반 Compose Multiplatform은 캔버스 기반의 렌더링을 사용하고 있기 때문에 iOS와 Android 애플리케이션은 기본적으로 외관이 동일합니다. 현재 Compose Multiplatform은 Material 및 Material 3 위젯을 모든 플랫폼에서 기본적으로 제공합니다. 이는 사용자가 Android 애플리케이션에서 익숙하게 봐온 위젯과 동일합니다. 내장된 테마 기능을 활용하여 위젯의 모양을 조정하여 브랜딩을 반영하고 모든 플랫폼에서 동일하게 설정하거나 플랫폼별로 테마를 적용할 수도 있습니다.

기본적으로 Compose Multiplatform으로 빌드된 모바일 앱은 Material 위젯을 탑재합니다. 디자인을 원하는대로 변경하고, 고유한 인터페이스 구성 요소를 빌드하고 플랫폼별로 테마를 지정할 수도 있습니다.

크로스 플랫폼 UI 프레임워크와 관련된 주요 질문 중 하나는 여러 요소가 타깃 플랫폼의 모양및 느낌과 얼마나 잘 어우러지는가입니다. 현재 단계에서 JetBrains 팀은 아직 네이티브 UI 요소를 제공할지 공통 요소를 제공할지 결정하지 않았습니다. 이는 Compose Multiplatform 사용자 경험에서 아주 중요한 부분이므로 개발 커뮤니티의 피드백을 먼저 모은 다음 결정하고자 합니다. 여러분의 의견과 생각을 공유해 주세요.

Compose Multiplatform for iOS를 사용해 보세요!

여러분도 Compose Multiplatform for iOS를 많이 사용해 보셨으면 좋겠습니다! 앞서 말씀드렸다시피 아직 작업 중인 부분이 많이 있지만, 잘 되는 기능도 많고 여러분이 테스트해 볼 수 있는 것도 많이 있습니다!

샘플 애플리케이션과 프로젝트 템플릿을 포함하여 여러분이 Compose Multiplatform for iOS의 알파 릴리스에 적응할 수 있는 다양한 방법이 제공됩니다.

템플릿으로 시작하기

Compose Multiplatform으로 Android 및 iOS 대상의 고유한 애플리케이션 작성을 가장 쉽게 시작하는 방법은 공식 GitHub 템플릿을 사용하는 것입니다. 여기에는 자체 튜토리얼이 포함되어 있어 첫 번째 Compose Multiplatform 앱을 만들고 실행해 볼 수 있습니다.

Compose for iOS 시작하기

데모 애플리케이션으로 Compose for iOS 살펴보기

새로운 기술을 살펴보는 좋은 방법은 샘플을 보는 것입니다. iOS 및 다른 타깃 플랫폼 기반의 Compose Multiplatform을 시연하는 다양한 예시 프로젝트가 준비되어 있습니다. 예시 프로젝트는 Compose Multiplatform 저장소에서 확인할 수 있습니다.

샘플 프로젝트 살펴보기

Kotlin Multiplatform Mobile Production Sample과 같은 샘플 프로젝트에는 Compose Multiplatform 기반의 UI 구현이 포함된 브랜치가 있습니다. 이를 통해 앱 간에 비즈니스 로직만 공유하는 경우와 애플리케이션의 UI 레이어까지 공유하는 경우의 차이점과 유사점을 비교해 볼 수 있습니다.

의견을 공유해 주세요!

iOS 기반 Compose Multiplatform은 알파 버전이며 여러분의 요구사항을 반영하여 계속 발전시키려고 합니다.

문제를 보고하거나, 누락된 API에 관해서 알려주시거나, 원하는 기능을 요청하면 저희에게 큰 도움이 됩니다. 프로젝트 이슈 트래커를 통해 알려주시면 저희에게 큰 도움이 됩니다.

다른 Compose Multiplatform 팀이나 다른 개발자와 이야기하고 싶은 경우 Kotlin Slack에 참여하여 논의해 보시기 바랍니다. #compose-ios 채널에서는 Compose Multiplatform for iOS와 관련된 논의를 확인해 보실 수 있습니다. #compose 채널에서는 Compose Multiplatform 및 Jetpack Compose와 관련된 일반적인 주제를 논의하실 수 있습니다.

앞으로 여러분들이 Compose Multiplatform으로 무엇을 빌드하실지 기대됩니다!

기타 참고 자료

게시물 원문 작성자

Jessie Cho

Sebastian Aigner

]]>
https://blog.jetbrains.com/zh-hans/kotlin/2023/05/compose-multiplatform-for-ios/ https://blog.jetbrains.com/pt-br/kotlin/2023/05/compose-multiplatform-for-ios/ https://blog.jetbrains.com/ja/kotlin/2023/05/compose-multiplatform-for-ios/ https://blog.jetbrains.com/fr/kotlin/2023/05/compose-multiplatform-for-ios/ https://blog.jetbrains.com/es/kotlin/2023/05/compose-multiplatform-for-ios/ https://blog.jetbrains.com/kotlin/2023/05/compose-multiplatform-for-ios/ https://blog.jetbrains.com/de/kotlin/2023/05/compose-multiplatform-for-ios/
IntelliJ IDEA의 ‘빠른’ 기능 https://blog.jetbrains.com/ko/idea/2023/05/quick-features-in-intellij-idea/ Tue, 30 May 2023 02:28:02 +0000 https://blog.jetbrains.com/wp-content/uploads/2023/04/blog-cover.png https://blog.jetbrains.com/?post_type=idea&p=357503 몇 가지 IntelliJ IDEA 기능 또는 액션에는 ‘quick'(빠른)이라는 용어가 포함됩니다. 특정 프로세스의 속도를 높인다는 의미일까요? 그러면 한 번 알아봅시다. 이 블로그 글에서는 이러한 기능이 무엇이며, 왜 필요하고, 어떻게 사용할 수 있는지에 대해 설명합니다.

1. 빠른 목록

자주 사용하는 액션이 있지만 대부분의 키 조합이 일반적으로 다른 단축키에 의해 사용되고 있어 여기에 할당된 단축키가 없는 경우, Quick Lists(빠른 목록)가 유용합니다.

Quick Lists를 사용하면 즐겨 이용하는 액션의 짧은 목록을 만들고 여기에 단축키 하나를 할당할 수 있습니다. 목록의 각 액션은 0에서 9까지의 숫자로 식별됩니다. 이 목록에 액세스하려면 단축키 하나와 목록의 각 액션에 대한 번호만 기억하면 됩니다.

새 목록을 만들려면 설정에 액세스하고 ‘Appearance and Behavior'(모양 및 동작)에서 ‘Quick Lists'(빠른 목록)를 찾으세요.

새 목록을 만들고 여기에 이름과 간단한 설명을 지정합니다. 그런 다음 키맵으로 이동하여 방금 만든 목록에 단축키를 할당합니다. 실제로 사용해야 할 때 이 목록의 이름이 기억나지 않더라도 걱정하지 마세요. 단축키로 목록에 액세스하거나 ‘search everywhere'(전체 검색)를 이용하여 찾아서 사용할 수 있습니다. 다음 gif는 이러한 단계를 보여줍니다.

IntelliJ IDEA는 ‘Refactor this’(다음을 리팩터링), ‘VCS operations’(VCS 작업) 등과 같은 사전 정의된 목록도 제공하지만 이러한 목록을 수정할 수는 없습니다.

2. 구성 빠른 전환(Ctrl + ‘)

Quick Switch Scheme(빠른 구성표 전환)은 전체 테마, 에디터 색 구성표, 키맵, 뷰 모드, 확대/축소 등과 같은 IDE의 다양한 표시 구성표 사이에서 빠르게 전환할 수 있는 방법을 편리하게 사전 정의한 기능 목록입니다.

단축키(Windows/Linux의 경우 Ctrl + ~, macOS의 경우 Cmd + ~)를 사용하거나 ‘Quick Switch Scheme’ 액션 찾기를 사용하여 이 기능을 불러올 수 있습니다.

‘Theme'(테마) 옵션을 선택하면 IDE에서 사용할 수 있는 테마를 순환하며 표시할 수 있습니다. 선택한 테마에서 3초 동안 기다리면 테마를 선택하기 전에 해당 테마가 어떻게 표시되는지 확인할 수 있습니다. 여기에서 새 테마를 설치할 수도 있습니다.

키맵 옵션을 사용하면 현재 키맵을 사용 가능한 다른 옵션 목록으로 바꿀 수 있습니다. 필요하면 키맵을 구성하거나 설치할 수도 있습니다.

뷰 모드를 사용하면 프레젠테이션 모드, 집중력 분산 방지 모드, 전체 화면, 젠 모드 및 콤팩트 모드의 5가지 사전 정의된 뷰 모드를 전환할 수 있습니다. 기본적으로 IDE는 이러한 모드에 단축키를 할당하지 않지만 사용자가 단축키를 지정하면 여기에 표시됩니다.

확대/축소 옵션을 사용하면 IDE의 전체 글꼴 크기를 늘릴 수 있습니다. 이 옵션은 동료나 다른 사람에게 코드를 보여주고 IDE 전체에서 확대/축소를 변경하려는 경우에 매우 편리합니다.

3. 빠른 정의

프로젝트에서 ShoppingCart라는 클래스를 스크롤하다가 또 다른 타입인 ShoppingItem의 내용이 궁금해졌다고 가정해 보세요. 코딩 흐름을 잃지 않고 그 내용을 읽을 수 있는 방법이 있을까요? Go to Declaration(선언으로 이동) 기능을 사용하여 ShoppingItem 클래스의 소스 코드로 이동할 수 있지만 이렇게 하면 해당 소스 코드가 다른 창에서 열리므로 코딩 흐름이 끊어집니다.

대신 Quick Definition(빠른 정의) 기능을 사용하면 에디터 창에서 팝업으로 다른 타입(클래스, 인터페이스, 레코드, 열거형 등)의 정의를 열 수 있습니다. 타입에 커서를 놓고 ‘Quick Definition’을 불러오기만 하면 됩니다(단축키 – Win/Linux의 경우 Ctrl+Shift+I, macOS의 경우 Cmd+Shift+I, 또는 기본 메뉴에서 View(보기) | Quick Definition 클릭).

다음은 이 작업을 보여주는 gif입니다.

긴 메서드를 읽을 때 흔히 발생하는 일이지만, 변수가 정의된 위치나 방식을 기억하지 못할 수도 있습니다. 이 기능을 사용하면 프로젝트에서 클래스, 필드, 메서드, 함수 또는 태그와 같은 심볼이 정의된 위치와 내용을 확인할 수 있습니다. 더 많이 사용되는 ‘Go to declaration’ 기능을 사용하면 흐름이 끊어질 수 있습니다. 다음 gif와 같이 Quick Definition을 사용하는 것이 더 좋습니다.

Quick Definition을 사용하면 타입에 대한 문서, 즉 /**로 시작하고 */로 끝나는 Javadoc 주석이 표시되지 않습니다. 그러나 여러 줄 주석(/*로 시작하여 */로 끝남) 및 //로 시작하는 한 줄 주석과 같은 다른 주석은 표시됩니다.

이와 비슷하게 타입의 문서를 볼 수 있는 방법이 있을까요? 예, 있습니다! Quick documentation(빠른 문서)이 바로 답입니다.

4. 빠른 문서(Ctrl + Q)

‘Quick documentation'(빠른 문서)을 사용하여 에디터 창의 팝업에 표시되는 타입의 JavaDoc 문서를 볼 수 있습니다.

타입 목록의 인스턴스 변수를 정의하는 클래스인 ShoppingCart의 소스를 탐색하는 중에, 클래스가 목록에서 add 메서드를 호출한다고 생각해 보세요. 여러분은 이 메서드의 코드를 살펴보는 대신 문서에 add 메서드가 어떻게 설명되어 있는지 알고 싶을 것입니다.

이를 위해 커서를 메서드 호출 add로 이동하고 단축키 Ctrl+Q(Windows/Linux의 경우) 및 Cmd+Q(macOS의 경우)를 사용할 수 있습니다. 다음 gif는 이 작업을 보여줍니다.

요약

‘Quick’ 기능은 매우 유용할 수 있습니다.

Quick Lists(빠른 목록)는 배포 또는 코드 데모와 같이 작업과 관련된 액션을 그룹화하는 데 도움을 줄 수 있습니다. Quick Switch Scheme(구성 빠른 전환)은 IDE의 다양한 UI 요소, 테마, 보기, 키맵, 확대/축소 등을 전환하는 액션을 포함한 목록입니다.

Quick Definition(빠른 정의) 및 Quick Documentation(빠른 문서)을 통해 클래스, 메서드, 변수 등의 정의 또는 문서를 IDE의 팝업에서 참조할 수 있습니다. 그러면 별도의 창에서 클래스의 소스 코드로 이동할 때 코딩 흐름이 끊어지는 것을 방지할 수 있습니다.

즐겁게 개발하세요!

게시물 원문 작성자

Jessie Cho

Mala Gupta

]]>
https://blog.jetbrains.com/zh-hans/idea/2023/05/quick-features-in-intellij-idea/ https://blog.jetbrains.com/idea/2023/05/quick-features-in-intellij-idea/
KotlinConf 2023: 녹화 동영상 보기 https://blog.jetbrains.com/ko/kotlin/2023/05/kotlinconf-2023-recordings/ Tue, 16 May 2023 03:55:26 +0000 https://blog.jetbrains.com/wp-content/uploads/2023/05/DSGN-16229-Banners-for-KotlinConf-recordings2_Blog-Featured-image-1280x600-KO.png https://blog.jetbrains.com/?post_type=kotlin&p=353121 이제 KotlinConf 2023 세션의 녹화 동영상을 시청할 수 있습니다!

아직 강연을 보지 못했거나 좋아하는 강연을 다시 보고 싶다면 콘퍼런스 사진과 함께 KotlinConf 웹사이트에 올라온 모든 강연을 간단히 찾아 시청할 수 있습니다. 일부 세션의 슬라이드는 해당 강연을 클릭한 다음 ‘Download slides'(슬라이드 다운로드)를 클릭하여 액세스할 수 있습니다. Kotlin YouTube 채널에서도 모든 녹화 동영상을 찾아 시청할 수 있습니다.

KotlinConf는 2023년 4월 12~14일, 암스테르담에서 열렸으며 1,300명 이상의 참석자, 발표자 및 파트너가 참여했습니다. 4월 12일에는 하루 동안 실무 워크숍을 진행했습니다. 2일 차에는 Roman Elizarov, Svetlana Isakova, Egor Tolstoy, Grace Kloba의 기조 연설로 콘퍼런스가 시작되었습니다. 그리고 이어서 풍부한 콘텐츠로 구성된 5가지 트랙이 2일간 동시 세션으로 진행되었습니다. 마지막으로, Hadi Hariri와 발표자들이 현장과 온라인에서 들어오는 참석자들의 질문에 답하는 재미있고 유익한 폐막 패널이 있었습니다.

콘퍼런스와 관련된 다음 추가 자료도 놓치지 마세요.

  • 블로그 글에서 기조 연설의 주요 내용을 확인하세요.
  • 콘퍼런스에서 촬영된 프로그램인 KotlinConfersations를 시청하면, KotlinConf 발표자 Huyen Tue Dao가 진행하는 발표자 및 콘퍼런스 참석자와의 인터뷰를 확인할 수 있습니다. 

여러분이 원하는 시간에 언제든 KotlinConf 2023 녹화 영상을 시청하세요!

콘퍼런스에 관한 새로운 소식을 접하려면 Twitter에서 KotlinConf(@kotlinconf)를 팔로우하세요.

게시물 원문 작성자

Jessie Cho

Ksenia Shneyveys

]]>
https://blog.jetbrains.com/zh-hans/kotlin/2023/05/kotlinconf-2023-recordings/ https://blog.jetbrains.com/ja/kotlin/2023/05/kotlinconf-2023-recordings/ https://blog.jetbrains.com/fr/kotlin/2023/05/kotlinconf-2023-recordings/ https://blog.jetbrains.com/kotlin/2023/05/kotlinconf-2023-recordings/
Datalore Enterprise 2023.2 소개 https://blog.jetbrains.com/ko/datalore/2023/05/15/introducing-datalore-enterprise-2023-2/ Mon, 15 May 2023 03:21:10 +0000 https://blog.jetbrains.com/wp-content/uploads/2023/05/dl-release-blog-featured-image-1280x600-1.png https://blog.jetbrains.com/?post_type=datalore&p=352796 Datalore Enterprise 2023.2가 출시되었습니다! 이 버전은 R 사용자를 위한 기본 R 패키지 지원을 제공하고 Notebook 콘텐츠 검색, 환경 변수 관리 및 Report builder(보고서 작성기)의 유용성 개선을 통해 협업 데이터 과학의 경험을 향상합니다. 

이어지는 내용을 통해 Datalore Enterprise 2023.2의 새로운 기능을 알아보고 최신 버전으로 업그레이드 하세요!

2023.2로 업그레이드

기본 R 패키지 지원

열정적인 R 사용자를 위해 Datalore Enterprise 2023.2에 기본 R 패키지 지원을 도입했습니다. 이제 Environment manager(환경 관리자) 탭에서 바로 ‘install.packages’를 이용해 공개 및 비공개 R 패키지 저장소의 패키지를 쉽게 설치할 수 있습니다.

Datalore의 기본 R 패키지 지원

또한 Enterprise 고객은 R 커널을 사용하여 conda가 아닌 사용자 지정 기본 환경을 구성할 수 있습니다. 그러면 Environment manager 검색 결과에서 conda 패키지가 생략됩니다. 이러한 설치의 예는 여기에서 찾을 수 있습니다.

환경 변수 및 시크릿 지원 중단

이제 작업 공간 수준의 환경 변수 관리를 통해 팀과 키, 토큰 및 변수를 더 쉽고 투명하게 공유할 수 있습니다. 이와 유사한 기능을 하는 Secrets(시크릿)은 지원 중단했으며 전환을 간소화하기 위해 새 UI를 통해 원활한 마이그레이션 프로세스를 제공했습니다. 이 가이드에서 Secrets을 환경 변수로 마이그레이션하는 방법을 알아보세요.

Datalore의 환경 변수

Notebook 콘텐츠 검색

Datalore에서 특정 코드 섹션이나 정보를 찾기 위해 더 이상 끝없이 스크롤하고 검색할 필요가 없습니다! 새로운 Notebook 콘텐츠 검색 기능을 사용하여 이제 모든 작업 공간에서 변수 이름, 코드 및 텍스트를 검색할 수 있습니다. 검색 결과에서 해당 쿼리가 강조 표시되므로 필요한 부분을 빠르게 찾을 수 있습니다.

Datalore에서 Notebook 콘텐츠 검색

보고서 작성기에 대한 실행 취소다시 실행 액션

데이터 보고 프로세스에서 유연성과 제어 기능이 중요하다는 점을 잘 알고 있습니다. 그래서 Report Builder(보고서 작성기)Undo(실행 취소)Redo(다시 실행) 액션을 도입했습니다. 키보드 단축키(Ctrl+z / ⌘z) 또는 Report Builder의 UI 버튼을 사용하여 잘못된 부분을 수정하고 필요한 사항을 더 빠르고 쉽게 변경할 수 있습니다.

Datalore의 Report Builder에 대한 UndoRedo 액션

개선 및 버그 수정 사항

또한 Datalore Enterprise에 대한 전반적인 경험을 향상시키기 위해 몇 가지 품질을 개선하고 버그를 수정했습니다. Datalore Enterprise 관리자는 이제 모든 Datalore 작업 공간에 액세스할 수 있고, Datalore 에디터의 왼쪽으로 밀기 제스처가 비활성화되었으며, 리소스 사용량 계획이 꺼졌을 때 재배포 후 Notebook 계산이 올바르게 복구되고, Scala 커널 시작 문제가 해결되었습니다. 또한, 이제 DataFrame 다운로드 버튼이 Firefox에서 올바르게 작동하고 IPywidgets 렌더링 문제가 수정되었습니다.

Datalore Enterprise 2023.2를 사용해 보고 싶으신가요?

지금 Datalore Enterprise 2023.2로 업그레이드하고 완전히 새로운 수준의 생산성과 협업을 경험하세요!

2023.2로 업그레이드

Datalore의 새로운 기능에 대한 최신 정보를 받으려면, 블로그를 구독하고 Twitter를 팔로우하세요!

감사합니다.

Datalore 팀 드림

게시물 원문 작성자

Jessie Cho

Alena Guzharina

]]>
https://blog.jetbrains.com/datalore/2023/05/15/introducing-datalore-enterprise-2023-2/
Qodana 2023.1: 유연한 프로파일 구성, Kotlin/JS IR 컴파일러 마이그레이션 지원, Go 라이선스 호환성 검사, 플러그인 통합 및 30개 이상의 신규 검사 https://blog.jetbrains.com/ko/qodana/2023/05/qodana-2023-1/ Thu, 11 May 2023 05:41:28 +0000 https://blog.jetbrains.com/wp-content/uploads/2023/04/Blog_Featured_image_1280x600-3-1.png https://blog.jetbrains.com/?post_type=qodana&p=352787 현재 테스트 버전 상태인 Qodana는 JetBrains의 스마트한 코드 품질 플랫폼입니다. 강력한 정적 분석 엔진으로서 JetBrains IDE의 검사를 어느 CI 파이프라인으로든 가져올 수 있으며, 리소스를 많이 사용하는 검사는 CI 서버에서 실행하여 시간과 컴퓨팅 리소스를 절감해 줍니다. 또한 60개 이상의 기술과 무제한의 코드 줄 분석을 지원합니다.

신규 Qodana 릴리스에는 코드 품질을 최상으로 유지해주는 주요 개선 사항이 포함됩니다. 버전 2023.1에서는 더욱 유연하게 CI 파이프라인에서 정적 분석 단계를 진행할 수 있습니다. 프로젝트 검사 확인을 구성하기 위한 스마트한 방법이 추가되었으며, Qodana 정적 분석 엔진에 플러그인을 추가하는 손쉬운 방법도 구현되었습니다. 

계속 읽으면서 주요 업데이트의 전체 목록을 확인하거나 linter 관련 개선 사항으로 바로 이동하세요. 

Qodana 무료로 사용해보기

주요 업데이트 

신규 YAML 양식으로 유연하게 프로파일 구성

검사 프로파일은 Qodana 구성의 매우 중요한 부분입니다. 프로파일은 Qodana가 분석 중에 코드에 적용할 검사 세트를 정의합니다.

Qodana 2023.1 버전부터 유연한 프로파일 구성이 사람이 읽기 편한 YAML 서식으로 제공되어, 훨씬 더 간편하게 검사 프로파일을 사용자 지정하고 프로젝트 진행에 따라 조정할 수 있습니다. 다음은 분석을 세밀하게 설정할 수 있는 옵션입니다.

  • [신규] 검사를 그룹화하고 그룹을 관리. 
  • [신규] 기존 프로파일을 포함하고 새로운 프로파일 구성. 
  • 검사 활성화 및 비활성화.
  • 검사 매개변수 설정. 
  • 검사 범위 구성. 

예를 들어 Qodana for PHP linter에서 PhpDeprecationInspection 검사를 제외하고 PHP/일반 검사 카테고리를 사용하여 코드를 검사할 수 있습니다.

name: "PHP/General without PhpDeprecationInspection"
inspections:
  - group: "category:PHP/General"
    enabled: true # Enable the 'PHP/General' category
  - inspection: PhpDeprecationInspection
    enabled: false # Disable the PhpDeprecationInspection inspection

사용자 지정 프로파일에 관한 자세한 정보는 문서를 참조하세요. 

디폴트 프로파일의 주요 리팩터링

Qodana에는 두 종류의 디폴트 프로파일이 제공됩니다. qodana.starter는 중요한 검사에만 사용되며 프로젝트를 처음으로 검사할 때 적합합니다. qodana.recommended는 사전에 선택되고 대부분의 프로젝트에 적합한 검사 모음을 활성화합니다.

이 두 프로파일은 IDE에서 제공되는 디폴트 프로파일에 맞춰 모두 재작성되었습니다. 이러한 변경은 투명성을 향상하여, Qodana와 IDE에서 실행되는 검사를 거의 동일하게 유지하고 코드 품질을 더 일관되게 관리할 수 있습니다. 

업데이트된 qodana.recommended 프로파일은 GitHub에서 찾을 수 있습니다. 이 프로파일은 다음 몇 가지 예외를 제외하고 디폴트 IDE 프로파일과 일치합니다.

  • 가벼운 분석 시에는 시간이 많이 걸리는 전역 검사가 비활성됩니다.  
  • 빌드 디렉터리 및 테스트 소스와 같은 일부 프로젝트 디렉터리가 분석에서 기본적으로 제외됩니다.

업데이트된 qodana.starter 프로파일은 GitHub에서 찾을 수 있습니다. 이 프로파일은 qodana.recommended 프로파일에서 파생되었으며 중요한 검사만 실행합니다. 다음은 주요 변경 내용입니다.

  • 코드 스타일코드 규칙 의미 관련 검사가 비활성화되었습니다. 
  • 코드베이스의 실행할 수 없는 부분(예: Javadoc)에 대해 검사가 비활성화되었습니다.

Qodana에 플러그인을 추가하는 손쉬운 방법

Qodana를 확장하고 JetBrains Marketplace의 검사 플러그인을 사용하려면, 먼저 플러그인 ID를 qodana.yaml 파일에 추가해야 합니다. 

최근에 Marketplace가 업데이트되어 플러그인의 ID를 페이지에서 직접 복사할 수 있습니다. 

플러그인에 필요한 타사 소프트웨어를 설치하는 방법은 두 가지가 있습니다.

  • bootstrap 옵션을 사용합니다.
  • FROM jetbrains/qodana...로 시작하는 사용자 지정 Dockerfile을 개발합니다. GitHub에 있는 Qodana Dockerfile 예시를 사용할 수 있습니다.

다음은 확인할 가치가 있는 인기 플러그인 중 일부입니다.

  • Grazie Professional: 고급 자연어 작성 지원, 철자 검사, 문법 수정, 자연어 완성 및 기타 텍스트 작성 및 편집에 유용한 도구를 제공합니다. 
  • CheckStyle: IntelliJ IDEA 내의 CheckStyle을 기반으로 Java 파일을 실시간 혹은 요청 시에 검사합니다.
  • Zero Width Characters Locator: 검사를 추가하여 소스 코드 및 리소스에서 너비가 0인 문자와 관련된 찾기 힘든 일부 버그를 방지합니다. 

JetBrains Marketplace에서 이 검색을 이용하면 더 많은 플러그인을 찾을 수 있습니다. 

Qodana는 현재 유료 플러그인은 지원하지 않으며, 현재 버전과 호환되지 않는 플러그인이 있을 수 있습니다. 올해 JetBrains Marketplace에 Qodana 플러그인의 호환성을 검사하는 기능을 추가하기 위해 작업 중입니다.

Linter 관련 업데이트

Qodana 내의 신규 JVM 검사 

Kotlin/JS IR 컴파일러용 검사

Kotlin 팀은 Kotlin 소스 코드를 JavaScript로 마이그레이션할 수 있도록 지원하는 새로운 IR 컴파일러를 도입했습니다. 마이그레이션 프로세스를 가속화하고 잠재적인 오류를 찾아내기 위해 Qodana에서 이제 다음의 검사가 지원됩니다.

NonExternalClassifierExtendingStateOrProps

React의 StateProps와 같이 순수 JS 클래스에서 파생된 Kotlin 인터페이스 및 클래스(데이터 클래스 포함)를 사용하면 ClassCastExceptions가 발생할 수 있습니다. 이러한 예외는 이러한 클래스의 인스턴스가 실제로는 JS임에도 불구하고 Kotlin 객체인 것처럼 컴파일러가 취급하려 하기 때문에 발생합니다.

이를 해결하는 방법은 순수 JS 클래스에서 파생되는 모든 클래스와 인터페이스를 외부 인터페이스로 변환하는 것입니다. Qodana는 외부 분류자가 아닌 State 혹은 Props의 확장 사용을 보고합니다. 

NonVarPropertyInExternalInterface

Kotlin/JS 코드에서 외부 인터페이스의 프로퍼티는 객체가 js() 혹은 jso()로 생성된 후에만 값이 대입될 수 있으므로 읽기 전용(val) 프로퍼티일 수 없습니다. 해결 방법은 외부 인터페이스의 모든 프로퍼티를 var로 변환하는 것입니다.

Qodana는 var가 아닌 프로퍼티를 변환할 수 있도록 모두 강조 표시합니다.

SpringTransactionalMethodCallsInspection

Spring 프레임워크로 코드 어노테이션을 활용하여 애플리케이션 트랜잭션을 관리할 수 있습니다. '@Transaction'으로 표시된 메서드의 외부 호출만 트랜잭션하에서 실행되고, 자기 호출은 새 트랜잭션을 시작하지 않습니다. 이로 인해 트랜잭션 관리 시 오류가 발생할 수 있으므로 Qodana는 이 새로운 검사를 사용하여 해당 경우를 강조 표시합니다.

JUnitMixedFramework

프로젝트 내에서 여러 버전의 JUnit을 사용하면 개발자가 하나의 테스트 케이스 내에서 여러 버전을 실수로 혼용하여 오류가 발생할 수 있습니다. 다음 코드를 예로 들어보겠습니다.

테스트는 JUnit4로 실행되므로 JUnit5의 BeforeEach 어노테이션은 처리되지 않으며 테스트가 NullPointerException을 일으키며 실패합니다. 

Qodana는 기본적으로 테스트 소스를 확인하지 않습니다. 따라서 이 검사를 포함하려면 다음의 구성을 qodana.yaml에 추가해야 합니다.

include:
  - name: JUnitMixedFramework
    paths:
    - <path-to-tests-directory>

MathRoundingWithIntArgument

이 검사는 MathStrictMathround(), ceil(), floor()rint() 메서드에 대한 호출을 보고합니다. 정수에서 이러한 메서드를 호출하는 것은 불필요하며 정수 나누기와 같은 실수가 발생했다는 의미일 수 있습니다.

Qodana for JVM 사용해보기

Go용 타사 라이선스 감사

오픈 소스 구성 요소에 의존하거나, 개발을 아웃소싱하거나, GitHub과 같은 서비스의 코드를 재사용하는 경우 적절한 라이선스를 사용해야 합니다. 그러나 실수로 라이선스 제한이 있는 라이브러리를 소프트웨어 코드베이스로 가져오거나 만료된 라이선스를 깜박하고 업데이트하지 않았을 수 있습니다. 이러한 경우 조직은 평판에 타격을 입거나 법적인 위험에 처할 수 있습니다. 

이러한 위험을 최소화하기 위해 작년에는 Java, Kotlin, PHP 및 JavaScript용 라이선스 감사 기능이 추가되었고, 이번 릴리스에서는 Go 지원이 추가되었습니다. 아래 예시처럼 Qodana는 분석된 저장소 내의 종속성 라이선스를 나열하며, 해당 라이선스가 프로젝트 라이선스와 호환성 문제가 있으면 경고합니다.

종속성 라이선스는 다음과 같이 표시됩니다.

Qodana for Go 사용해보기

.NET 업데이트

검사 프로파일이 이제 저장소 설정을 고려

이전에 .NET linter용 검사 프로파일의 검사 심각도 설정은 ReSharper에서 가져온 디폴트 값을 기반으로 하였습니다. 그러나 이렇게 하면 ReSharper, Rider 및 .editorconfig 파일(저장소에 있는 경우)의 솔루션 및 프로젝트 구성 레이어를 프로젝트에서 이미 사용 중인 경우 설정이 중복됩니다. 즉, 이러한 레이어 중 하나라도 변경되면, Qodana YAML 프로파일에도 같은 변경 사항을 적용해야 합니다. 

이제 검사 프로파일은 ReSharper 및 .editorconfig 파일(저장소에 있는 경우)의 설정을 자동으로 상속받으므로, 직접 작업할 필요가 더 이상 없습니다. 

Qodana YAML 구성 설정 섹션의 이름 변경

이전에는 qodana.yaml 구성 파일에 열 솔루션이나 프로젝트를 지정하고 구성 및 플랫폼 옵션도 설정할 수 있는dot-net 섹션이 있었습니다. 이 섹션의 이름이 dotnet으로 변경되었으며 dot-net 표기는 Qodana 2023.2 버전부터 더는 사용되지 않습니다.

Qodana for .NET 사용해 보기

Qodana 2023.1로 업그레이드하는 방법

latest Docker 태그로 Qodana를 실행하면 아무것도 변경하지 않아도 됩니다. 그렇지 않은 경우 Qodana가 사용되는 CI 워크플로에서 2023.1 버전으로 업데이트하세요. 이 문서에서 기존의 CI에 통합하는 방법에 관해 자세히 알아볼 수 있습니다.   

모든 검사가 자동으로 활성화되지는 않습니다. 분석 시 특정 검사를 포함하거나 제외하려는 경우 검사 프로파일을 사용자 지정해야 할 수 있습니다. 

이상으로 Qodana 2023.1 버전의 주요 내용 소개를 마무리하겠습니다. 자세한 정보는 릴리스 노트를 참조하세요. 이번 새 릴리스가 여러분의 마음에 들기를 바랍니다. 향후 블로그에 게시할 주제를 제안하거나 비즈니스에 Qodana를 활용할 방법을 알아보려면 이 게시물에 댓글을 남기거나, Twitter 또는 qodana-support@jetbrains.com으로 문의해 주세요.

코드를 깔끔하게 유지하면서, 즐겁게 개발하세요!

Qodana 팀 드림

자부심을 느낄 수 있는 코드를 작성하세요

게시물 원문 작성자

Jessie Cho

Valerie Kuzmina

]]>
https://blog.jetbrains.com/zh-hans/qodana/2023/05/qodana-2023-1/ https://blog.jetbrains.com/ja/qodana/2023/05/qodana-2023-1/ https://blog.jetbrains.com/fr/qodana/2023/05/qodana-2023-1/ https://blog.jetbrains.com/qodana/2023/05/qodana-2023-1/
Kotlin 마스코트의 귀환 – Kodee를 반갑게 맞아주세요! https://blog.jetbrains.com/ko/kotlin/2023/05/the-kotlin-mascot-returns/ Mon, 08 May 2023 05:57:38 +0000 https://blog.jetbrains.com/wp-content/uploads/2023/04/DSGN-16174-Blog-post-banner-and-promo-materials-for-post-about-Kotlin-mascot_Blog-Featured-image-1280x600-1.png https://blog.jetbrains.com/?post_type=kotlin&p=349607 새롭게 디자인된 모습으로 KotlinConf에서 이목을 집중시켰던 Kotlin의 마스코트를 반갑게 맞이해 주세요! 마스코트가 처음 소개된 이래 시간이 지난 지금, 다시 Kodee라는 이름으로 돌아왔습니다!

여러분의 의견을 바탕으로 Kotlin 커뮤니티가 공감할 수 있는 친근하고 재미있는 캐릭터를 만들기 위해 마스코트를 다시 디자인했습니다.

새롭게 디자인된 Kotlin 마스코트, Kodee

커뮤니티에 특별하고 상상력을 자극하며 서로 연결되어 있음을 느끼게 해주는 무언가를 제공하고 싶었습니다. Kotlin의 마스코트는 상징 그 이상의 의미를 가져야 한다고 생각합니다. Kotlin 커뮤니티에서 자신을 표현하는 데 사용할 수 있는 친근한 동반자가 되어야 합니다. 

우리의 꼬마 친구가 얼마나 다양한 감정을 표현할 수 있는지 한 번 확인해 보세요. 명랑하고 행복할 수도 있고, 많은 사람들이 그런 것처럼 가끔은 우울할 수도 있습니다. Kodee는 처리 속도를 높이기 위해 달리거나, 휴식을 취하거나, 춤을 추는 것과 같은 새로운 능력을 얻었습니다.

다양한 감성으로 새롭게 재탄생한 Kotlin 마스코트

디지털 및 인쇄 자료에 Kodee를 넣어보세요. 색 구성표, 글꼴 스타일 및 전반적인 디자인 미학을 포함하여 마스코트를 어떻게 사용해야 하는지 설명하는 구체적인 Kotlin 마스코트 가이드라인을 만들었습니다.

Kotlin 마스코트 애셋도 준비했으니 한 번 살펴보세요. 여기에서 애셋을 다운로드할 수 있습니다. 새로워진 마스코트가 내면의 미적 감각을 일깨우는 데 도움이 되기를 바랍니다. Kodee가 여러분의 창의력을 어디로 안내할지 확인해 보세요!

자신만의 Kodee를 만들고 싶은 분들을 위해 여기에 몇 가지 Kodee의 변신한 모습을 예시로 보여 드립니다.

새롭게 업데이트된 Kotlin 마스코트, Kodee의 변신 모습

의견을 보내 주셔서 대단히 감사합니다! Kotlin의 진정한 정체성을 대변해주는 마스코트를 만드는 데 많은 도움이 되었습니다.

앞으로도 새로운 소식을 기대해주세요!

게시물 원문 작성자

Jessie Cho

Maria Krishtal

]]>
https://blog.jetbrains.com/zh-hans/kotlin/2023/05/the-kotlin-mascot-returns/ https://blog.jetbrains.com/ja/kotlin/2023/05/the-kotlin-mascot-returns/ https://blog.jetbrains.com/fr/kotlin/2023/05/the-kotlin-mascot-returns/ https://blog.jetbrains.com/kotlin/2023/05/the-kotlin-mascot-returns/
새로운 Gradle 빌드의 기본 언어로 채택된 Kotlin DSL https://blog.jetbrains.com/ko/kotlin/2023/05/kotlin-dsl-is-the-default-for-new-gradle-builds/ Thu, 04 May 2023 00:19:14 +0000 https://blog.jetbrains.com/wp-content/uploads/2023/04/DSGN-15924-Kotlin-as-Gradles-Go-To-DSL_Blog-Featured-image-1280x600-1.png https://blog.jetbrains.com/?post_type=kotlin&p=346903 JetBrains는 개발자가 더 명료한 구조에 유지 관리하기 쉬운 빌드를 작성하도록 돕기 위해 늘 노력하고 있습니다. 이러한 목표를 생각했을 때 Gradle 빌드 스크립트와 플러그인 작성에 Kotlin을 적용하는 것은 자연스러운 일입니다. Kotlin은 강력한 기능을 풍부하게 제공하므로 DSL 생성을 위한 탁월한 선택이 되며 개발자 경험을 크게 향상합니다.

Gradle 사용자 경험을 원활하고 즐겁게 만들기 위해 Kotlin이 Gradle에 처음 도입된 이후 많은 작업이 수행되었습니다. 오늘 전해 드릴 중요한 소식은 바로 Gradle이 새로운 Gradle 빌드의 기본 언어로 Kotlin DSL을 채택했다는 발표입니다! 이제부터는 Kotlin DSL이 플러그인과 문서의 디폴트 옵션이 됩니다. 수준 높은 함수 및 확장 메서드와 같은 풍부한 기능 덕분에 Kotlin은 Gradle 스크립트 작성 시 가장 훌륭한 요소를 유지하고 심지어 개선할 수 있습니다.

JetBrains, Google 및 Gradle은 새로운 Gradle 빌드의 기본 언어로 Kotlin DSL이 채택되었다고 발표했습니다

JetBrains, Google 및 Gradle 간의 협업 덕분에 Kotlin DSL은 한 단계 더 발전했고 이제 개발자들이 프로젝트에 사용할 수 있는 훨씬 더 효율적이고 사용자 친화적인 도구로 거듭났습니다.” ~ Gradle 팀

또한, Google은 Kotlin DSL을 Android 앱용 Gradle 빌드 파일의 기본 스크립트로 사용한다고 밝혔습니다.

Google, Gradle 및 JetBrains는 단일한 코드 스타일과 잘 정의된 관용구를 갖추기 위해 지속적으로 긴밀히 협력할 예정이며, 이는 결국 코드 품질을 개선하는 데 도움이 될 것입니다.

이 글에서는 build.gradle.kts 파일의 기존 IDE 지원 기능과 함께 Gradle 스크립트 작성 시 Kotlin DSL의 몇 가지 주요 이점을 알려 드리겠습니다.

Groovy 대신 Kotlin DSL을 선택할 때의 이점

개발자마다 특정 언어를 선택하는 이유는 다를 수 있습니다. 아래에서는 Gradle 빌드 스크립트 및 플러그인 작성에 Kotlin DSL을 선택해야 하는 이유인 Kotlin의 주요 강점을 집중 조명합니다.

Android의 Gradle 빌드 파일을 Groovy에서 Kotlin으로 변환하기가 여전히 망설여 진다면 아래에서 Kotlin을 사용할 때의 4가지 주요 이점을 살펴보세요.

  1. 컴파일 타임 검사

두 언어의 중대한 차이점은 Groovy는 동적 언어인 반면 Kotlin은 정적으로 타입이 지정된다는 것입니다. 즉, Kotlin DSL을 사용할 때는 런타임이 아닌 컴파일 타임에 빌드 스크립트 오류가 발생할 수 있습니다.

동적 타입 검사를 사용하면 빌드 스크립트가 실행될 때까지 오류가 감지되지 않습니다. 그러나 컴파일 타임 오류가 있을 때는 문제를 더 일찍 해결할 수 있습니다. 또한 IDE에서 작업하는 경우 에디터가 오류를 강조 표시할 수 있습니다. 예를 들어 ‘application’ 대신 구성 이름 ‘applications’를 참조하려고 하면 다음과 같이 표시됩니다.

Kotlin DSL을 사용하는 경우 컴파일 타임에 빌드 스크립트 오류가 발생할 수 있습니다

2. 향상된 IDE 경험

코드에 대한 더 많은 의미론적 정보를 통해 다음과 같은 IDE 기능을 최대한 활용할 수 있습니다:

  • 자동 완성 및 콘텐츠 지원
  • 소스 코드 탐색
  • 리팩터링

지금까지 IntelliJ IDEA와 Android Studio는 Kotlin에 가장 통합적인 환경을 제공합니다. 그러나 다른 IDE에서도 Kotlin-DSL 기반 빌드를 가져오고 작업할 수 있습니다. Gradle 문서에서 Kotlin DSL의 IDE 지원표를 확인할 수 있습니다.

3. 간소화된 선언적 플러그인 구문

Kotlin DSL은 기존 Groovy DSL의 대체 구문을 제공하며 핵심 Kotlin 언어와 동일한 이점을 제공합니다. 두 언어를 나란히 살펴보겠습니다.

프로젝트에 Gradle 플러그인을 적용할 때 플러그인 ID만 지정하면 됩니다. 예를 들어 Groovy DSL로 ‘application’ 플러그인을 지정하면 다음과 같이 표시됩니다.

Groovy DSL로 플러그인 ID 지정

Kotlin DSL의 단순화된 구문 덕분에 Kotlin에서 ‘application’만 입력하면 됩니다.

Kotlin DSL로 플러그인 ID 지정

위에서 언급했듯이 존재하지 않는 플러그인을 적용하려고 하면 IDE에서 구문 오류를 표시합니다.

4. 성장하고 있는 Kotlin 개발자 커뮤니티

Kotlin에는 언어 및 라이브러리에 기여하고 Gradle 플러그인을 제공하는 대규모 개발자 커뮤니티가 있습니다.

커뮤니티가 성장함에 따라 숙련된 개발자와 Kotlin을 처음 사용하는 개발자 모두 풍부한 정보를 접할 수 있습니다. 여기에는 Kotlin 공식 문서, 포럼, 블로그, 소셜 미디어의 스레드 및 온라인 교육 과정 등이 포함됩니다.

유용한 리소스가 풍부하게 제공되므로 문제 해결책을 쉽게 찾고 역량을 한 단계 끌어올릴 수 있습니다.

Groovy에서 Kotlin DSL로 마이그레이션

여기에 나열한 Kotlin DSL의 장점과 강력한 기능은 생산성을 높이고 고성능 소프트웨어를 빌드하는 데 이 언어를 선택해야 하는 이유입니다. 기존 Gradle 빌드를 Groovy에서 Kotlin DSL로 마이그레이션하려면 Gradle의 마이그레이션 가이드를 확인하세요. Android 개발자를 위해 Android 앱의 Gradle 빌드 파일을 Groovy에서 KTS로 변환하는 방법에 대한 자세한 가이드도 마련되어 있습니다.

Gradle은 Groovy DSL에 대한 지원을 계속 유지합니다. Groovy DSL을 사용하는 복잡한 빌드 로직이 있는 대규모 프로젝트의 경우, Gradle은 아직 마이그레이션하지 말 것을 권장합니다. 그러나 이제 Kotlin이 Gradle의 기본 DSL이므로 빌드 스크립트를 작성하고 편집할 때 경험을 개선하려는 Gradle 사용자에게 Kotlin DSL이 크게 도움이 될 것으로 생각합니다.

언제나 그렇듯이 JetBrains 팀은 풍부한 기능이 담긴 도구를 제공하여 효율적인 애플리케이션 개발을 돕는다는 목표에 따라 기술 수준을 더욱 높이기 위해 최선을 다하고 있습니다.

Jessie Cho

Anton Yalyshev

]]>
https://blog.jetbrains.com/zh-hans/kotlin/2023/05/kotlin-dsl-is-the-default-for-new-gradle-builds/ https://blog.jetbrains.com/ja/kotlin/2023/05/kotlin-dsl-is-the-default-for-new-gradle-builds/ https://blog.jetbrains.com/fr/kotlin/2023/05/kotlin-dsl-is-the-default-for-new-gradle-builds/ https://blog.jetbrains.com/kotlin/2023/05/kotlin-dsl-is-the-default-for-new-gradle-builds/