インフラジスティックス・ジャパン株式会社Blog

インフラジスティックス・ジャパン株式会社のチームメンバーが技術トレンド、製品Tips、サポート情報からライセンス、日々の業務から感じることなど、さまざまなトピックについてお伝えするBlogです。

ASP.NET Core Blazor 案件を成功させる為のスキルセットや開発体制について

こんにちは!

テクニカルコンサルティングチームの古堅です。

C# で SPA を構築できるテクノロジーとして ASP.NET Core Blazor (以降、Blazor) が注目されていますね。

Blazor を採用したいというお声もよく聞くようになりましたが、実際に必要なスキルセットは何か? どんな開発者体制が良いのか?

本記事で解説します!

Blazor 案件に必要なスキルセット

必要なスキルセット

Blazor アプリケーションの構築には、必要なスキルセットは以下となります。

・HTML + CSS ... デザイン面

・C# ... ビジネスロジック

・JavaScript ... Blazor がサポートしていない機能のカバー

Blazor は JavaScript の代わりに C# でコードが書けるのではないか?と疑問に思う方もいるかと思いますが、JavaScript を全く書かずにアプリケーションを構築することは出来ません。

Blazor でも JavaScript は必要、どんな場面で JavaScript が必要なのか?

必要に応じて JavaScript のコードを書く場面があります。

よくあるシナリオとしては、 フォーカスの設定 (※1) や、メッセージボックスの表示などが挙げられます。

JavaScript が必要な事例 1 : フォーカス設定 (C# から JavaScript を呼び出す) ※1

C# から JavaScript へ、一方通行の処理としてフォーカス設定(※1)が挙げられます。

f:id:furugen098:20201204165335p:plain

※1 .NET5 以降は、フォーカス設定は、C# から設定できるよう標準でサポートするようになりました!

JavaScript が必要な事例 2 : メッセージボックスの表示 (C# と JavaScript の相互呼び出し)

C# と JavaScript の相互呼び出しの事例として、確認メッセージを表示し、エンドユーザーに選択を促すようなシナリオがあります。

【メッセージ例】

「入力した内容で申請しますか?」

-> はい

-> いいえ

Blazor の一連の流れとしては、下記の通りになります。

① C# から JavaScript に確認メッセージの表示指示を出す。

ASP.NET Core Blazor で .NET メソッドから JavaScript 関数を呼び出す | Microsoft Docs

② ユーザーの選択結果(はい or いいえ)を JavaScript から C# に通知する。

ASP.NET Core Blazor で JavaScript 関数から .NET メソッドを呼び出す | Microsoft Docs

但し、参画メンバー全員が JavaScript のスキルが必要というわけではない

JavaScript の呼び出しは、C# でラップしライブラリ化することが出来ますので、JavaScript のスキルを持っているメンバーがライブラリ化を行い、その他メンバーはそのライブラリを通じて JavaScript の機能を利用することが出来ます。

Blazor 案件の開発体制について

上記の Blazor の特徴を踏まえて、スキルセットと開発体制を考えると

① C# および JavaScript のどちらも出来るメンバー

➡ JavaScripot をラップしたライブラリを作るメンバー (少人数でOK)

② 業務画面、業務ロジックを作成するメンバー

➡ ①が作成したライブラリを使用するのでスキルは C# のみ (大人数でOK)

Blazor を採用する理由に C# エンジニアが多数在籍している。というお声をよく聞きますが、どうしても JavaScript が必要になる場面があるでしょう。

そのため、少人数あるいは、1人でもJavaScript のスキルが有るメンバーが参画することで、よりスムーズに開発を進めることが出来ます。

まとめ

本記事では、Blazor の開発に関するスキルセットや、体制について紹介しました。

弊社では、新しい開発テクノロジーを採用する際の、必要なスキルを学べる技術トレーニングを提供しています。

技術トレーニングでは、お客様の開発要件をお伺いしながら、要件定義フェーズから実装フェーズまでご支援します。

もしお悩みをお抱えであれば、是非こちらからお気軽にお問合せください!

開発全般に関するご相談はお任せください!

インフラジスティックス・ジャパンでは、各プラットフォームの特別技術トレーニングの提供や、開発全般のご支援を行っています。

「古い技術やサポート終了のプラットフォームから脱却する必要があるが、その移行先のプラットフォームやフレームワークの検討が進まない、知見がない。」

「新しい開発テクノロジーを採用したいが、自社内にエキスパートがいない。日本語リソースも少ないし、開発を進められるか不安。」

「自社のメンバーで開発を進めたいが、これまで開発フェーズを外部ベンダーに頼ってきたため、ツールや技術に対する理解が乏しい。」

「UIを刷新したい。UIデザインやUI/UXに関する検討の進め方が分からない。外部のデザイン会社に頼むと、開発が難しくなるのではないか、危惧している。」

といったご相談を承っています。

お問合せはこちらからお気軽にご相談ください。