利用可能なPhpStorm 2017.3

PhpStorm 2017.3







みなさんこんにちは!







そこで、今年3回目のPhpStormの次のリリースが行われました。 今回は、新しい機能の追加と古い問題の修正に加えて、生産性に特に注意を払い、入力時のエディターの応答性を高め、いくつかの検査の速度を上げました。 さらに、人気のあるプラグインの作成者と連絡を取り、できる限り迅速にプラグインを作成できるよう支援しています。







エントリーについては、十分だと思います。 記事が「新機能」ページ無料翻訳であることを追加するだけです。 前のリンクから、またはツールボックスアプリを使用して、新しいバージョンをダウンロードできます。 いつものように、30日間の試用版が利用可能です。 フルバージョンは、PhpStormまたはAll Productsパックのアクティブなサブスクリプションの所有者、およびオープンソースプロジェクトの学生開発者が使用できます。







行こう! (注意、cat 2873.15 Kbytes未満の写真。)







コードエディターのRESTクライアント



太古から、 RESTクライアントプラグインはPhpStormにバンドルされています。 たとえそれをよく知らなくても、Postmanまたはそのようなものを使用したことがあれば、その機能を想像することができます。 この概念を改訂し、 RESTクライアントRFC 2616形式の要求を直接処理するようにしました







RESTクライアント







既存のリクエストをエディターに挿入するか、新しいリクエストを作成できます。 2番目のケースでは、IDEユーザーに馴染みのあるオートコンプリートとリファクタリングにより、作業が簡素化されます。 生成されたリクエストはエディターから直接実行でき、そこで答えを見ることができます。







すべてのデータは拡張子.http



付いたテキストファイルに保存されるため、参照リクエストはコードのすぐ隣のお気に入りのVCSに保存できます。 たとえば、テスト環境や戦闘環境に固有のパーツは、変数の後ろに隠れることがあります。







環境変数







IDEに組み込まれているファイル比較ユーティリティは、サーバーの応答に使用できます。 リクエストを数回実行し、目的のペアを選択するだけで十分です。







ファイル比較







RESTクライアントに関する詳細と写真は、ブログにあり ますが、英語です。







エディターのパフォーマンス



はじめに述べたように、パフォーマンスの改善は編集に影響を及ぼしました。 PHPの世界では、多くの場合、数千行、時には数万行のファイルがあります! たとえば、 Mpdf.phpでPhpStormの速度をテストしたいのです。 これは、1 MBのボトル(約4万行のコード)にPHP、HTML、およびJSが混在したものです。 通常、mPDFで高速に動作するものがあれば、すべてで高速に動作します。







性能試験







そのため、新しいバージョンでは、画面に文字を表示する際の遅延が4倍減少しました! 大きくて巨大なファイルを扱う人は編集を楽しむべきです。 OOPプロジェクトとクラスごとのファイルがある場合、バッテリー寿命がわずかに長いことに気付くでしょう。 バッテリーについて言えば、 省電力モードはエネルギーを節約するだけでなく、IDEを高速化します。







リファクタリング時のNullable型



PhpStormは、ほぼ1年前のリリース以来、PHP 7.1の革新のほとんどをサポートしてきました。 ただし、新しいバージョンの言語の使用をさらに簡素化するために、製品の改善を続けています。 今回、変更はExtractインターフェースChange signatureのリファクタリングに影響しました。







リファクタリング署名の変更







前述のリファクタリングによって行われた変更では、パラメータタイプと戻り値タイプのnull可能?



)ラベルが保持されるようになりました。 ダイアログでは、このラベルを追加または削除できます。







コード生成テンプレート



新しいクラスを作成するためのダイアログにより、既存のタイプのセット(クラス、インターフェース、またはタイプ)からだけでなく、ユーザーテンプレートのリストからも選択できるようになりました。







新しきクラスを作成するためのダイアログ







新しい変数${NAMESPACE}



使用すると、テンプレートの名前空間名を置き換えることができます。 PSR-0 / PSR-4名前空間を使用するプロジェクトに役立ちます。 また、すべてのPHPDocテンプレートで、現在の日付および/または時刻を持つ変数を使用できるようになりました。







例外制御



PhpStormは、スローされた例外を長い間追跡できました。 2012年以降、@ throwsタグがない場合、対応するタグがない場合はPHPDocを更新することをお勧めします。 しかし、ユーザーはもっと欲しかった。 そのため、 未処理の例外冗長な@throwsタグ 、および冗長なcatch句の 3つの新しい検査が同時に出現しました。







未処理の例外検査では、例外をスローできる式が強調表示されます。 式をtry-catch



ブロックでラップすることはできません。また、 @throws



を使用して、上にある関数で例外を宣言することはできません。 問題をすばやく修正するには、 try-catch



生成するか、 @throws



追加し@throws









未処理の例外検査







