モバイルアプリとデスクトップアプリで構成されるサービスを構築しています。サービスのデータの同期を簡単に維持するには、独自のRESTful WebAPIを構築する必要があります。また、Ruby on Rails)でWebアプリを構築しています。最初は、コストのためにすべてを1台のサーバーでホストする予定です。
私はどちらがより良いデザインであるか興味があります:
私は現在、APIをプライベートにすることを計画しており、後でその一部を開く可能性があります。
免責事項:これは私自身のAPIを構築するのは初めてです
最初のオプションを選択することをお勧めします。モバイル、デスクトップ、ウェブアプリの3つのクライアントに同じ方法でAPIを使用させることは、すべてのクライアントが一貫した方法でAPIを使用し、APIの変更が3つすべてにそのまま反映されるため、より優れた設計です。クライアント。
これにより、デバッグが容易になり、新機能の拡張が簡単になります。 Railsアプリがデータベースと直接通信する場合は、毎回Railsアプリのデータアクセスコード(ReSTクライアントコードではなく)を変更する必要がありますAPIが変更され、Railsアプリは、デスクトップおよびモバイルアプリとは異なる方法でデータを変更することになり、不整合が発生する可能性があります。
簡単に言うと、一貫したアクセスメカニズムを維持することで、保守性が向上します。