あしたのチーム Tech Blog

はたらくすべての人に「ワクワク」を届けるべく、日々奮闘するエンジニアの日常をお伝えします。

ここが凄いよVSCode

どうも、あしたのチームでエンジニアをしています。第二のスクラムマスタをしておりまするレペゼンSMです。 KFC…じゃなかった、KECさんがRubyMineの紹介をしていたので、対抗してVSCodeについて紹介していきます。

KECさんの「ここが凄いよRubyMineengineer.ashita-team.com

0. いくぜ、RubyMine

f:id:Ashita_seino:20190322143503g:plain

『ガタガタ言ってんじゃねぇ!動けってんだよ!アニキが信じたお前は、オレが信じるお前は、こんな事なんかに絶対負けねんだよ!』

とまあ、こんな感じでMac OSのアップデートしてからジャンピングアプリになっちまったから、再インストールしたり、Javaのバージョンを見てみたりしたけど、『俺も甘い夢をみたものだな…』って結果になりました。原因なんなんだよーー‼︎

『どこにRubyMineが使えなくなって怖くない人間がいる!けど、仕方ねぇんだよ!俺達はVSCodeしかねぇんだよ!(実際にジャンピングアプリになってるし…)好きでやってんだよ!怖ぇから尚の事…前に進むしかねぇんだ…!』

と言う事でVSCodeに乗り換えました✌️
そしてRubyMineには、

『インフィニティィィィィ・・・・!ビックバン!!ストォォォォォォム!!!永劫に続く宇宙創生の業火に焼かれDNAの一片まで完全消滅するがイイイイイィィィィィ!!!!!!』

そんなこんなあり、今回RubyMineと比較を行なっていきましょうか

1. コードジャンプ機能

このメソッドは何をやっているんだろう?と思った時にすぐに調査ができたら便利だと感じたことはありませんか? ご心配ありません、cmd+shift+Fで検索できます。それじゃあダメだって?

『無理を通して道理を蹴っ飛ばすんだよ!!』

何のmethodなのか、何となくわかってますよね?じゃあ問題ないですね。と言いつつ私も「誰か拡張機能作ってくれ(T ^ T)」となってますけどね…

2. メソッドの呼び出し箇所も簡単に調査できる

なぁんだってぇ?何を言っているのかわかんないなぁ。コードジャンプ機能とほぼ同じ機能じゃねぇか。

『理屈じゃねえんだよなぁ…… おんなじなんだよ。てめえを信じる(コードジャンプ機能がある)から、あいつを信じる(メソッドの呼び出しができる)… あいつを信じられるから、てめえを信じられる…おんなじなんだ、俺にとっちゃ。それがつまり、相棒(cmd+shift+F)なんだよ』

まじで誰か拡張機能を…

3. テストの実行が楽である

デバッグ用のgemをbundler経由で導入しさえすれば、VSCodeでもできるんだ!! VSCode用の設定ファイルにBundler経由で実行するって事とか色々することがあるけど…だけどできるんだよ 『記事を書いてくれた人がVSCodeを信じたように私もVSCodeを信じます』

dev.classmethod.jp

4. RubyMineちょっと重いなぁ

MacBook Pro(2.5 GHz Intel Core i7, 16 GB)でも重かったなぁ。検索とか重くて落ちたりしたこともあるし、使っていた時はファンがファンファンずっとなってた。 それに比べてVSCodeは軽いね、いいね。

5. あれ?勝ってなくね??

あれ?RubyMineの方がジャンピング機能とかあってよくね?と思ったそこのあなた、俺も思った… けど、

『穴を掘るなら天を衝く!!墓穴掘っても掘り抜けて、突き抜けたなら俺の勝ち!!』

って事で私が使っているVSCode拡張機能を紹介して挽回してみようか!挽回できるのかは知らんけどね

『てめえの決めた道を、てめえのやり方で貫き通す!』

と言う事で早速紹介していきまーしょう。

