PyCharm 2019.3ではJupyterノートブック用の対話型ウィジェット、MongoDBサポート、およびすべてのPython 3.8機能用のコード支援が実装されました。
To provide more interactivity, Jupyter notebooks support interactive controls known as interactive widgets. これらのコントロールを使用すると、静的なノートブックを対話型のダッシュボードに変え、あなたのノートブックを表示する人が表示をカスタマイズできるようになります。 今回のアップデートにより、PyCharmで対話型ウィジェットがサポートされるようになりました。 つまり、出力結果とウィジェットが描画され、それを使用してネイティブなJupyterノートブックのようにノートブックを操作することができます。
今回PyCharmは一般的なウィジェットライブラリをサポートするようになりました。 使用しているライブラリが動作しない場合は、課題の投稿をお願いします。
PyCharmが提供するメリットの一つに、弊社の高度な静的コード解析アルゴリズムにより可能となったインテリジェントなコーディング支援があります。 しかし、Pythonのように動的な言語の場合、静的コード解析だけで十分とは限りません。 そのため、今回のアップデートはJupyter自身が提供するランタイム情報を活用することで機能を拡張しました。 その結果、IDEが静的な解析を使用しても型を推測できない辞書インデックスや深くネストした式のような一部のケースで、よりスマートにコードを補完できるようになりました。
プレビューのフォントサイズをエディタに合わせて設定したり、設定でカスタマイズしたりできるようになりました。 また、プレビューでエディタの `Change font size (Zoom) with Ctrl+Mouse Wheel` オプションが考慮されるようになりました。 このオプションが有効な場合は、Ctrl0> を押したままマウスホイールを使用してプレビュー内のフォントサイズを拡大・縮小できます。
ファイル名を入力する際に入力ミスをしてしまうのではないかと不安に思いませんか? 特に、`open(‘data/survey_data_28112019_exported.csv’)` といった長いファイル名を入力する際にそう思いませんか? このバージョンから、Pythonのコードエディタやコンソールでファイルパスが補完されるようになりました。 コンテキストを認識するコード補完機能を拡張しましたので、ファイル関連のコンテキストで文字列リテラルにファイルパスの候補が表示されるようになりました。
絶対インポートよりも相対インポートをお好みですか? PyCharmはこれら2つのスタイル同士を自動的に変換できるようになりました。 すでにあるパッケージから相対インポートを使用してインポートを行っている場合、当該パッケージからの新しいインポートも自動的に相対インポートとして作成されるようになります。
PyCharmがTypedDictをサポートするようになったため、辞書に対する不適切な値の割り当てを防止できるようになりました。 キーと値のペア構造を正確に表現できるようになり、コードエディタにこれらのペア構造の適切な使用を支援してもらうこともできます。
特定の文字列リテラルを引数に取るメソッド(`open` のファイルモードなど)を使用していますか? Python 3.8の `Literal` 型の注釈を使用すれば、型だけではなく特定の値をチェックすることができます。 サポートされていない値を使用して関数が呼び出された際、PyCharmが警告を表示するようになりました。
当社のテスト作成ツールが自動的にアップグレードされ、pytestもサポートできるようになりました。 このアップグレードに伴い、メソッド宣言部のコンテキストメニューで Go To | Test オプションをクリックするだけでPyCharmが自動的にpytestテストを作成できるようになりました。
デバッグ中の追跡情報は、可能な限り明確かつ詳細であるべきです。 このため、変数ビューを微調整し、より系統立った包括的なデータを表示できるようにしました。 この変更により新しい順序づけ、科学配列の視覚的表現の改善、コレクション長の表示、重複情報の削除が期待されます。
PyCharmの高度なコードインサイトを使用すれば、作業をより早く完了させることができます。 この機能を活用するには、コードとインポート対象の全パッケージの両方のインデックスを生成する必要があります。 多くデータサイエンス関連のパッケージのようにコンパイル済みの拡張機能を含むパッケージを使用する場合、そのパッケージのインデックスを生成する前にPythonインターフェースを記述するPythonスケルトン(スタブファイル)を生成する必要があります。 今回のリリースではこの処理が改善され、インデックス生成処理が少なくとも25%高速化されました。 もちろん、複数のvirtualenvで同じパッケージを使用する場合は生成済みのインデックスが再利用されます。
残念ながら、コードの作業に戻る前にPyCharmのUIがフリーズしてしまうことがあります。 当社はこの問題を非常に不快なものであると認識しており、フリーズの削減に一生懸命に取り組んでいます。 このリリースではUIのフリーズを引き起こす可能性のある多数の問題を修正し、IDEから直接UIのフリーズを即座に報告できる機能を追加しました。これにより、当社がフリーズの原因を調査し、その再発を確実に防止できるようになるはずです。 PyCharmでのUIフリーズを解消するため、ご協力をよろしくお願いいたします!
MongoDBを使用するアプリケーションを開発していますか? PyCharmでMongoDBのコレクションを見れるようになりました。 データベースツールウィンドウ(View | Tool Windows | Database)からデータソースを追加し、データベースに接続してください。 PyCharm Professionalエディションには、JetBrains製のプロフェッショナル向けSQL IDEであるJetBrains DataGripのすべてのデータベース機能が組み込まれています。
コマンドラインアプリケーションを作成する際、通常は引数を素早く変更できると便利です。 `Edit Configuration` を開けばいつでも引数を変更できますが、このリリースからはより便利な方法で引数を変更できます。新しい実行構成マクロ(変数)を使用すれば、アプリケーションを起動するたびにPyCharmに値の入力を促してもらうことができます。
あるテキストがファイル内の一部に出現する頻度を確認したいですか? Findアクションが初期状態で選択した範囲に対象を絞り込むようになりました。 全体を検索したいですか? 検索範囲をファイル全体に拡張するには、Ctrl-F をもう一度押してください。
ブランチの数が多くなるほど、それらの違いを追跡するのは難しくなります。 新バージョンのPyCharmでは、ブランチ比較機能の外観が改善され、コミットによる2つのブランチ間の差分を簡単に確認できるようになりました。
使用中のリポジトリの種類にかかわらず、一箇所で新しいプロジェクトをチェックアウトできるようになりました。
CDNのスタイルシートを使用していますか? そのスタイルシートのバージョンをダウンロードし、コード補完に使用できるようになりました。
Pythonデバッガと同様、JavaScriptデバッガが呼び出しているメソッドの戻り値を表示するようになりました。 戻り値を確認するには、デバッガの歯車アイコンをクリックして「Show Return Values」を有効化してください。