爆速で成長したいエンジニアは『PhpStorm』を使いこなせ

  • 2017年5月11日
  • by 
爆速で成長したいエンジニアは『PhpStorm』を使いこなせ

どうもこんにちは。daiPhoneです。
すっかり陽気は春ですね。新生活を迎える皆さんもいらっしゃるのではないでしょうか。

そんな私も先月引っ越しをしたばかりで、念願の神楽坂住民になりました。
いや〜、街の雰囲気がたまりませんね。治安もいいし。
これまで住んでいた足立区といったら……(編集部注:足立区民の名誉のためにも割愛)

みなさんが気になる私の近況報告はさておき、現在ショーケース・ティービーの開発部ではHAMA-Gさん指揮のもと、開発ツールの共通化を行っている真っ最中なんですね。
その一つが「統合開発環境(IDE)」の導入。
導入することにより、学習コストの削減や開発作業の効率化が図れますし、All in Oneで仕事ができるため、ファイルはおろかプロジェクト管理も容易になります。

使いこなせればメリットも多そうなIDEですが、IDEと一言で言ってもたくさんの種類があります。一般的に以下のような環境を浮かべるのではないでしょうか。

・Eclipse(オープンソース/IBM社開発)
・NetBeans(オープンソース/Oracle社開発)
・Xcode(Apple社開発)
・Android Studio(JetBrains社開発)
・AppCode(JetBrains社開発)
・IntelliJ IDEA(JetBrains社開発)
・PhpStorm(JetBrains社開発)
・Visual Studio(Microsoft社開発)などなど……

使用する言語にもよると思いますが、これだけの種類があるとなると迷ってしまいますよね。

ショーケース・ティービーではメイン言語がPHPということもあり、開発部の精鋭たちの意見を基に『PhpStorm』を活用することになりました。
決め手となった理由は以下のとおりです。

理由1:数ある統合開発環境ツールの中で、最も動作が軽い
理由2:新人開発員の学習コストが低いこと
理由3:Webアプリ開発に必要なツールがすべて詰まっている
理由4:社内開発している製品で必要な機能が実装されている

使ってみたらオドロキ、本当に『PhpStorm』は優れています。
今回は『PhpStorm』がいかに優れているのかを、少々前のめり気味でご紹介したいと思います!

『PhpStorm』はとにかく便利、でも使いこなすには……

まずは数あるIDEの中でも『PhpStorm』を導入して感じた、優れた点を羅列していきます。

・1画面マルチタスク処理で余計な遷移を必要としない
・Git連携によるバージョン管理が可能(近日中にHAMA-Gさんより別記事でご紹介いたします)
・リモート開発サーバへの自動アップロードを実装している
・Database接続もカンタン
・Terminal表示実装
・正規表現チェッカー実装
・コード自動補完……
あくまでも上記はメリットの一部。実際はここに書ききれない位あるんですね!!

ただし、最初から順風満帆というわけでもありませんでした。
『PhpStorm』を使い始めて感じた点というのもいくつかあったります。

・機能が多すぎて、どれをどのように有効活用したらいいのか分かりづらい
・機能実行の段階までたどり着くのが面倒であるため、結局のところ、別アプリケーションや別エディタで開発を行ってしまいがち

特に二つ目の事例は他の開発員も感じているようで、実際こんなことを言っていました。
「gitと連携できることは知っているけど、その処理までたどり着くのに何度もクリックをしなきゃいけないんだよね~。だから見た目もシンプルなターミナルでやってしまいがちなんだ」
また、別の開発員はこうも言っています。
「コード補完機能がいまいち理解できず、しかも色々なウインドウが出てきてちょっと目障りかな。だから使用を避けてしまうこともあるね」

グループ開発を実践している以上、私だけが満足していても仕方ありません。ただ、グループ内の何人かの開発員でこのような悩みを抱えていたとは……。このまま不満を抱えていたままでは、いずれこの「統合開発環境」導入プロジェクトは破綻してしまうことでしょう。

私は考えました。
なぜこんなにも素晴らしいツールを使わずに、フリーのテキストエディタに甘んじているのか。使いこなせば私のようの “PhpStormer” になれるというのに!
しかし『PhpStorm』のこういった煩わしさを解決するのに、非常に有効な手段もあるのです。
それが “ショートカット” を覚えること。

かなり単純なことではありますが、覚えるだけで開発員の悩みも解決するのです。
もし『PhpStorm』ユーザの読者のみなさんが同じような悩みを抱えているのなら、悩みは一気に解決するのです!

すぐに役立つショートカットあれこれ(逆引き風)

これより活用を交えて、効率的な開発をするのに役立つショートカットたちを紹介したいと思います。
本来であれば、松岡○造に負けないくらいの熱いプレゼンを動画配信したかったところなのですが、時間の関係上、そしてJetBrains社からお金を戴いていないという理由から、今回が文章で失礼致します。

