2013年9月28日土曜日

Google App Engine(GAE)とは

目次へ



Google App Engine(以下GAEと書きます)とは、なんなのかを書きます。


■■■■GAEとは■■■■

GAEはGoogleのインフラ上で自作のWebアプリケーションを実行するためのしくみです。
そのために、GAEは次の3つの仕組みを提供しています。
・アプリケーション環境
-Webアプリケーションを実行するための環境
・App Engine SDK
-Webアプリケーションを開発するための開発キット
・管理コンソール
-Webアプリケーションを管理するための機能



■■■■アプリケーション環境■■■■

Webアプリケーションを公開するにはサーバが必要です。
一般的には、レンタルサーバを提供する会社と契約して、サーバを用意します。

このサーバに相当するものとして、GAEでは、アプリケーション環境と呼ばれるWebアプリケーションの実行環境を提供しています。
ここにWebアプリケーションをアップロードすることで、インターネット上に後悔することができます。
次のようなイメージです。


インターネット
   ↓
アプリケーション環境(以下がアプリケーション環境です)
  Webアプリケーション(Java/Python)
  ランタイム環境(Java/Python)
  データストア・サービス・標準インターフェース※


データストア DB
サービス メールサービスなどのサービス。下記参照
標準インターフェース サービス、Java,PythonからDBなどを操作できるAPI



■■■■App Engine SDK■■■■

GAE用のWebアプリケーションを開発するためには、
Google App Engine SDK(Java/Python用)
が必要です。

SDKには、主に次の3つの機能があります。
・アプリケーションの作成・ビルド
・開発用サーバでの動作確認
・アプリケーション環境へのアップロード



■■■■管理コンソール■■■■

管理コンソールを使って、GAE上に公開したWebアプリケーションの管理が行えます。
管理コンソールでは、ログ、データストアの統計情報、その他のリソースの使用料などが確認できます。



■■■■GAEが提供するサービス■■■■

サーブレット&JSP リクエストを受け付けて、画面を返す機能
データストア GAEが準備するデータベースへの読み書き機能
ブロブストア 画像など大きなデータの読み書き機能
チャネル クライアント・サーバ間でのリアルタイム通信を実現する機能
画像処理 画像処理を行う機能(Imagesライブラリ)
メール メールの送受信を行う機能
メモリキャッシュ 頻繁に使われるデータをキャッシュする機能
マルチテナント 1つのアプリケーション上で複数の環境を使用する機能
OAuth認証 OAuth認証を使うための機能
タスクキュー 時間のかかる処理をバックグラウンドで行うための機能
スケジュールタスク 決まった時間や間隔でサーブレットを起動する機能
URLフェッチ GAEから外部のWebサービスを呼び出す機能
ユーザアカウント Googleアカウントまたは、OpenIDを使ったユーザ管理を行うための機能
XMPP インスタンスメッセージを送受信するXMPPを利用するための機能



今回の内容は下の本で調べました。

作ればわかる!Google App Engine for Javaプログラミング

新品価格
¥3,150から
(2013/9/28 17:02時点)




にほんブログ村 IT技術ブログ IT技術メモへ
にほんブログ村

2013年9月17日火曜日

AndroidでRadioButtonを使う

目次へ



RadioButtonを使うには、RadioGroupの中にRadioButtonを作成し、 必要な時にどのボタンにチェックがついているかを見ます。


■■■■layoutのリソースを作成■■■■

RadioGroupの中にRadioButtonを入れます。
RadioGroupのorientationを指定するとRadioButtonがその方向に並びます。

    <RadioGroup
        android:id="@+id/radiogroup"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <RadioButton
            android:id="@+id/radio1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:checked="true"
            android:text="@string/level1" />

        <RadioButton
            android:id="@+id/radio2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/level2" />

    </RadioGroup>



■■■■プログラムでチェックがどれについているか確認■■■■

isCheckedメソッドでチェックが入っているか確認します。

RadioButton r1 = (RadioButton)findViewById(R.id.radio1);
RadioButton r2 = (RadioButton)findViewById(R.id.radio2);

if(r1.isChecked()) {
 radio1がチェックされている時の処理
} else if(r2.isChecked()) {
 radio2がチェックされている時の処理
}




にほんブログ村 IT技術ブログ IT技術メモへ
にほんブログ村