Python

WSL インタプリタ (Professionalのみ)

WindowsでLinuxにデプロイするアプリケーションを開発している場合、コードをWSLの環境で動かすことが出来ます。詳しくはこちらをご覧ください: Run your code in Windows Subsystem for Linux.

F-string パフォーマンス: より速く、より正確に

Python 3.6において、F-stringは最も人気がある機能のうちの1つです。PyCharmはもちろん最初からこの機能をサポートしています。人気が出るにつれ、PyCharmサポートもより高速化できるよう改善を加え、またバグ修正も沢山しました。

複数行のTODOコメント

TODOコメントを複数行書けます。TODOに続くコメントはエディタでハイライトされ、TODOツールウィンドウでリストアップされます。TODOコメントで2行目以降はインデントをつけることで通常のコメントと区別してマルチラインTODOコメントとして認識されます。

コードスタイル: さらなるオプションとインポートの最適化

PyCharmでimportを自動的に最適化したり、コードをフォーマットしたり出来ることをご存じですか?簡単にPEP 8やプロジェクトのコードスタイルに準拠させることが出来ます。importのソート順なども設定出来るようになりました

その他の改善

  • 毎年著作権表示の年をアップデートしなければならないプロジェクトはありませんか?copyright toolをご利用いただければプロジェクトのライセンス基準に準拠させるのが簡単になります。Settings | Editor | Copyrightで設定できます。
  • タイプヒントでコードの可読性が上がり、またコーディングも楽になります。サードパーティーパッケージのタイプヒントを共有するため、PEP 561でPyPiのスタブパッケージをパブリッシュする公式の方法が策定されました。PyCharmでもこれをサポートします。
  • Python 3.7 で `breakpoint` statementが追加されました。以前のバージョンではpdbを使いましたがPyCharmデバッガでも利用出来るようになりました。
  • Docker Compose インタープリタでPyCharnがどのDocker Composeコマンドを使うか設定出来ます。`docker-compose up –build`でWebアプリケーションをまるごとビルドすることも、TDDでテスト実行に `docker-compose exec` をするときも有効です。(Professional のみ)

IDEの改善

プロジェクトとIDE内をより効率的にナビゲート出来ます。改善されたSearch Everywhereは他のナビゲーションダイアログであるFind ActionGo to classGo to fileGo to symbolと統合されま、tabキーで別の検索コンテクストに移動出来ます。もちろん全てのナビゲーションダイアログは依然これまでと同じショートカットでアクセスできます。

Plugins repository

設定画面のPluginsページを刷新し、より簡単にプラグインを検索、インストール、更新、アンインストール、管理出来るようになりました。プラグインを名前だけでなくタグでも検索出来るようになりました。また検索結果をダウンロード数、名前、レート、featured、更新日でソートすることが出来ます。

新しいインデントステータスバー

開いているファイルのインデントサイズをindentation status barで表示します。プロジェクト設定と、開いているファイルのインデントが異なる場合、インデントビューでアスタリスクが付き、ステータスバーのポップアップでインデントを整えたり設定変更をしたり出来ます。

Terminalタブの永続化

ターミナルが改善され、ターミナルタブ名、現在のワーキングディレクトリ、シェルヒストリがプロジェクトやIDEを閉じても保存されます。またターミナルタブが他のツールウィンドウタブと同じように見えるようデザインも調整しました。

タイムトラッキング (Professionalのみ)

PyCharmは課題トラッキングツールと接続して、チケットを選択し、ブランチを作成して作業を開始することが出来ます。PyCharm 2018.3からチケットにどれくらいの時間を割いたか記録して、課題トラッキングツールをアップデートすることが出来ます。

バージョン管理

GitHubプルリクエスト

IDEから直接GitHubプルリクエストを見られるようになりました。VCS | Git | View Pull Requestsで表示できるプルリクエスト一覧からラベル、担当者、変更内要のdiffをプレビューしたり、コンテクストメニューを使ってローカルブランチを作って通常のブランチと同じくマージしたりできます。

VCS Logの先進的なナビゲーション

VCS Log タブでコミットハッシュからナビゲートした後、またはGo to hash/branch/tag を使った後でForward、Backナビゲーションアクション使えるようになりました。左か右のアローキーを使えば子、または親のコミットをたどれます。

その他の改善

  • Gitサブモジュールをサポート
  • annotate (`git blame`)サポートを改善し、コードのどこをだれが書いたのか掘り下げ安くなりました。ホワイトスペースやコードの移動を無視することでdiffをより読みやすくなります。

Database (Professionalのみ)

Pycharm ProfessionalエディションはDataGripの機能を含みます。Databaseツールウィンドウよりデータベースに接続出来ます。より詳しく

Cassandra サポート

PyCharm Professionalエディションはほぼ全てのRDBMSをサポートしますが、さらにNoSQLサポートが追加となります。手始めにCassandraが2018.3よりサポートされます。

その他の改善

  • PyCharmは外部キーが設定されていればJOIN句を補完します。またエイリアスをテーブルにつけてクエリの可読性を維持します。またどのエイリアスを使うか設定することもできます。
  • When you write a query that uses `GROUP BY`を使うクエリを書いている際、どのカラムでグループ化するか指定しなければなりませんが、PyCharmは簡単にSELECT *クエリをカラムでグループするよう変換します。
  • 誤ってWHERE句なしに `UPDATE` や DELETEwお発行してしまったことはありませんか?多くの場合は間違いですので、本当に実行して良いかたずねるようになりました。

フロントエンド開発 (Professionalのみ)

PyCharm ProfessionalはWebStormの機能を含みます。JavaScript、HTML、CSS編集をはじめとする全てのWebStorm機能をご活用ください。

ChromeプラグインなしのLive edit

Live Edit機能がChromeエクステンションなしに機能するようになりました。

Angularサポートの改善

Angularテンプレートにおけるコード補完と変数、pipe、async pipe、テンプレートリファレンス変数のの定義箇所へのジャンプがより正確になりました。AngularとAngularJSサポート回りで50を超える既知の問題を修正しました。