DELiGHTWORKS Developers Blog

ディライトワークス株式会社で扱っている技術や、研究開発の模様をお伝えするブログです。

de:code 2019 セッションレポート!

ご挨拶

こんにちは、ディライトワークス技術部です。

技術部では、直近のゲーム開発に役立てるための技術の調査・検証を行い、これまでに会社で使用したことがない技術の導入を推進しています。

また、各制作部と共にゲーム開発を進めたり、様々なプロジェクトで共通して使用できる基盤部分の開発も担っています。

ディライトワークスでは主に.NETでサーバサイドの開発を進めており、もちろんVisual Studioも使っていることから、そのあたりの情報を入手しようとde:code 2019に参加してまいりました。

昔は.NET Frameworkで開発していましたが、ここ数年のプロジェクトでは.NET Coreを使ってますので、特に.NET Coreのノウハウとかを聞ければ良いなという目論見がありました。

de:code 2019の基調講演や全体的な雰囲気などは以下にまとまっていますので、

developer.delightworks.co.jp

こちらの記事では各セッションごとの感想を書いていきます。

セッションレポート

一挙に紹介! Visual Studio 2019 新機能とMicrosoft Build 2019 で発表された開発ツール最新情報【.NET 開発者向け】 / 日本マイクロソフト株式会社様

もともとVisual Studio 2017を特に不自由なく快適に使ってまして、あまり積極的にVisual Studio 2019の情報を集めていなかったので、ちょうど良い機会ということで聴講しました。

以下、気になった機能を列挙していきます。  

コードクリーンアップ

コードクリーンアップという機能が追加されました。この機能を使うことで、不要なusingの削除など、様々な修正を一括で実行できます。プロジェクトごとにルールを決める必要はありそうですが、実際に運用していきたいと思える新機能でした。

デバッグ実行時の検索

デバッグ実行時に各変数の中身の検索ができるようになったということで、開発中どこかのタイミングで役立ちそうな気がしました。

IntelliCode

IntellSenseを表示する際、GitHubのコードを機械学習したAIにより、その文脈でオススメのメソッドなどが★マークで表示されます。精度がいかほどか気になるところですが、便利な機能だと思いました。

Time Travel Debugging

Azure VM上のWebアプリケーションの動作を記録して、Visual Studio上で再現する機能です。開発サーバが謎挙動をする時など、非常に便利な機能だと思いました。

ただ現状はAzure VMのみ対応とのことで、今後、対応範囲が拡大していくと嬉しいです。

これまでは2019への乗り換えを急ぐ必要はないかなと個人的に思っていましたが、このセッションを聞き、積極的に2019を使っていこうと思いました。

ASP.NET Core + Azure で支える熟成 3 年「私だけのポン酢」アーキテクチャ / 株式会社オルターブース様

ディライトワークスでは新規タイトルを.NET Coreで開発を進めているため、.NET Coreの事例を聞きたいと思い、聴講しました。

マイソースファクトリー(https://mysaucefactory.com/)というサービスの裏側についてのセッションでした。セッションの冒頭の方にありました「なぜ.NET Coreを最初から採用したか」には興味がありまして、いずれも共感できる内容でした。

  • もともと受託開発でASP.NETを使用していた
  • Visual Studioは開発環境として優れている(デバッグをしやすい)
  • 開発者として.NET Coreに興味があった
  • 自社サービスであれば存分にチャレンジできる環境だった

また、それぞれのクラウドサービスの特性を理解した上で、積極的にAzureとAWSのマルチクラウドにされていることが印象的でした。

例えば、

  • 認証処理について、Azure AD B2Cはデザインの一貫性が合わず、AWSで実現
  • フェイルオーバーについて、Azureで「Azure DNS」「Azure Traffic Manager」「Azure CDN」「Azure BLOB」で構成することも考えたが、Zone Apexで実現できなかったのでAWSを利用

などです。

最初からマルチクラウドを狙っていたわけではなく、使いたいサービスを考えた結果、マルチクラウドになったとのことでした。

.NET Coreの導入経緯からマルチクラウドでのアーキテクチャ紹介まで、大変参考になったセッションでした。

.NET とクラウド ネイティブ ~ 本格化するクラウド移行とそのアーキテクチャ (前編&後編) / マイクロソフト コーポレーション様

.NETのロゴの歴史振り返りから始まったこのセッションは、デモを交えながらこれからの.NETのビジョンの紹介とクラウドネイティブでの考え方が紹介されました。

.NETは「すべてのアプリのための統一プラットフォーム」、.NET Core 3はpreviewに入っていて、ML.NET もこれから加わり、.NET Framework/.NET Core/Xamarinのライブラリーを.NET Standardに統一する.NET 5のロードマップも発表され、さらに充実した機能が追加され、統一プラットフォームへ進化します。

.NET 5 は.NET Coreをベースにするので、これからの.NETを採用する際に新規プロジェクトは特殊は要件がない限り.NET Coreを選択するとよいでしょう。

VisualStudioのDockerデモにて、Dockerとして立ち上がっても、ステップデバッグが使えるし、ブレイクポイントも設定できることを知りました。個人的にしらなかったことなのですこし感動しました。

アプリケーションがコンテナで動くことが多くなって来ているので、ローカルで開発する際にこういった機能がサポートされているとすごく助かります。

.NETの開発者は減少していると聞いておりますが、今後のロードマップで示されたように便利になっていくので、これから.NET仲間が増えるといいですね。

最後に

以上、de:code 2019のセッションレポートでした。

今後もディライトワークスではクラウドベンダーのイベントに積極的に足を運び、各社の情報を収集していこうと思います。

 

©DELiGHTWORKS