Inleiding
ArcGIS biedt Web app-ontwikkelingsmethoden met drie soorten code: no-code, low-code en scratch.3 typen ontwikkelingsmethoden. Bij het maken van een Web app kan het lastig zijn om te beslissen welke ontwikkelmethode te kiezen. Daarom leggen we de kenmerken, voordelen en nadelen van elke ontwikkelmethode uit, zodat dit nuttige tips kan bieden bij het kiezen van een ontwikkelmethode.
Laten we nu de kenmerken, voordelen en nadelen van elke ontwikkelmethode bekijken.
No-code
No-code ontwikkeling is een ontwikkelmethode waarbij je zonder tekstuele broncode te schrijven, gebruikmaakt van templates om in enkele stappen apps te maken. Het combineert widgets en functies die 'widgets' en 'elementen' worden genoemd om apps te creëren.
ArcGIS biedt de volgende 3 no-code producten.
De kenmerken van elk product zijn als volgt.
ArcGIS Instant Apps: Met templates kun je in enkele stappen apps maken. Als er een template is die aan je wensen voldoet, kun je snel een app maken.
ArcGIS Dashboards: Hiermee kun je dashboards maken die gebruikmaken van eigen data. Je kiest alleen de elementen die je wilt gebruiken, waardoor je direct dashboards kunt maken.Het kenmerk is dat je intuïtief dashboards kunt maken.
ArcGIS Experience Builder: Door widgets te combineren kun je unieke apps maken. Je kunt vloeiende apps maken met drag & drop-bediening, zelfs niet-ontwikkelaars kunnen apps met hoge vrijheidsgraad maken.
De voordelen van het gebruik van no-code producten zijn onder andere:
- Apps die tekstuele broncode vereisen worden meestal ontwikkeld door programmeurs, maar met no-code kunnen ook niet-ontwikkelaars unieke apps maken.
- ArcGIS biedt ArcGIS Online of ArcGIS Enterprise, waar dashboards worden uitgezonden, dus als er een webbrowser is, kun je ontwikkelen zonder andere ontwikkelomgevingen te gebruiken.
ローコード製品を使用することのメリットとして以下のようなものがあげられます。
- ノーコード製品の機能だけでは実現できないが、独自の機能を作成し組み合わせることで従来のスクラッチ開発よりもコストを低減して開発ができる
- 作成した独自の機能は 1 つのアプリケーションだけでなく複数のアプリケーションで使いまわすことができる
一方、デメリットとしては以下のようなものがあげられます。
- ローカル環境での開発になるため独自の開発環境を用意する必要がある
- プログラミングに関する知識が必要になるため、そういった技術を持った開発者が必要
- 機能単位での開発になるため、既存の機能との連携関係を考慮した設計をする必要がある
- 単一の機能単位でみるとローコード開発ではアプリケーションの操作画面 + ビルダーの設定画面を作る必要があり、スクラッチ開発に比べて開発コストが大きくなる
- 上記により、複数の機能を作成しようとする場合、スクラッチ開発よりも開発工数がかかる可能性がある
- 作成したアプリケーションや機能を配信する際は、別途 Web サーバーが必要になる
- ノーコードで新規に追加された機能を使用したいという場合には、改めて新しいバージョンでアプリケーションや機能をコンパイル、デプロイし直す必要がある
スクラッチ
スクラッチ開発は、一からソースコードを記述して独自のアプリケーションを作成する開発手法になります。
ArcGIS では以下のスクラッチ製品があります。
製品の特徴としては以下の通りです。
ArcGIS Maps SDK for JavaScript:一から独自のアプリケーションを作成するため、要件にあった柔軟なアプリケーションを作成できます。様々なフレームワークを使用した開発や外部の API と連携したアプリケーションを作成することができます。また、自社で管理している Web アプリケーションに ArcGIS の地図を埋め込むことができます。
スクラッチ開発を使用することのメリットとしては以下のようなものがあげられます。
- ノーコード、ローコードでは実現できないアプリケーションの作成が可能
- UI から機能まで必要な要件を満たすアプリケーションを開発することができる
- ArcGIS だけでなく外部の機能と連携したアプリケーションを開発することができる
- 自社で管理する Web アプリケーション上に ArcGIS の地図を埋め込むことができる
一方、デメリットとしては以下のようなものがあげられます。
- 機能変更や拡張が必要な場合はアプリケーションのソースコードを書き換える必要がある
- プログラミングを行う必要があるため、開発の知識を持った技術者が必要
- 作成したアプリケーションを配信する際は、別途 Web サーバーが必要になる
それぞれの開発手法について表にしたものが以下になります。
ノーコードは開発コストを抑えてアプリケーション開発でき、メンテナンス性が高いですが、機能や UI を拡張することができないため要件が満たせない場合があります。一方でスクラッチ開発は開発コストが大きくなり、メンテナンス性も低くなりますが、機能や UI は自由に作成できるため要件に忠実にアプリケーションを作成できます。ローコードはノーコードとスクラッチ開発の間を取ったような開発手法になります。ただし、ビルダーの設定画面を構築することや、他のウィジェットとの兼ね合いを考慮した開発を行う必要があるため、1 機能あたりの開発コストが大きくなります。そのため、多くの機能を開発する場合はスクラッチ開発の方が、開発コストが低くなる可能性がありますのでご注意ください。
まとめ
ArcGIS ではノーコード、ローコード、スクラッチ開発と 3 種類の開発方法がありますが、それぞれの開発方法にメリットがある一方でデメリットもあります。求められている要件によって開発手法を変えることで開発工数を最適化できますので、各開発方法の特徴を理解して最適な開発方法を選んでいただけたらと思います。
参考リンク