2011-12-09 8 views
20

私は小さなアンドロイドアプリケーションを作成しており、ユーザーがアカウントを作成できるようにする大きなアプリケーションを作成したいと考えています。何らかのバックエンドが必要な機能を追加するだけです。アンドロイドアプリケーションにデータベース/バックエンドを追加する

私はプログラミングが初めてで、Java/Androidから始まっています。私はこのようなことについてどこから始めるべきですか?これは私が必要とするデータベースでしょうか?どのタイプが普及していますか?

私は約https://www.parse.comを読んで、面白くて使いやすいように見えますが、私は標準ではないか、自分のクライアントでしか使えないものを覚えていません。

+0

おそらく、あなたはこの質問で説明されているいくつかの選択肢を見たいと思うかもしれません:http://stackoverflow.com/questions/7912570/ready-to-use-backend-for-mobile-applications/10235975# 10235975 – Andreas

答えて

28

これまでParseを使用したことはありませんが、サーバー側のコードをすべて記述することを心配しないように思えます。欠点は、彼らのAPIと物事の方法にも結びついています。 Parseを使用する場合は、AndroidアプリケーションがParseと対話するためのコードを記述するだけで構いません。その詳細については、そのドキュメントを参照してください。

安いルートにはもう少し作業が必要です。あなたは、あなたのAndroidアプリケーションから/ハンドル要求を制御するためのバックエンド

  • サーバーサイド言語を(つまりJavaの、PHP、Pythonの...リストに行く)をホストする

    • サーバーが必要になります。

    • データベース(などのMySQL、PostgreSQLの、オラクル、)あなたがしたいスキーマとセットアップ(つまり、ユーザテーブル)

    一般的な流れは以下のとおりです。あなたのドロイドアプリがhttp://yourserver.com/BackendFunctionにリクエストをするだろうその関数へのパラメータを持ちます。あなたのサーバー側のスクリプト言語は、バックエンド作業を行います(つまり、データベースにユーザーを追加する)。サーバーは関連情報を含む情報(通常はJSONまたはXML)をアプリケーションに返信し、アプリはその情報を素早く表示します。

    サーバー側の言語である&データベースを使用してデータベースを照会する方法と、HTTPリクエストを送信/処理する方法を調べる必要があります。&

  • +0

    ありがとう!それは基本的に私が知りたかったこと、チュートリアルに関する提案、またはこれについて学習を始めるための何か?私はすでに少し知っているので、私はJavaサーバー側を使用して私の最善の賭けだと思う​​が、私はPythonを学ぶことを考えていた。 – Peter

    +2

    [Python Webフレームワークのリスト](http://wiki.python.org/moin/WebFrameworks)と[Java frameworks](http://en.wikipedia.org/wiki/Comparison_of_web_application_frameworks#Java)です。あなたが学ぶ必要があることはたくさんありますが、これは深いテーマです。いくつかのWebフレームワークはモデルビューコントローラ設計に従います。あなたのアプリケーションのサーバー上でのビューの作成を無視して、モデル(データベースオブジェクト)とコントローラ(アプリケーションにそれらのデータベースオブジェクトを取得する処理)をコーディングするだけで済みます。フレームワークのドキュメントを読んでください。あなたがURLを作成し、それにいくつかのデータを提出してデータを返すことができるかどうかを見てください。 – JMoy

    +0

    私は同じ答えを探していました。オンラインリソースはありますか?これは最初から最後まで私を導くことができますか?私はあなたが質問を正しく理解した唯一の人だと思います! –

    5

    データを保存するには、サーバー側にある種のデータストアが必要です。これは、従来のRDBMSデータベース(mysqlまたはpostgresql)、またはnoSQLソリューション(mongodb、riak、couchdb)のような新しいものでした。 Parseはクールに見えますが、私はそれを試みたことはありません。

    私の最近のAndroidプロジェクトでは、CouchbaseのAndroidライブラリ(http://www.couchbase.org)とektorp()を使って、サーバー側のCouchDBインスタンスに複製できるようにしています。それは、多くの理由の偉大されています:

    • は(無変換 - 結合/シリアライズ)JSON形式のデータを送信しないデフォルト
    • してデータを送信するためにHTTPを使用しています
    • シンプルEKTORPにコマンドを「複製します」

        :また、クライアントとサーバ

      間/プッシュデータを引き出すために、あなたが選択したデータストアに基づいて、あなたはまだいくつかを決定する必要があります

    • どのような形式でサーバーにデータを送信しますか?私はJSONをお勧めしたいと思います。他のオプションは、XMLまたはYMLです。
    • トランスポートのためにクライアント上でそのデータをどのように変換しますか?あなたがJSONを選択した場合、jackson-jsonライブラリは素晴らしいです。
    • 選択したデータ形式を保護および/または変換するために中間層が必要ですか?中間層が必要な場合は、安らかなWebサービスを構築するためにSpring MVCをチェックしたいかもしれません。

    (サーバーサイドのものは時々そのように感じる傾向があります)、それを維持しておけば、それを手に入れることができます。

    関連する問題