기능상세

RubyMine은 코드 작성 및 디버그부터 완성된 애플리케이션 테스트 및 배포에 이르기까지, Ruby/Rails 프로젝트 개발의 모든 측면에서 생산성을 높여주는 통합 개발 환경입니다. 이 섹션에서는 RubyMine이 제공하는 가장 필수적인 기능 중 일부를 간단히 설명합니다.

스마트 에디터

유형을 인식하는 스마트한 코드 완성, 지능적인 코드 검사, 라이브 템플릿, 인텐션 액션을 활용하여 코드를 더 빠르게, 오류 없이 작성할 수 있습니다.

코드 완성

코드 완성

자동 완성 기능으로 코드를 더 빠르게 작성하세요. 이 기능은 사용자가 코드를 입력하는 동안 작동하여 입력 내용과 일치하는 변수, 메서드, 키워드 목록을 제안합니다.

완성 기능은 Ruby 및 Rails, JavaScript 및 CoffeeScript, ERB, HAML, CSS, Sass에서 작동합니다.

자세히 알아보기

리팩터링

리팩터링

빠르고 안전한 이름 변경 및 삭제 리팩터링 기능으로 코드를 리팩터링하세요. 변수, 매개변수, 메서드 또는 상위 클래스 추출, 상수 삽입 등 모든 종류의 리팩터링을 수행할 수 있습니다.

모든 리팩터링은 Ruby on Rails를 인식하며 컨트롤러 이름을 변경하면 관련 헬퍼, 뷰 및 테스트의 이름도 변경됩니다.

자세히 알아보기

코드 스타일 및 서식 지정

코드 스타일 및 서식 지정

모든 언어에서 일관된 코드 스타일을 구성하고 사용하세요. 들여쓰기, 공백, 정렬 규칙 등의 서식을 구성하여 팀원과 공유할 수 있습니다.

RubyMine은 사용자가 코드를 작성할 때 이미 구성되어 있는 스타일을 자동 적용하거나, 파일 전체의 서식을 한 번에 다시 지정할 수 있습니다.

자세히 알아보기

코드 문서화

코드 문서화

팝업에서 문서를 보고, 인텐션 액션을 사용하여 누락된 YARD 태그를 생성하고 해당 태그의 유효성을 확인하세요.

RubyMine은 코드 분석 기능 향상에 도움이 되는 YARD 어노테이션을 활용하므로, 코드 완성 결과 및 메서드에 대한 매개변수 힌트를 적절하게 제안할 수 있습니다.

자세히 알아보기

라이브 템플릿

라이브 템플릿

라이브 템플릿(코드 조각이라고도 함)을 사용하면 코드에서 가장 일반적인 패턴 구조를 사용할 때 코드 입력의 수고를 덜 수 있습니다. 기존 템플릿을 사용자 지정하여 고유한 템플릿을 만들어 보세요.

자세히 알아보기

코드 검사 및 빠른 수정

코드 검사 및 빠른 수정

도달할 수 없는 코드, 잘못된 호출 인수 카운트, 사용되지 않은 변수 등의 오류 및 코드 스멜이 발생하면 항상 표시됩니다.

IDE에서 제안한 빠른 수정을 적용하여 이러한 문제를 자동으로 해결해 보세요.

자세히 알아보기

탐색 및 검색

강력한 탐색 및 검색 기능을 사용하여 프로젝트 내 모든 요소의 작동 상태를 빠르게 파악할 수 있습니다.

선언으로 이동

선언으로 이동

단 한 번의 클릭으로 선언, 상위 메서드, 테스트, 사용 위치, 구현 등으로 이동할 수 있습니다. 프로젝트 엔터티뿐만 아니라 외부 gem 내의 정의로도 이동할 수 있습니다.

자세히 알아보기

사용 위치 검색

사용 위치 검색

클래스, 메서드, 변수 또는 심볼이 사용된 모든 위치를 빠르게 확인하세요.

자세히 알아보기

전체 검색

전체 검색

RubyMine에서는 소스 코드의 항목이든, 사용자의 동작이든, UI 요소이든 관계없이 원하는 것을 모두 찾을 수 있습니다. Shift를 두 번 눌러 찾으려는 항목의 이름을 입력해 보세요.

자세히 알아보기

Structure(구조) 뷰

Structure(구조) 뷰

클래스 메서드(상속된 메서드 포함) 간에 전환하거나 HTML 태그 사이를 이동하며 코드 구조를 간편하게 탐색할 수 있습니다.

자세히 알아보기

Ruby on Rails

