PyCharm 2018.2の新機能

Python

pipenvのサポート

Pipenvを使うと依存の管理が簡単になります。PyCharm 2018.2はPipfileを持つプロジェクトを開くと自動的にpipenvを作成します。

Quick documentationの改善

新しいライブラリを試したいのに、ドキュメントを読むので1日費やしてしまう、といったことはありませんか?PyCharmのクイックドキュメンテーションが読みやすくなりました。Ctrl-Q (macOS: Ctrl-J)を押すとエディタ内で望みのドキュメントを素早く開けます。

pytest Fixtures と pytest-bdd (Professionalのみ)

PyCharm 2018.2ではpurest-bddをサポートし、またfixtureにコードインテリジェンスが働きます。fixtureサポートはCommunity Editionでもご利用頂けます。PytestのBDDサポートのご利用にはProfessional Editionをお求めください。

reST プレビュー

Markdownドキュメントのプレビュー機能に加え、reStructuredTextもプレビューできるようになりました。

Attrsサポート

Python3.7のエキサイティングなDataクラスをご覧になりましたか?Python3.7にアップグレードしていなくてもattrsライブラリを使うとPythonのどのバージョンを使っても同等かそれ以上のことが出来ます。

コードインサイトの改善

PyCharmはよりよいコードをより素早く書けることを狙っています。コードインサイトの改善により、タイプヒントのチェックや、関数呼び出しのawaitを非同期コード内で行っているかなどを確認し、クイックフィックスも提供します。

その他のPythonサポートの強化

  • Run configurationでスクリプトの標準入力にリダイレクトするファイルを指定できます
  • PyCharmから同じマシンで起動しているpythonプロセスにアタッチしてデバッグ出来ますが、アタッチ対象のプロセスをプログラムの名前をSettings | Build, Execution, Deployment | Python debuggerよりフィルターすることが出来るようになりました
  • 変数が沢山ある場合、ロードに時間がかかりデバッグに時間がかかります。そのような場合デバッガで表示する変数を絞り込み、デバッグを素早く行うことが出来ます
  • package management screenでアップデートすべき依存を表示します。安定バージョンのみにアップデートするか、最新のpre-releaseバージョンへもアップデートするか選択することが出来ます

バージョン管理

複数のGitHubアカウント

Preferences | Version Control | GitHubから複数のGitHubアカウントを設定出来るようになりました。プロジェクトのデフォルトのアカウントも指定出来ます。

VCS Log タブの強化

Gitタグをコミットのコンテクストメニューより削除することが出来るようになりました。また、VCS LogでもDiffをプレビュー出来ます。さらにLogタブは複数開くことが出来るようになりました。

リポジトリを特定のリビジョンで確認する

バージョン管理にGitを使っていれば、リポジトリを任意のリビジョンの状態を確認出来ます。VCSログまたはファイルヒストリのコンテクストメニューのBrowse Repository at Revision アクションから開けます。

データベース

クエリプランダイアグラムの作成(Professionalのみ)

SQLはパワフルな言語で、データを様々な、複雑な方法で確認することが出来ます。アプリケーションのパフォーマンスを保つためにクエリプランを確認することが大切です。2018.2ではビジュアルにクエリをインスペクトすることができるので、クエリを調整したり、インデックスを追加したりといったチューニングに役立ちます。

IDE の改善

新しいアイコン

アイコンを刷新して、IDE全般の見栄えがシンプルでクリーンになり、可読性が高まりました。

MacBook タッチバーサポート

ついにMacBookのタッチバーをサポートします!実行、ビルド、デバッグ、コミット、プル、といった操作をタッチバーからダイレクトに行えます。操作中のコンテクストに応じて表示されるボタンも変化します。

Javascript

ブラウザで稼働するコードのカバレッジ(Professionalのみ)

新しいCode Coverage 機能により、クライアントサイドコードで使われていないコードを見つけることができます。JavaScript Debug with coverageをWebStrormから起動し、Chromeでアプリを操作してください。デバッグを停止すると、フォルダ別、ファイル別にどのコードが使われているか、いないかをレポートします。

Angularプロジェクトのインデックス高速化(Professionalのみ)

Angularプロジェクトのインデックス速度が倍になり、コード補完や解決に妥協は不要になりました。

Reactコンポーネントの抽出とコンバート(Professionalのみ)

Reactコンポーネントを2つに分けたい場合、コピー&ペーストをする必要はありません。 render メソッドのJSXコードを選択し、 Refactor – Extract Componentを使ってください。

新しいインテンションではconvert React class components into functional components(Reactクラスをファンクショナルコンポーネントに変換)、またはその逆が出来ます。

Vue.jsのイベントの補完(Professionalのみ)

Vueテンプレートで、イベントも補完するようになりました。 v-on: 以降に、または @event を使うとイベント名がサジェストされます。また event modifiersも補完されます。