PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
Upcoming SlideShare
Loading in...5
×
 

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

on

  • 28,195 views

JetBrainsユーザーグループ in 大阪 の PHP セッション

JetBrainsユーザーグループ in 大阪 の PHP セッション

Statistics

Views

Total Views
28,195
Views on SlideShare
18,357
Embed Views
9,838

Actions

Likes
73
Downloads
48
Comments
1

29 Embeds 9,838

http://tech.junkpot.net 3158
http://tanakahisateru.hatenablog.jp 2507
http://nocono.net 1906
https://bozuman.cybozu.com 848
http://blog.takapra.com 417
http://yugolf.hatenablog.com 348
https://twitter.com 346
http://172.16.1.98 81
https://bozuman.s.cybozu.com 71
http://androidcat.seesaa.net 59
http://s.deeeki.com 37
http://space.hatena.ne.jp 14
http://webcache.googleusercontent.com 12
http://nocono-lokka.heroku.com 6
http://192.168.33.10 5
http://dev.nocono.net 3
http://feedly.com 2
http://geechscamp.lovepop.jp 2
http://www.takapra.com 2
http://mym.corp.yahoo.co.jp 2
https://www.google.co.jp 2
https://abs.twimg.com 2
http://slideshare-download.seesaa.net 2
http://feeds.feedburner.com 1
http://my.dudamobile.com 1
http://www.palette-kenpo.or.jp 1
http://blog.seesaa.jp 1
http://kred.com 1
http://b.hatena.ne.jp 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel

11 of 1

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • 今週から始まったプロジェクト、コード解析がキツイのだがeclipseを止めてこっちで読みなおしてみたい。
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

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

    • PhpStormを使おう高槻からは快速急行が早くなります
    • たなかひさてる@tanakahisateruPinoco developerjs-markdown-extra maintainerPHPTAL contributorFirebug translation contributorYii 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の長所」 ―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 + CoffeeScript, 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を使って実際に良かったこと• CSSの色がわかりやすい • 問題レポートが分類されている リンクしたクラス名を補完できる リンクリソースへのパスが補完できる • PHPUnitのカバレッジレポートがエデ zen-coding ィタと連携• F1キーでphp.netのドキュメントが出 • プロファイラのデータを見るビュー てくる がエディタと連携• Docコメントのサポートが強い • クラス図も作れるけどER図がなにげ に便利• Gitのステータスがその場に見えてる コミット前後にいろいろやってくれる
    • CSSの色がわかりやすい
    • クラス名を補完できる
    • リンクリソースへのパスが補完できる
    • zen-coding ul#nav.clearfix>li.item*3>a.big.red [TAB]
    • これだけでも十分使える zen-coding a [TAB] <a href=””><a>
    • PHPはWebのフロント用の言語だからブラウザ側の技術をおろそかにできない
    • php.net ここでF1キー
    • php.net さらにここをクリック
    • php.net は生きているドキュメント更新/コメントされ続けてるからPHPerには必須
    • Docコメントの補完 /**[ENTER]
    • Docコメントの警告 PHPDoc comment does not match function or method signature
    • Docコメントの更新
    • PHPDocは非常に重要=事実上の型宣言。Javaのように静的解析するにはPHPは柔軟すぎ。
    • 「Javaとは違うのだよ! Javaとは」
    • Gitのステータス
    • Gitのステータスからの⌘+D
    • コミットダイアログ Before Commit Reformat code Optimize imports Perform code analysis Check TODO After Commit Run tool Upload file to: (test server)
    • 変更したファイルのFTP/SFTPで済むのはある意味PHPのメリットとも言える。活かそう。
    • 問題レポート
    • 問題レポート(さらに分類)
    • PHPUnitのカバレッジ 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を探すことそのものが、自分の技術分野のニーズを知ることでもある。
    • 乗り換えを駆使しよう「高槻からは快速急行が早くなります」