イベントレポート Java on Azure Day  / Javaアプリ開発& 開発環境 for Azure 


# イベントレポート Java on Azure Day / Javaアプリ開発& 開発環境 for Azure 

<iframe width="560" height="315" src="https://www.youtube.com/embed/lJ2qC8dt0V4" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

https://www.youtube.com/playlist?list=PL1RqQ3kddIpb3GLfVi8lGLqWYA7nDWVOu

## Microsoftでは、Javaチャンピオンが約10名ぐらい在籍
JSFとかMVCのスペックリードを務めている人とか、ロンドンJavaユーザーグループのコミュニティのリーダーとか、Ed Burn さんというのは、元サーブレットのスペックリード、Javaに精通したエンジニアである、Javaチャンピオンが約10名ほど在籍。Java On Azureも、日々改善が重ねている。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24782/822c6703-f2ea-5ae3-95b2-889a0a1ea4ca.png)

## Java on Azure

AzureでJavaは2番目に利用されているプログラミング言語。また データベースもMySQL、PostgreSQL、SQL Server、Cosmos DBなどのサービスにアクセスするようなJavaのサービスというものが多数存在、Java On Azureは Microsoftの中でも非常に力をかけてやっている。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24782/a37ff9c9-258b-39d8-5752-b4b825fa231c.png)


## WebLogic On Azure

Java On Azure 非常に多くの選択肢がご用意されている、例えばIaaSだと WebLogic On Azure、こちらは OracleとMicrosoft側でサポート提供していくといったようなものがある。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24782/59f6e42a-07c9-8e3f-c1e1-7124f452c6e8.png)


## Azure Spring Cloud

PaaSでも、Java SE, Tomcat, JBoss EAP などが稼働。Azure Spring Cloudなどは、Springの利用者 開発者に非常に便利なサービスでコンテナを使っているという意識があまり感じなくて使えるようなサービスになっている。Azureでは Springに向けたライブラリとかツールというものを非常に多く用意しており、SpringのアプリケーションとかサービスをAzure上で動かすというのが非常に楽になっている。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24782/47f0330a-adcf-d33e-e355-31b3c2e4d0ad.png)


## Azure Kubernetes Service

Java On AzureのKubernetesのサービス、いろんなJavaのアプリケーションのサービスを動かすことができる。例えば Spring Boot、Quarkusのようなマイクロプロファイル系のアプリ、Oracle WebLogic 、WebSphere、Open Libertyも Azure Kubernetes上で動作できるようになっている。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24782/763eb675-58d8-7239-1d43-4e3b88ab3aa4.png)

## Azure Red Hat OpenShift

Azure Red Hat OpenShiftというサービスを提供している。完全にマネージド管理のOpenShift、細かい運用管理はAzureと、Red Hat、 Microsoftに任せて、よりサービスの開発と提供に集中ができる。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24782/7827bfd8-2ded-9719-a9c7-66943c7bac77.png)

## Serverless Azure Functions with Java

Azure Functionsというサービスを提供、Javaのファンクションのアプリケーションを開発できる。リアルタイムのストリーミング処理、バッチ処理、タイムベース処理、モバイルアプリケーションのバックエンドとして活用できる。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24782/e28f3cd5-a9dc-b66f-0348-db657a7a0ba7.png)

## Microsoft Open JDK

Microsoft自身がビルドをして提供、Microsoftの中でもJavaはMinecraftなど、いろんなところで利用、OpenJDKを提供する前にMicrosoftの社内で使っているJavaのランタイムのほとんどが既にMicrosoft BuildのJDKとかJREで運用している。MicrosoftがビルドしたOpenJDKで直接 MicrosoftがJavaのサポートのほうを提供し、今後もいろんなOpenJDKに関連したツールを提供予定。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24782/d2a95895-0e61-7385-0b20-0942082618fd.png)

## Visual Studio Code と Java

VS CodeでJavaの開発を行うことができる。多くのJavaに関するエクステンション、プラグインがある。Javaの開発、デバッグ、デプロイ、Azureに対するデプロイも非常に容易にできる。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24782/af62ffa0-ae1c-c42f-44ea-e5dc55fc44b6.png)

## IntelliJ IDEA と Azure

IntelliJ IDEAや EclipseなどのIDEにも、Azure用のプラグインを提供、簡単にAzureに対してデプロイ、Azureのサービスを確認したりすることができる。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24782/075d9b8d-da96-b8df-6b31-09724f9ea00a.png)

## Java の各種フレームワーク対応

Spring、Jakarta EE、 Micro Profile Quarkusのような、よく使われるJavaライブラリを そのままAzure上で利用可能。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24782/fe733ab4-7d3b-6d5d-e522-a3fb05807f54.png)

## Java のドキュメント

Javaの開発者に向け、豊富なドキュメントが提供中、Java開発者向けにSpringやMicroProfileなど、各フレームワークに対してのドキュメントも日々追加されている。ブラウザで学習と実操作でのハンズオンができる。Microsoft Learnでは、Javaラーニングパスがあり、Javaに特化したコンテンツを提供している。ドキュメントを調べるのが面倒な場合は、Javaのラーニングパスにアクセスすれば学ぶ事ができる。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24782/a2bff577-2403-aedf-6092-ee5f069735ec.png)