2

一般的すぎる質問はほとんどないかもしれません。(私が探していた答えが見つかりませんでした)。

まず、開発にsymfony2フレームワークを使用しており、phpStormの購入を考えています。それは安価なプログラムではなく、私はお金を無駄にしたくありません. しかし、私は今でもそれが好きなので、将来への良いステップかどうか尋ねたいですか?

そして私の2番目の主な質問

一部のオブジェクトのメソッドのオートコンプリートされた提案が表示されないことがあります...

私が扱っているオブジェクトをphpStormが理解するのを助けるために私ができる方法またはいくつかの良い習慣はありますか?

私は他の誰かのコードで見たようなことを心に留めています:

public function updateSomething(User $user

または...

    /**
 * Draws an arc on a starting at a given x, y coordinates under a given
 * start and end angles
 *
 * @param Imagine\Image\PointInterface $center
 * @param Imagine\Image\BoxInterface   $size
 * @param integer                      $start
 * @param integer                      $end
 * @param Imagine\Image\Color          $color
 * @param integer                      $thickness
 *
 * @throws Imagine\Exception\RuntimeException
 *
 * @return DrawerInterface
 */

これらのことは役に立ちますか、私はそれらを書くべきですか、それとも単に「ユーザーの読み取り能力」を向上させるためのものですか?

4

1 に答える 1

2

あなたの最初の質問は、非常に主観的なものとして、通常は StackOverflow の外部に属するタイプのものです。実際には答えはなく、人々の意見しかありません。私の意見では、PHPStorm は、a) IDE を使用しない/テキスト エディターを使用する、b) PHPStorm の前に試した代替手段である無料の Aptana IDE (Eclipse ベース) を使用する場合と比較して、あらゆる価値があります。私にとっては、生産性が大幅に向上しましたが、非常に貴重な機能の 1 つはデバッガーです (PHP で XDebug を構成すると)。

一部のオブジェクトのメソッドの自動補完に関する2番目の質問に答えるには-はい、あなたが助けた例と、PHPDocコメントを追加で使用した例の両方で、PHPStormメソッドの自動補完がほとんどすべての場合に機能するはずです。これには、未定義のメソッド呼び出しの誤った PHPStorm の黄色のハイライトのほとんどをクリアするという副作用もあり、本物のエラーがより見やすくなります。

メソッドのオートコンプリートを最大化するためにできることは、次のとおりです。

1. 可能/適切な場合は、常にメソッド パラメーターの型ヒントを提供します。詳細については、 PHP の型ヒントを参照してください。

public function createUser (UserDetails $userDetails, array $roles)

2. 戻り値を持つメソッドには常にPHPDoc コメント(/** で始まる) を与えます。これは、少なくともメソッドの @return 型 (混在していない場合) と配列パラメーターのコンテンツ型 (混在していない場合) を定義します。例えば

/**
 * @param UserDetails $userDetails
 * @param Role[] $roles
 * @return User
 */

3. @var で PHPDoc コメントを使用して、クラス メンバー変数とローカル変数の型を定義します。

class UserManager
{
    /**
     * @var EntityManager
     */
    private $entityManager

    ...

    public function doSomething()
    {
        ...

        /** @var User $user */
        foreach($users as $user)
        {
           ...
        }
...

一般に、PHP 型ヒントを使用し、PHPDoc を適切に使用することをお勧めします。

于 2013-11-11T23:58:41.947 に答える