狠狠撸

狠狠撸Share a Scribd company logo
PhpStormを使おう
高槻からは快速急行が早くなります
たなかひさてる
@tanakahisateru
Pinoco developer
js-markdown-extra maintainer
PHPTAL contributor
Firebug translation contributor
Yii framework user
私のPHP IDEの歴史

? Eclipse PDT以前 (紀元前)


? Dreamweaver期


? Eclipse PDT期


? テキストエディタでいいや期


? Coda / Aptana / NetBeans 混乱期
纪元前の话はさておき
Dreamweaver期

? テキストエディタのレスポンスが悪すぎ


? ビューを書ぐらいしか使う気が起きない


? 標準関数しか補完辞書にない


? これはエンジニアの使うツールじゃない
Eclipse PDT期

? ステップ実行できるデバッガが動いた


? 自分で書いたコードからでもそこそこ補完できた


? HTMLのバリデータに本当に必要なエラーが埋もれてわからない


? フロントエンド技術のサポートが古すぎるせいだ


? プラグインを増やさないと機能不足なのに、増やすと設定がカオス化


? プロジェクトの定義が難しすぎた
テキストエディタでいいや期

? 早すぎた Sublime Text = jEdit (ローカライズしました)


? わけわかんないぐらいなら単語レベルの補完で十分


? HTML/CSSなどのサポート機能が必要十分


? エディタのレスポンスもいいしカスタマイズもすごく効く


? プラグインでプロジェクト定義もできる


? これは長く続いた
蔓延する空気
「...でいいや」
そして
「...でいいや」からの脱出
「PHPはJavaの次に静的解析しやすい言語。
これはRubyが気付いていないPHPの長所」
         ―笔贬笔メンターズと朝まで过ごしたときの言叶
Coda

? フロントエンド技術はEclipseより少しはマシ


? コード解析がまるでない


? 所   はテキストエディタ


? spl って打ったら split しか出ないとか、SPLなしっていつのPHPですかと


? それなのにエディタのカスタマイズがほとんどできないのはひどい


? これで有料なのを考えたらjEditのほうがずいぶんマシ
Aptana

? フロントエンド技術はPDTよりはるかに良かった


? Rubyのサポートの良さに比べてPHPがひどかった


? なぜPDTベースでないのかと小一時間


? ターミナルペインを開いてVimを立ち上げて作業するなど
NetBeans

? 最低必要なものが最初から   っている


? 設定が簡単で操作系もシンプル


? フロントエンド技術はそこそこ


? プロジェクト外のテキストを開くとShift_JISで解釈される
で、どうやってファイル別にエンコーディグ変えるの??


? かゆいところに手が届かないあの感じ
で、次はPhpStormか... 有料だな...
体験期間内に機能把握できそうにないぞ
おや? このFREEってなんだ?
「あのー、すみません、Pinocoという
プロジェクトがGitHubにあるんですが」
JetBRAINS
「そなたにライセンスをさずけよう」
ライセンスもらった




   Licensed to Pinoco
PhpStorm

? フロントエンド技術のサポートが最高


? HTML, JS, CSS + Co?eeScript, LESS, Sass, Haml, Twig, Smarty


? フレームワークサポート jQuery, Symfony2, Yii


? コード解析と補完が他のどれよりも現実的


? PHP事情の追従が速い (PHP5.4, PSR-1/2)
 バージョン6からは Composer, PHPMess, Yeoman


? NetBeansのように機能を減らさない。UIで使いやすく。
NetBeansに対するPhpStormのわかってらっしゃる感




 PHPの変数モデルでは、出力引数の宣言とメモリ確保が不要
「Javaとは違うのだよ! Javaとは」
PhpStormを使って実際に良かったこと

? 颁厂厂の色がわかりやすい            ? 问题レポートが分類されている
 リンクしたクラス名を补完できる
 リンクリソースへのパスが补完できる        ? 笔贬笔鲍苍颈迟のカバレッジレポートがエデ
 zen-coding                ィタと連携

? F1キーでphp.netのドキュメントが出
                          ? プロファイラのデータを見るビュー
 てくる
                           がエディタと連携

? Docコメントのサポートが強い
                          ? クラス図も作れるけどER図がなにげ
                           に便利
? 骋颈迟のステータスがその場に見えてる
 コミット前後にいろいろやってくれる
颁厂厂の色がわかりやすい
クラス名を补完できる
リンクリソースへのパスが补完できる
zen-coding


       ul#nav.clear?x>li.item*3>a.big.red

                     [TAB]
これだけでも十分使える zen-coding


               a

              [TAB]

          <a href=””><a>
PHPはWebのフロント用の言語だから
ブラウザ側の技術をおろそかにできない
php.net




          ここで贵1キー
php.net さらに



ここをクリック
php.net は生きているドキュメント
更新/コメントされ続けてるからPHPerには必須
顿辞肠コメントの补完


         /**[ENTER]
Docコメントの警告




 PHPDoc comment does not match function or
           method signature
顿辞肠コメントの更新
PHPDocは非常に重要=事実上の型宣言。
Javaのように静的解析するにはPHPは柔軟すぎ。
「Javaとは違うのだよ! Javaとは」
骋颈迟のステータス
骋颈迟のステータスからの?+D
コミットダイアログ

            Before Commit
              Reformat code
              Optimize imports
              Perform code analysis
              Check TODO
            After Commit
               Run tool
               Upload ?le to: (test server)
変更したファイルのFTP/SFTPで済むのは
ある意味PHPのメリットとも言える。活かそう。
问题レポート
问题レポート(さらに分類)
笔贬笔鲍苍颈迟のカバレッジ




                77%...これを開く



      通ったか通って
      ないかで色分け
プロファイラ
デバッガ/プロファイラのブックマークレット




 http://www.jetbrains.com/phpstorm/marklets/
クラス図
ER図 (厳密にはERじゃないけど)
たまにDBの外部キー制約しかあてにならない
長大SQL文字列結合コードが発掘される。
ちょっと便利な ?+E




   最近アクセスしたファイルとパネル
Pinocoでは実際にPhpStormを
コードレビューに使っています
Doc comment reviewed (@2013-01-30)
...でも
せっかく (Eclipse|Vim|Emacs) を覚えたのに
「プラグインを作ればできるよ」
「Jenkinsのタスクを作ればできるよ」
「だから惯れてるし、これでいいや」
もうやめにしようじゃないか
「...でいいや」と言うために、あなたは時間を
どれだけ(Eclipse|Vim|Emacs)に費やしましたか
「...でいいや」と言い続けるために、あなたは
今後どれほど(Eclipse|Vim|Emacs)に費やしますか
面倒が多い方を選んでおいて
「で、いいや」とはどういうことだろう?
アンチパターン:
「で、いいや」逆転の法則
时给换算でどっちが安い?
スキルがもったいないというのは幻想。
僕も最初に早くコードを書くのは jEdit を使い、
設定ファイルの編集には Vim を使います。
自分に合うIDEを探すことそのものが、
自分の技術分野のニーズを知ることでもある。
乗り換えを駆使しよう
「高槻からは快速急行が早くなります」

More Related Content

PhpStormを使おう --高槻からは快速急行が早くなります #jbugj