RubyMine은 Rails로 생산성을 돕고 모든 종류의 주요 웹 개발을 기본 지원합니다.

Rails 인식 기반 코드 유지관리

Rails 인식 기반 코드 유지관리

RubyMine은 Rails 개념을 인식하여 코드 분석 기능을 향상합니다. 다음은 예시입니다.

  • 자동 완성 기능은 이름이 지정된 경로와 리소스 경로로 정의된 DB 필드, 연결 및 메서드에 대해 작동합니다.
  • Rails를 인식하는 rename(이름 변경) 리팩터링은 컨트롤러, 뷰, 테스트 및 헬퍼의 이름까지 고려합니다.
ERB/HAML/Slim/Liquid 에디터

ERB/HAML/Slim/Liquid 에디터

ERB 뷰 편집 시 RubyMine은 괄호, 접기, 구문 강조 표시, 코드 완성 기능 등을 지원합니다. HAML 또는 Slim 뷰를 사용하는 경우, 삽입된 Ruby 코드에서 구문 강조 표시를, HTML 코드 내부에서 코딩 지원 기능을 이용할 수 있습니다.

MVC 기반 탐색

MVC 기반 탐색

Navigate(탐색) | Related Symbol(관련 심볼) 명령어를 사용하여 Rails 컨트롤러, 액션, 뷰, 모델, 데이터베이스 스키마 및 테스트 사이를 빠르게 탐색할 수 있습니다.

자세히 알아보기

Rails 생성기

Rails 생성기

Rails 생성기에 대한 빠른 컨텍스트별 액세스를 제공하는 UI를 사용하여 모델, 컨트롤러, 마이그레이션 등의 새로운 Rails 엔티티를 프로젝트에 추가해 보세요.

  • 코드 완성이 지원되는 Run Anything(무엇이든 실행)
  • Rails 엔티티 생성용 특정 UI

자세히 알아보기

Rails 국제화(i18n) 지원

Rails 국제화(i18n) 지원

에디터에서 바로 인텐션 액션을 사용하여 로컬 프로퍼티를 만들거나 편집하고, 검사를 실행하여 누락된 키를 찾고, 현지화된 값을 미리 볼 수 있습니다.

자세히 알아보기

모델 종속성 다이어그램

모델 종속성 다이어그램

프로젝트 모델 및 해당 속성을 전체적으로 확인하면서 프로젝트 구조를 분석하고 필요한 코드로 이동하세요.

자세히 알아보기

Ruby 도구

RubyMine은 Rubocop, Bundler, Rake 등 모든 인기 Ruby 도구와 긴밀하게 통합되어 있습니다.

Bundler 통합

Bundler 통합

Bundler 통합 기능을 이용해 애플리케이션의 gem 종속성을 IDE 내에서 바로 처리하세요. Bundler 명령어를 Run Anything(무엇이든 실행) 팝업에서 바로 실행할 수 있습니다.

자세히 알아보기

버전 관리자 및 gemset 지원

버전 관리자 및 gemset 지원

설치되어 있는 다양한 Ruby 버전을 RVM, rbenv, asdf, chruby 등의 버전 관리자를 사용하여 빠르게 전환하세요. IDE 내에서 RVMrbenv gemset도 작업할 수 있습니다.

자세히 알아보기

Rake 지원

Rake 지원

Run Anything(무엇이든 실행) 팝업(Ctrl 두 번)을 사용하여 프로젝트에서 어떤 Rake 작업이든 실행하세요. 여백 아이콘을 사용하면 에디터에서 바로 작업을 실행할 수도 있습니다.

자세히 알아보기

RuboCop 통합

RuboCop 통합

IDE 내에서 RuboCop 위반 항목을 바로 수정하거나 전체 프로젝트를 검사하여 모든 RuboCop 경고를 하나의 보고서에 표시할 수 있습니다.

자세히 알아보기

기본 제공 IRB 및 Rails 콘솔

기본 제공 IRB 및 Rails 콘솔

IDE를 벗어날 필요 없이 IRB 및 Rails 콘솔을 사용하여 애플리케이션과 상호작용할 수 있습니다.

자세히 알아보기

통합된 Ruby 프로파일러

통합된 Ruby 프로파일러

RubyMine이 rbspy 샘플링 프로파일러와 통합되어 Ruby 및 Rails 애플리케이션을 쉽게 프로파일링할 수 있습니다.

자세히 알아보기

테스트

테스트를 간편하게 생성, 실행, 관리하세요. RubyMine은 모든 인기 프레임워크를 지원합니다.

GUI 기반 테스트 러너

