開発日:
アプリケーションの構成
クロスワード辞典に関する話題です。
アプリケーションの構成
データベースアクセスのためのAPIとフロントエンドを組み合わせるというのが一般的でわかりやすい構成だったのかなと思いますが、クロスワード辞典ではこの構成は採用していません。
基本的にはサーバーサイドでHTMLを生成して返すという昔ながらの仕組みです。SSRというわけでもなく、毎回サーバーサイドでHTMLを生成しています。
選定理由
フロントエンドのライブラリーを使いたくなかったというのがあって、理由はバージョンアップ対応の手間を省きたかったから。サーバーサイドはLaravelを使っているのですが、セキュリティ対応だけでも年に数回の対応があって、メジャーバージョンアップが毎年あります。大した手間ではないとはいえ対応回数が少ないに越したことはありません。
検索機能だけならライブラリーを使わずにフロントエンドを実装してもよかったのですけど、登録・更新や非公開の管理系画面もあることを考えると自分の手には余ります。コーディングエージェントを使えば実装できますが、そこまでして実現したいわけではないので今の形に落ち着いています。