サーバーベースの Web アプリケーションを作成したい場合、HTMXは、RAD Studioの開発者がビジネスロジックを提供しながら、デザイナーがCSSを使用してWebアプリケーションを美しく見せることができる、開発のための優れた柔軟性を提供するソリューションです。
JavaScriptのコードを1行も書くことなく、Web サーバーにロジック全体を配置した完全な Webアプリケーションを構築できます。そのようなWebサーバーに最適な言語は何でしょうか?それは・・もちろん、Delphiです。
HTMXとは?
HTMXはJavaScriptライブラリですが、JavaScriptを記述する必要がなく、ロジックはすべて HTML で実行されるため、HTML 拡張機能として見なすこともできます。React、React、Angular、Vue などの JavaScript フレームワークの代替として最もよく使用されますが、根本的に異なるアプローチ、つまり AJAX リクエストを使用します。
AJAX(Asynchronous JavaScript and XML)を使用すると、WebアプリケーションはWebページ自体に干渉したり、Webページをリロードすることなく、非同期でサーバーからデータを送受信することができます。HTMX を使用すると、Web ページから Web サーバーにデータを送信し、レスポンスとして HTML コードを取得して、Web ページ内で置き換えることができます。
このストラテジーの背後にある考え方は、ほとんどの場合、JavaScriptに依存しないことです。HTMXを使用することで、(自分で書いた)JavaScript コードは含まれず、代わりにアプリケーションのロジックはすべてサーバー側で実行されます。
これには、プライバシーやどのプログラミング言語であっても既存のコードベースを使用できるなど、多くの利点があります。ロジックがWebから分離されていることも、多くの開発者が高く評価している点です。
DelphiでHTMXを使う理由は?
HTMX は、Web サーバーにすべてのロジックを配置して、Web アプリケーション全体を作成する機会を提供します。Webサーバーは、高速で効率的であれば、どのようなプログラミング言語でも書くことができます。そのようなWebサーバーに最適なのはDelphiです。Delphiは高い能力を持ち、オブジェクト指向でマーケットで最も高速な言語の1つだからです。
Delphi開発者にとってこの技術の最大の可能性は、必ずしも新しいアプリケーションを作成することではなく、古い VCL コードベースを Web サーバーに配置して、Web アプリケーションの作成に使用することにあります。この方法によって、Delphiのデスクトップアプリケーションは、JavaScriptですべてのコードを書き直すことなく、完全にWebに移行することができ、膨大な時間と労力を節約することができます。
HTMXライブラリを利用したデモプログラム(Delphi 12で作成)をGitHubリポジトリへアップロードしています。詳しくはこちらを参照ください。
また、このブログをご覧いただき、もしHTMLXに関して興味をお持ちになりましたら、以下のオリジナルのブログ(英語)をご参照ください。