GUI 기반 테스트 러너

RSpec, Minitest, Shoulda, Cucumber 테스트를 IDE에서 바로 실행하고 디버그하세요. 러너에서 트리 뷰를 사용해 모든 실행 중인 테스트의 진행 상황(특정 테스트의 상태 및 기간 정보 등)을 표시해줍니다.

자세히 알아보기

템플릿에서 테스트 생성

템플릿에서 테스트 생성

사전 정의된 사용자 지정 가능한 템플릿에서 테스트를 생성해 보세요. 클래스에서 테스트로 이동할 때 테스트 대상 경로를 기반으로 디렉터리 구조를 복제하여 테스트를 생성할 수도 있습니다.

자세히 알아보기

테스트 및 테스트 대상으로 이동

테스트 및 테스트 대상으로 이동

RubyMine에서 테스트 및 테스트 대상 간 빠르게 이동할 수 있습니다. FactoryBot을 사용하는 경우, 모델에서 팩토리로 또는 그 반대로 이동할 수도 있습니다.

자세히 알아보기

코드 커버리지 보기

코드 커버리지 보기

SimpleCov 통합 기능을 사용해 테스트에 포함된 코드의 양을 측정해 보세요. 포함된 파일과 줄의 비율을 별도의 도구 창 및 에디터에서 분석하고 HTML 보고서를 생성하는 등의 작업을 수행할 수 있습니다.

자세히 알아보기

디버그

RubyMine은 Ruby, JS, CoffeeScript용으로 시각적 UI를 가진 스마트한 디버거를 제공합니다.

그래픽 UI가 있는 디버거

그래픽 UI가 있는 디버거

RubyMine은 시각적 디버거를 Ruby에 제공합니다. 간편하게 모든 정보를 이용하여 코드를 단계별로 실행하세요.

자세히 알아보기

구성 가능한 중단점

구성 가능한 중단점

중단점을 코드 줄에 배치하고 중단점 도달 조건(코드 실행을 중단할지 결정하기 위해 평가하는 bool 표현식 모음)을 정의할 수 있습니다.

자세히 알아보기

스마트한 단계별 실행

스마트한 단계별 실행

현재 줄에 있는 모든 메서드 호출 또는 블록으로 들어가 보세요. 여러 개의 메서드 호출이나 블록이 있는 경우, 원하는 대상을 선택할 수 있습니다.

자세히 알아보기

대화형 디버그 콘솔

대화형 디버그 콘솔

대화형 IRB와 유사한 콘솔을 사용하여 일시 중지된 프로그램의 상태를 검사하세요. 이 콘솔에서 변숫값을 확인하고, 복잡한 객체를 검사하고, 메서드를 호출하는 등의 작업을 수행할 수 있습니다.

자세히 알아보기

JavaScript 및 Node.js 디버그

JavaScript 및 Node.js 디버그

애플리케이션의 클라이언트 측 JavaScript 코드를 디버그하고 Node.js 애플리케이션을 디버그할 수 있습니다.

자세히 알아보기

원격 디버그

원격 디버그

Docker, Vagrant, SSH, WSL 등의 원격 인터프리터로 프로그램을 디버그해 보세요. 원격 프로세스에 연결하여 해당 프로세스를 디버그할 수도 있습니다.

자세히 알아보기

VCS

IDE를 벗어날 필요 없이 인기 버전 관리 시스템을 사용해 변경 기록을 찾아보고 브랜치를 관리하며 충돌을 병합하는 등 다양한 작업을 수행해 보세요. 심지어 VCS 없이 로컬 기록을 사용해 커밋 간 발생한 변경 내용을 찾고 복원할 수도 있습니다.

모든 주요 버전 관리 시스템 지원

모든 주요 버전 관리 시스템 지원

IDE에서 Git 및 GitHub, Mercurial, Subversion, Perforce 등을 사용해 작업할 수 있습니다.

자세히 알아보기

커밋 전 코드 검사

커밋 전 코드 검사

Commit(커밋) 도구 창에서 코드를 분석하고 코드의 왼쪽에 있는 TODO를 검사하며 코드 서식을 다시 지정할 수 있습니다.

자세히 알아보기

기본 제공 Diff 및 병합 도구

기본 제공 Diff 및 병합 도구

기본 제공되는 시각적 병합 도구를 사용하면 충돌 문제를 빠르고 직관적으로 해결할 수 있습니다.

자세히 알아보기

완벽한 기능의 VCS 기록 지원

완벽한 기능의 VCS 기록 지원

