私は、作成者が (願わくば) 彼らを支援するために使用するアプリを構築しています。
wiki のように考えてみてください。私の(潜在的な)熱狂的な大衆にできるだけアクセスできるようにしたいので、ウェブアプリにすることを考えています.
もちろんそうである必要はありません。他のサイトとの統合やソーシャル機能はありません。ただし、フォームに情報を入力する必要があるため、迅速な構築にはおそらく Web が最適です。
しかし、私はそれを自分でホストしたくありません。買う余裕はありませんでしたが、ほとんどの場合、これを使用する人々は自分のデータを他の場所に保存したくないと考えています. これは彼らが書いていることに関する個人情報であり、彼らが私を信頼してくれるとは思えないので、シッククライアント アプリにすることを考えています。
そこに問題があります。主にフォーム データ入力に焦点を当てたアプリケーションを潜在的なユーザーが簡単に利用できるようにする方法 (イェーイ Web アプリ) だけでなく、データを完全に制御していることをオフラインでも確認できるようにする方法 (イェーイ シック クライアント アプリ) です。
次の解決策が表示されます。
- それをシック クライアント Java アプリとして構築し、縮小バージョンをアプレットとしてネット上で実行して、ユーザーが完全なものをダウンロードする前にプレイできるようにします。
- オンライン用の Flex アプリとオフライン用の Air アプリとしてビルドします (基本的に同じソースの別のビルド スクリプト)。
- 標準の Web アプリ (HTML、JS など) としてビルドしますが、ダウンロード可能なバージョンを使用して、コンピューター上でサイトを完全に実行します。ネットには一切触れません。
1と2を無視して(私はそれらを別々に調べています)、3には以下が含まれると思います:
- 私のコードを実行する準備ができている小さな Web サーバーを含むインストールをパッケージ化します。
- DB を mySQL などから SQLite などに再マッピングします。
- サーバーを実行し、ブラウザーを適切な場所に開く何らかの便利なアプリを作成します。おそらく、Prismのようなものを使用して、ブラウザー全体を非表示にします。
それで、あなたは今までにこのようなことをしたことがありますか?
もしそうなら、どのような問題に遭遇しましたか?
最後に、私が思いつかなかった別の解決策はありますか? '
(また、Joyent Slingshotは別の質問に対する提案でしたが、これは RoR (私は経験がありません) であり、Linux では動作しないと 99% 確信しているので、私には適切ではありません。)