DEV Community 日本語
フォロー
コールバックが含まれている場合、フォームはポータブルではありません。
真にポータブルなフォームは、JSONシリアライゼーション以上のものが必要です。その検証、条件、および送信ロジックも転送可能でなければなりません。標準的なフォームライブラリは、コールバック内にビヘイビアを埋め込むことが多く、ポータブルではなく、バックエンド生成やマルチアプリケーションでの使用には不向きです。コールバックをソースコードとしてシリアライズしようとしたり、コンパクトなDSLを考案したりすることは、重大なセキュリティおよびメンテナンスのリスクをもたらします。代わりに、ビヘイビアはシリアライズ可能な式ツリーを通じて宣言的に表現されるべきです。このアプローチにより、検査可能で、バージョン管理可能で、独立して検証可能なデータ構造が可能になります。生の式ツリーは冗長ですが、TypeScriptビルダーのような型付きオーサリングAPIは、この複雑さを抽象化し、正規のJSON契約を生成できます。この契約は、普遍的な真実の情報源として機能し、さまざまなフロントエンドとバックエンドがフォームを一貫して解釈および検証できるようにします。決定的に、位置的なコレクションは、送信時にデータIDをサイレントに変更しないように慎重に処理する必要があります。ポータブルなフォームシステムは、信頼できない入力を安全に処理するために、堅牢な検証およびセキュリティ対策を採用し、破滅的なバックトラッキングや無効な構成などの問題を防止する必要があります。Modyraによって探求されているこのアーキテクチャアプローチは、複雑さを個々のアプリケーションから共有インフラストラクチャに移行させます。それは、必ずしも同一のレンダリングではなく、異なるランタイム間で同一の意味を保証することを目指しています。中心的な課題は、契約を過度に複雑にすることなく、どの程度のビヘイビアをポータブルデータとしてエンコードできるかを決定することにあります。