検査@throwsタグが欠落しているため、長い間カップルが必要でした。 例外を宣言することを忘れることができる場合、余分な宣言を削除することを忘れることができますよね? 冗長な@throwsタグは、アナライザーの意見では、関数からスローされない例外について報告します。 PhpStormは、この例外を使用して、PHPDoc全体を削除または更新する@throws



を提供し@throws









インスペクションに@throwsタグがありません







冗長catch節のリストを終了します。 例外がスローされないcatch



ブロック内でスローされた場合、そのようなブロックは検査によって不要とマークされます。 問題を解決するには、そのようなブロックを削除することをお勧めします。







冗長なcatch節の検査







既存のMissing @throwsタグの検査とは異なり、3つの新しいタグはコードでより集中的に機能します。 アナライザーがないと、IDEの速度が大幅に低下します。 ただし、PhpStormの新しいバージョンの速度はそれほど変化しておらず、1つのMissing @throwsタグが数倍速くなりました-パフォーマンスの作業の別の例。







テスト中



新しいテストを作成するためのダイアログは、 CodeceptionユニットCodeception機能 テストPHPSpecテスト用のテンプレートで拡張されました。







新しいテストを作成するためのダイアログ







ダイアログ自体に変更が加えられ、スタブを作成する1つ以上のメソッドを選択できるようになりました。







新しいテストを作成するためのダイアログ







PHPUnitアノテーション@dataProvider



を使用する場合、ドロップされたセットから1つのテストのみを再起動できることを@dataProvider



できます。







再起動をテストする







さらに、新しいPhpStormでは、不足しているプロバイダーを見つけて生成できます。







プロバイダーの生成がありません







小枝



これで、任意のタグ間または名前付きブロック内に異なる言語を挿入できます。 このような「インジェクション」は、オンザフライで、および事前に準備されたルールの助けを借りて作成できます。







注射剤







さらに、複雑な構造の書式設定が改善されました。 特に、それらのアライメント。







複雑な構造のフォーマット







ウェブ技術



WebStormチームはVue.jsのサポートを改善しました。 たとえば、Vueコンポーネントのプロパティとメソッドでオートコンプリートとナビゲーションが機能するようになりました。 Vueテンプレートでの印刷中に閉じ括弧が自動的に追加されます。 また、スニペットのコレクションを追加して、一般的なコードの記述を高速化しました。 新しいVueファイルテンプレートは、コンポーネントの作成を高速化できます。







Vue.js







JavaScriptの更新とサポート。 現在、標準のオブジェクトとメソッドの自動補完のために、JS PhpStormは「内部」でTypeScript宣言ファイルを使用しています。 このため、メソッドのドキュメントが改善されました(これらのファイルから取得されるか、MDNからダウンロードされます)。







MDN







新しいプルメンバーアップリファクタリングを使用すると、JavaScriptまたはTypeScriptクラスメソッドを親クラスまたはインターフェイスに移動できます。 「親」がまだない場合は、「子」のフィールドとメソッドに基づいた抽出スーパークラスリファクタリングを使用して作成できます。







プルメンバーをリファクタリングする







通常どおり、WebStorm 2017.3に対するすべての改善は、対応するバージョンのPhpStormで利用できます(「そのまま」、またはプラグインをインストールすることにより)。 そして、これに加えて、上記に加えて:TypeScriptのタイプエイリアスの 抽出とインターフェイスリファクタリングの抽出 、1つのプロジェクトでのJavaScriptの複数バージョンのサポート、Jest統合の改善、CSSサポートの更新、ESLintおよびTSLintからのスタイルのインポートなど。







バージョン管理システム



IntelliJプラットフォームは、バージョン管理システムのサポートを更新しました。つまり、PhpStormは、このプラットフォームのIDEの1つとして、各ブランチの状態を記憶し、それらを切り替えるときに復元することを意味します。







ブランチを切り替える







さらに、「 シェルフ」タブで、変更リストの名前を変更したり、「 シェルフ タブと「 ローカル変更」タブの間でドラッグリストをドラッグしたりできるようになりました。







データベース



PhpStormは、DataGrip 2017.3でできることをすべて実行できます。 特に、データベースブラウジングの改善、SQL生成、 JOIN



式後の自動補完、SSHトンネルのサポート。







データベース







結論として



コードスタイルも再設計しました| PHP ([ その他 ]タブを削除)、Composer操作ログの追加、実行中のPHPUnitテストの構成の改善、リファクタリング中のフィールドの可視性フィールドの設定機能( コードスタイル| PHP |コード生成 )を追加しました。







おそらくこれが、私たちがあなたに伝えたいことのすべてです。 しかし、これがリリースに含まれていたすべてではありません。 変更の完全なリストは、いつものように、で見つけることができます 卒業アルバム リリースノート 。 問題をトラッカーで報告するか、この投稿またはブログにコメントを残してください。







ご清聴ありがとうございました!







JetBrains PhpStormチーム

開発への意欲








All Articles