3つのフェーズで進められる開発支援ツールの.NET 6対応
イベントの最後のセッションでは、グレープシティの氏家晋氏が「グレープシティ製品の.NET 6対応について」と題する講演を行った。
今回登場した.NET 6では、マルチプラットフォーム開発用のMAUIや新しいWindowsデスクトップ開発用のWinUI、そしてHTMLとC#でWebアプリケーションを開発するためのBlazorなどを目玉に、新しい開発フレームワークが提供されている。
「グレープシティの対応方針としては、まずはWindows Forms用製品とWPF用製品にフォーカスして、.NET 6への対応を進めていく予定です。やはりWindows Forms、WPFを活用したアプリケーションが、現時点で広く普及していて、ユーザーが非常に多いというのがその理由です」とセッションの冒頭、氏家氏は切り出す。
グレープシティ製品における.NET 6への対応に関する現在の状況と、今後のマイルストーンは以下の通りだ。まず2021年11月には第1弾として「DioDocs(ディオドック)」の.NET 6対応が済んでいる。DioDocs自体は、ExcelやPDFファイルを作成・編集するためのAPIライブラリだが、Windows FormsやWPFなどのUIテクノロジーに依存しない製品であるため、いち早く対応が完了。具体的には、同製品のV4J SP2(4.2.5)において.NET 6がサポートされている。
.NET Frameworkから.NET 6へ移行する重要なメリットとしては、やはりパフォーマンスの向上があげられる。「例えば、100×100の範囲のセルに文字を設定したExcelファイルをDioDocs for Excelで作成した場合の処理時間について、.NET 6へ移行後には約40%高速に動作するという結果が得られています」と氏家氏は紹介する。
続く第2弾としては、「ComponentOne(コンポーネントワン)」が.NET 6に対応している。ComponentOneは、Windows FormsやWPF、ASP.NETなどの.NET開発プラットフォームに対応した多彩なUIコントロールを提供する製品だが、12月22日にリリースされた2021J V3において.NET 6がサポートされている。そして、こちらに関してもパフォーマンスの大幅な向上が実現されているという。「1万行×20列の描画処理を、Windows Forms版のデータグリッドコンポーネント『FlexGrid』で実行した際の処理時間が、.NET 6への移行により、データの生成と設定で11%、描画で28%、列幅自動調整で31%、それぞれ高速化するという結果となっており、WPF版のFlexGridにおいても同様のパフォーマンス向上が見られます」と氏家氏は言う。
続く第3弾の.NET 6への対応は、2022年の3月以降、順次進められていくことになる。具体的な製品としては、帳票開発コンポーネントである「ActiveReports(アクティブレポート)」、表計算データグリッドコンポーネント「SPREAD(スプレッド)」、入力支援コントロールセット「InputMan(インプットマン)」、多段明細データグリッド「MultiRow(マルチロウ)」の対応が随時なされるとのことで、特にこれら製品を愛用する開発者にとっては、より早期のリリースが待たれるところだ。
以上、「GrapeCity ECHO 2021」で実施された3つの講演の模様をレポートしてきたが、最終セッション終了後には、受講者からの質問に講演者が答えるという質疑応答の時間も設けられた。そこでのやり取りについても少し触れていきたい。
まず、井上氏に対して「LTSで提供される.NETについてのサポートは3年間ということだが、例えば基幹システムなどの場合、移行してもまた3年後には新版へと移行しなければならないとなると、そもそもの移行がためらわれる」という趣旨の意見が寄せられた。
これに対し井上氏は「ご承知のように.NETも現在ではOSSとなっています。そうした意味ではOSSの供給サイクルをご理解いただくことが重要かと思います。具体的には、プロジェクトにおいて、例えばアジャイルやCI/CDによる自動化などを採用いただき、OSSの供給サイクルを意識した運用にして、最新版への対応を円滑に行っていただくというアプローチをとっていただければよいかと思います。そのことが、セキュリティや機能性などの面においても大きな安心につながるはずです」と応えた。
また、秦氏に対しては「SPAの開発は、ASP.NET Web Formsの開発と比較して生産性の点でどうだったか」という質問が上がった。これに対し秦氏は「生産性は、チームが得意とする分野がどの領域なのかということに依存します。バックエンドがAPI化されるSPAでは、フロント側のJavaScriptでの開発部分が多くなり、そこが得意なら当然SPAの採用が望ましいといえるわけです。一方で、SPAのメリットはフロントとバックエンドを分離できること、つまりJavaScriptが得意なチームとバックエンドのC#が得意なチームに分かれて開発できるわけで、そうした部分での生産性の高さというものはあるかと思います」と回答した。
クロスプラットフォーム開発フレームワークとして、限りなく進化を遂げる.NET。今回の「GrapeCity ECHO 2021」は、今後.NET開発者がどのように舵を切ればよいのかを考えるうえでの極めて有効な指針を与えてくれるものとなった。