1. 怒られる前にちょっとしたミスに気づけるようにしよう(○´▽`)

ついついするのを忘れちゃうRuboCop

f:id:Ashita_seino:20190322185144p:plain

RuboCopを毎回するの大変ではないですか?pushする前にするの忘れたりしませんか?私はついつい忘れてしまったりするんですけどね

拡張機能検索でマーフィくんを探そうぜ。そうマーフィくんがきちんと判定してくれる拡張機能があるのです‼︎

f:id:Ashita_seino:20190322185442p:plain

簡単な例で申し訳ないが、画像のように end の位置がずれていたりすると緑の波線がつくだろ、そしてカーソルを合わせると何で怒られているのか表示される。

f:id:Ashita_seino:20190322185449p:plain

よくね?勝手にチェックしてくれて教えてくれるからpush前にわかるぜ?怒られないよ?

何回か忘れたことがあるけど怒られたことはないんだけどね…

知らぬ間にいらない空白、入ってますよ? ( Trailing Spaces )

f:id:Ashita_seino:20190323004923p:plain

ファイルやソースコードを触ってると、気付いたら末尾に不要な空白やタブが入ってしまうときってない?それを教えてくれるのがこのプラグイン!!タブや空白が入っている箇所を赤くして教えてくれる。言語によってはタブや空白の影響でエラーや不具合の原因となってしまうこともありますし、無意識のうちに入ってしまった気持ちの悪いタブや空白も未然に防ぐことができるため使用言語関係なくみんな入れるんだよ。約束だよ、いいね?

全角スペースが… ( EvilInspector )

ほんとただ単にコード上の全角スペースを可視化してくれる。ほんと全角スペースを入れてしまっていることに以外と気がつかないものなのです。だって私もしたから、みんなもそうだよね?ね?なので、これもあったほうがいいよ。


拡張機能があると言うことは、同じ間違いをした人がいるってことだ。全角スペース然り、Rubocop然り、空白然り同じことした人がいたからだよね?

『同然だ、人間もそこまで愚かじゃない。』

と言うことですね

2. codeを見やすくしようじゃないか

vscode-icons

アイコンがついて見やすくなる。まぁ、ちょっとしたことだけど以外に大事だよね。

https://camo.qiitausercontent.com/bf86d15e45e07fca7cf292ca9ac5d8ac6619e577/68747470733a2f2f7261772e67697468756275736572636f6e74656e742e636f6d2f7673636f64652d69636f6e732f7673636f64652d69636f6e732f6d61737465722f696d616765732f73637265656e73686f742e676966

Bracket Pair Colorizer 2

カッコの対応を色付きで表示してくれる。 ものすごく読みやすくなって最高!!

f:id:Ashita_seino:20190322194229p:plain

indent-rainbow

インデントに色を付けて見やすくしようぜ!!

3. Git関係(GitLens, Git History

「コミット単位でのファイル比較」や「最新のコミット内容とそのコミッター表示」など色々してくれる。git blameする手間なくなる。

https://camo.qiitausercontent.com/11859db2360cf7c47a9dae4b55d6d9fc935f50dc/68747470733a2f2f71696974612d696d6167652d73746f72652e73332e616d617a6f6e6177732e636f6d2f302f3135393638302f36313235636234302d306238332d626238392d306163382d3730313964363066323461632e676966

まとめ

RubyMineが使えなくなっちゃったのをきっかけにVSCodeを使っている。

『RubyMineではないいまはVSCodeだ。』

RubyMineに勝てるようにコードジャンプ機能の拡張機能お願いします。

『コードジャンプ機能、それを・・・まっていたああああああああああああ!! VSCode!!うけとれえええええええええええええええい!!』 を早くしたいです。

きっちりまとめると、RubyMineはRuby on Railsに特化していたのでrailsでの開発に関しては使いやすかったと思います。(半年?くらい前になるのではっきりと覚えてないわ…半年は言い過ぎか?)またRubyMineのジャンプ機能に慣れるとVSCodeでの作業に慣れるまでちょっとやりにくさを感じていましたが、人は慣れるものですし、多分RubyMineにないような機能を使うことができるので、私個人的感想ですと「全然にVSCodeでいいかな」って感じです。

『いいか、忘れんな。 おまえを信じろ。

おれが信じるおまえでもない。 おまえが信じる俺でもない。 おまえが信じる、おまえを信じろ!

好きな方を選べ

あばよダチ公 なんてきざセリフわ言わねー いってくるぜヤロー共』

と言う感じで、好きなエディタを使うといいと思います。

次はSublime TextとかAtomを使っている人が我こそはって名乗りを上げてくれるのかな? | д・)チラッ ところどころネタを挟みつつきましたが、この元ネタわかる人どれくらいいるかな? ここまで駄文に付き合っていただきありがとうございます。

それではまた次の機会に、あばよダチ公👋

『あばよじゃねぇ 一緒だろ?』 と言ってくれる仲間を募集中です🤣

追伸:VSCodeでこれ入れるといいよとかあれば教えてください。