브랜치 간 빠르게 전환하고 사용자별로 필터링하고 원하는 날짜를 선택하는 등의 방식으로 소스 코드에 적용된 변경 내용을 추적할 수 있습니다.

자세히 알아보기

VCS 없이 사용 가능한 로컬 기록

VCS 없이 사용 가능한 로컬 기록

버전 제어 시스템이 활성화되지 않은 경우에도 삭제된 파일을 복원하고, 개별 변경 내용을 가져오거나, 어떤 파일 상태로든 롤백할 수 있습니다.

자세히 알아보기

GitHub 풀 리퀘스트 지원

GitHub 풀 리퀘스트 지원

수신되는 풀 리퀘스트를 RubyMine에서 관리하세요. 풀 리퀘스트 확인에서 주석 제출 및 변경 내용 수락에 이르기까지 전체 풀 리퀘스트 워크플로를 IDE를 벗어나지 않고 완료할 수 있습니다.

자세히 알아보기

사용자 지정 가능한 환경

사용자 지정 가능한 단축키, 인터페이스 테마, 플러그인을 사용해 모든 것을 원하는 대로 설정해 보세요. 개발자를 위해 제작된 무료 오픈 소스 서체인 JetBrains Mono는 모든 JetBrains IDE의 기본 글꼴입니다.

테마

테마

RubyMine에는 여러 개의 에디터 색 구성표가 함께 제공되며, 사용자 지정 구성표를 만들거나 기존 구성표를 수정할 수도 있습니다.

자세히 알아보기

키보드 구성

키보드 구성

생산성을 높이려면 모든 작업에서 키보드를 사용해 보세요. 사전 정의된 키보드 레이아웃 중에서 선택하거나 나만의 레이아웃을 만들 수 있습니다.

자세히 알아보기

보기 모드 간 전환

보기 모드 간 전환

RubyMine은 특정 사용 패턴에 대한 보기 모드를 제공합니다. 예를 들어 코드를 제외한 모든 UI 요소를 숨겨서 모든 집중 저해 요소를 끌 수 있습니다.

자세히 알아보기

플러그인으로 IDE 기능을 정교하게 조정

플러그인으로 IDE 기능을 정교하게 조정

RubyMine의 기능을 플러그인으로 확장해, 추가 VCS 지원, 다양한 도구 및 프레임워크 통합 기능, 에디터 향상 기능을 이용해 보세요. Marketplace(마켓플레이스) 탭을 사용하면 Plugin Marketplace에서 플러그인을 찾고 설치할 수 있습니다.

자세히 알아보기

기본 제공 개발자 도구

데이터베이스 플러그인, 터미널 에뮬레이터, Capistrano 지원 등을 사용하여 처음부터 워크플로를 간소화하세요.

포함된 터미널 에뮬레이터

포함된 터미널 에뮬레이터

포함된 터미널 에뮬레이터를 사용해 IDE 내부에서 명령줄 셸 작업을 수행해 보세요. 이 에뮬레이터에서 Ruby 환경 관련 작업을 처리하고, Git 명령어를 실행하고, 전용 터미널 애플리케이션으로 전환하지 않고도 다른 명령줄 작업을 수행할 수 있습니다.

자세히 알아보기

IDE 내에서 데이터베이스 작업 수행

IDE 내에서 데이터베이스 작업 수행

번들로 제공되는 Database Tools and SQL 플러그인을 사용해 데이터베이스를 탐색하고 편집하세요. 이 플러그인은 MySQL, PostgreSQL, SQLite 등의 데이터베이스 관리 시스템을 지원합니다.

자세히 알아보기

코드 에디터에 포함된 HTTP 클라이언트

코드 에디터에 포함된 HTTP 클라이언트

통합된 HTTP 클라이언트로 IDE 내에서 API를 테스트하세요. HTTP 리퀘스트를 에디터에서 바로 작성하고 실행할 수 있습니다.

자세히 알아보기

원격 개발

원격 개발

Docker, WSL, Vagrant 또는 SSH로 원격 환경을 사용하여 코드를 실행, 디버그 및 테스트하세요. 그저 원격 인터프리터를 구성하기만 하면 됩니다.

자세히 알아보기

배포 도구

배포 도구

RubyMine에서 배포 도구 작업을 수행할 수 있습니다. IDE에서 바로 Capistrano 작업을 실행하고 YAML의 Kubernetes 구성 파일로 작업해 보세요.

구성 관리

구성 관리

RubyMine을 사용하면 ChefPuppet과 같은 인프라 자동화 및 구성 관리 도구로 작업할 수 있습니다.