なお、通常のPCでも使用されるような単純なショートカット(コピーやペースト等)は省いており、あくまでも『PhpStorm』で使えるショートカットを抜粋しておりますので、予めご了承ください。
また、私はWindowsの操作方法は把握できておりません。もしWindowsを使用する『PhpStorm』ユーザの方はL○Gさんの記事をご覧になってください。きっと幸せになれます。

<グローバルメニュー操作>

1:とにかくなんでも検索したい(search everywhere)
→[shift] を2回タイプ

2:ショートカット忘れたけどとにかくショートカットを実行したい(action検索)
→ ⌘ + [shift] + A

3:とりあえず環境設定を開きたい(preference)
→ ⌘ + , (カンマ)

<エディタ操作>

[ 文字列編集系 ]

1:文字列等をまとめて処理したい(短形選択)
→ [alt] を押しながらマウスでクリック、そしてドラッグして選択
→または [alt] を2回押してカーソルキーで選択

2:文字列選択をマウスや [shift] + カーソルキーでやるのは面倒(範囲選択拡大)
→ [alt] + [↑]

3:文字列選択解除をマウスや [shift] + カーソルキーでやるのは面倒(範囲選択縮小)
→ [alt] + [↓]

4:行ごとコピーしたい
→(何も選択せずに)[⌘] + [C]

5:行ごとコピーして真下に貼り付けたい
→ [⌘] + [D]

6:行ごとカットしたい
→(何も選択せずに)[⌘] + [X]

7:同一文字列を一つずつ選択し、一括で編集したい(複数選択)
→ [control] + [G]

8:同一文字列を一括で選択し、編集したい(一括複数選択)
→ [⌘] + [control] + [G]

9:ファイルのパスをコピーしたい
→ [⌘] + [shift] + [C]

10:クリップボードから貼り付けをしたい
→ [⌘] + [shift] + [V]

11:複数行をコメントアウトしたい
→ [⌘] + [shift] + [/]

12:全ファイル内で文字列を検索したい
→ [⌘] + [shift] + [F]

13:1ファイル内の文字列を置き換えたい
→ [⌘] + [R]

14:全ファイル内の文字列を置き換えたい
→ [⌘] + [shift] + [R]

15:カーソルの位置に関わらず、とにかく改行したい
→ [⌘] + [enter]

16:改行後にカーソルを移動したくない
→ [⌘] + [enter]

17:行ごと消したい
→ [⌘] + [delete]

18:コードを自動補完させたい
→ [⌘] + [alt] + [L]

[ 画面遷移系 ]

1:いずれかの別のウィンドウに移動したい(アクティブメニュー切替/間接型)
→ [control] + [tab]

2:すぐに特定のウィンドウに移動したい(アクティブメニュー切替/直接型)
→ [⌘] + [number]

   [⌘] + [1] → ディレクトリツリー表示切替
   [⌘] + [0] → データベース表示切替

3:ターミナルを開くたびにマウスで選択するのが面倒だ
→ [alt] + [F12]

4:同一画面での右タブに移動したい
→ [control] + [→]

5:同一画面での左タブに移動したい
→ [control] + [←]

6:エディタ分割したけど左右や上下の移動が面倒
→ [alt] + [tab]

7:タブを消したい
→ [⌘] + [W]

8:自分の移動痕跡を辿る
→ [⌘] + [alt] + [←] or [→]

9:選択したコードをまとめて別の行に移動させたい(インデント自動調整有)
→ [⌘] + [shift] + [↑] or [↓]

10:選択したコードをまとめて別の行に移動させたい(インデント自動調整無)
→ [alt] + [shift] + [↑] or [↓]

11:コードのフォーマットを整えたい(フォーマッター)
→ [⌘] + [shift] + [alt] + [L]

[ git、リモートサーバ操作系 ]

1:リモートサーバへアップロードしたい
→ [⌘] + [shift] + [alt] + [X]

2:git commitまでたどり着くのが面倒
→ [⌘] + [K]

3:git pushまでたどり着くのが面倒
→ [⌘] + [shift] + [K]

あんまりいっぺんに詰め込みすぎとパンクしてしまいますので、今回はこのくらいで。
実際にはもっとショートカットも存在しますし、用途によっては今回ご紹介したショートカットよりも役に立つショートカットがあるかもしれません。
しかし、“面倒…” と思ってしまうようなアクションのほとんどが、ショートカットで解決してしまうことがほとんどですので、面倒と感じた時にはすぐに調べてみることをオススメいたします。

技術の進歩は著しく、日々世の中は便利になっています。しかし、人間の進化はそれに追いついていません。いつの間にか私たちは「ツールを使う側」から「ツールに使われる側」になってしまいました。
そんなんじゃ、いつか人間は機械に使われ、人工知能に操られ、いずれターミネーターの世界のように乗っ取られてしまう!

So it is a Singularity…

そうならないためにも、現存するツールを最大限使いこなせるようになることが重要です。技術を更に高め、ターミネーターに負けない人間になりましょう。

コメント