intellista

engineer's notes about application development, data analysis, and so on

Visual Studio CodeでのJavaの開発に関するMeetupをチェックしました!


Visual Studio CodeJavaの開発ができるのでしょうか?
そんな疑問にうってつけのMeetupがあったのでライブ視聴させて頂きました。

結論からすると、まだ実務では機能面やJDKバージョンなどの面でEclipseのほうが安心な気がしましたが、Visual Studio CodeJava向け機能もかなり充実していることがわかりました。
それでは、チェックした情報を掲載します。

チェックした情報

今回ライブ視聴したのは「VS Code Meetup #13 - Getting Started with Java」です。
www.youtube.com

YouTube Liveだと後から見直せるのもいいですね!

内容は次のとおりです。

  • 1. JavaユーザのためのVSCodeのススメ(3:10あたり~)
    簡単なSpring BootのWebアプリ(URLパスの末尾を画面に表示する)を作成するデモンストレーション
    by @tikemin氏
  • 2. Visual Studio Code Java の開発チームへのフィードバック(31:40あたり~)
    利用者アンケートの要望(10個ほど)を題材に有識者お2方が対談
    by 寺田佳央氏(Microsoft社)、森島政人氏(Pnop社)
  • 3. VSCode Remote - Containers x Java(1:08:30あたり~)
    Dockerとの連携など
    by 菊田洋一氏
  • 4. Getting Started with VS Code x Java x Azure x LINE Bot(1:15:18あたり~)
    公開コードのコピペで簡単にオウム返しのLINE Botを作成できる (動画デモ)
    by もっちゃん氏

1つ目は、Spring Bootの簡単なコントローラ、WEB画面を実装するデモンストレーションです。
慣れてしまうと本当に簡単に開発できそうな気がしました。
(ただし私の環境では今のところ同じ操作感を実現できていません。)
なお、Coding Pack for JavaというVisual Studio CodeJDK、各種Extensionがセットになった環境を利用されているそうです。
デモのソースコードは下記にあるそうです。
(中を見たら今回のライブのコードのほうがより簡略化されおり、とっつきやすかったです。)
GitHub - tikemin/spring-boot-sample


2つ目の登壇者のおひとりが、Java向けのVisual Studio Codeの環境構築(Coding Pack for Java)について、別の動画を公開されています。
www.youtube.com
これによると、Javaのバージョンが11以上であることが必須とのことです。
古いバージョンを変えられない事情のプロジェクトには導入できなそうですね。(残念...)
ともあれ、こちらをチェックして1つ目のデモ内容をひとりハンズオンしようと思っています。

3つ目の登壇者の方が当初予定されていた内容は、次の記事にされているそうです。
qiita.com

4つ目の方(司会を兼務)のセッションでは、LINE Botも手を伸ばせば届くところにあるという情報が得られたのがよかったです。

所感とまとめ

長らく私はJavaのアプリケーション開発をEclipseで行っていました。
近年はVue.jsベースのSPAを主に作っていて、フロントエンドの相性の良いVisual Studio Codeをメインで使っています。

Visual Studio Codeはすぐに好きになりました。
デフォルトでダークな外観なので目が疲れにくく、フォントも色分けも見やすいです。

ただしバックエンドにSpring BootといったJavaを採用すると、どうしても高機能で使い慣れたEclipseが具合が良いです。
Visual Studio CodeEclipseの2つを入れても、メモリ8GBくらいのマシンであれば気になることはありませんでした。
(大量データを扱うアプリ出なかったこともあると思います。)
ですがIDEを2つ入れるのは単純に気持ち悪く、できれば外観の良いVisual Studio Codeに統一できないかな、と時々情報収集しています。

2019年ころに少し導入を試みたのですが、その頃はデバッグやテスト実行も最低限は動きそうでしたが、Eclipseのような操作感には至らない印象でした。

今回の情報では、それからかなり進化して、Java向けの機能が充実してきていることと、充実させる動きが進んでいることがわかりました。
ちょっとまだ実務で使うにはEclipseに軍配があがりそうですが、引き続き動向はチェックしたいです。