2009/07/10

明日は、ドラゴンクエスト9

の発売日だー。

なんかわくわくするなー♪



しかも、今、テレビゲーム部門で1位だ。

[gadget]各viewにhello world

昨日、viewの紹介をしたので、今日は、実装方法について。

まず、単純に各viewに対して、文字を表示してみたいと思います。

基本的にはgadgetには、決まった約束があるのですが、ファイル形式はxmlです。

<?xml version="1.0" encoding="UTF-8" ?> 
<Module>
<ModulePrefs title="test"
directory_title=""
title_url=""
description=""
author="maito.kuwahara"
author_email="mai.musicfactory+gadgetfactory@gmail.com"
author_location="japan"
screenshot=""
thumbnail=""
height="200"
author_photo=""
author_aboutme=""
author_link="http://temping-amagramer.blogspot.com/"
author_quote=""
>
<Require feature="opensocial-0.8"/>
</ModulePrefs>
<!-- home view -->
<Content type="html" view="home">
<![CDATA[
home viewです。
]]>
</Content>
<!-- canvas view -->
<Content type="html" view="canvas">
<![CDATA[
canvas viewです。
]]>
</Content>
<!-- home、canvas viewに対応していない場合 -->
<Content type="html">
<![CDATA[
defualtのviewです。
]]>
</Content>
</Module>

xmlは大元となるタグが存在するのですが、それはModuleタグが担っています。

次に、ModulePrefsタグの属性をそれぞれ解説していくと、
title="ガジェット上に表示されるタイトル"
directory_title="iGoogle gadgetの検索結果に表示される時のタイトル"
title_url="タイトルをクリックした時に遷移されるurl"
description="gadgetの詳細"
author="gadgetの作者"
author_email="gadget作者のメールアドレス"
screenshot="gadgetの詳細画面に表示される画像(280ピクセルでpngが望ましい。)"
thumbnail="gadgetの検索結果時に表示される画像(120x60ピクセルでpngが望ましい。)"
author_affiliation="gadget作者が所属している"
author_location="gadget作者が住んでいるところ"
author_photo="gadget作者の写真(70x100ピクセルでpngが望ましい)"
author_aboutme="gadget作者に関して500文字以内で"
author_link="任意のurl"
author_quote="引用したい言葉300文字以内で"
author_affiliation="gadget作者の所属"
height="gadgetの高さ(後で、動的に変更ができる)"
ってな具合になっていると思う。
(see also:Gadgets XML Reference)

author_XXXで始まるのは、authorページで表示されるものを設定しています。

もし、自分が作ったgadgetが超人気になった場合、上位ページに表示されるので、その場合に備えて記入しておいた方がいいと思います。

次に、Requireタグですが、いくつかあって、今回は、feature="opensocial-0.8"を書いています。

これは、open socialを意識したgadgetを作成しますよーっと意思表示したタグです。

次に、Contentタグですが、

view属性の値が

home

canvas

何もない

と3つのバリエーションがあります。
(いずれもtype="html"です。)

基本的にtypeはhtmlでよくて、他にもurlという属性値があるのですが、今回はしょーりゃく。

で、上の3つの違いですが、これは昨日、紹介したとおり、3種類のviewをあらわしています。

homeは、home view

canvasは、canvas view

何もないのは、
home viewとcanvas viewに
対応していないview
とまさにそのまんまですね。

各viewに表示するコンテンツは、
<![CDATA[から]>までの部分に記述します。
htmlタグ、headタグ、titleタグ、metaタグなどは必要なく、bodyタグ内に記述するものをそのまま書けばオッケーです。
もちろん、scriptタグを書いて、javascriptを実行したり、styleタグを使って、cssの設定することも可能です。

後は細かいjsのファンクションを覚えていくだけなので、楽勝ですね。

2009/07/09

[gadget]viewの定義

最近、iGoogleのみでなく、mixiもopen socialに準拠したgadgetをサポートしはじめたので、view(実際に画面に表示されるウィンドウ)について改めて確認してみたいと思う。

今回、iGoogleとmixiで確認してみる。

まず、トップページに表示されるのが、home viewです。

iGoogle
Photobucket

mixi
Photobucket

iGoogleの場合、おそらく普段使っている画面とはちょっと違うと思います。
これは、open socialに準拠した開発者専用のsandboxバージョンで、普通にiGoogleを開いただけでは表示されません。

sandboxのログイン方法は別途書きたいと思っています。

mixiの場合は、そのままトップページの右側のサイドバーに表示されるのが、home viewとなります。

canvas view

iGoogle
Photobucket

mixi
Photobucket

iGoogleの場合、左側のサイドバーに表示されたgadgetの名前をクリックした時に表示される、gadgetメインページです。

選択されたgadgetがデカデカと表示されます。

mixiの場合は、home viewで表示されたgadgetのタイトルをクリックすれば、canvas viewに遷移します。

あと、おまけでiGoogleの場合は、上記の2つ以外のページがあります。
Photobucket
現在、iGoogleで正式に運用されているのが、上の画面で、open socialを意識した作りになる前はこのようになっていました。

他にもviewがあるのかもしれませんが、これぐらい把握しておけば、開発する際には、困らないぞと。

2009/07/08

[iPod]OS 3.0にバージョンアップ

しました。

ずっとどうしようかなーっと悩んでいたのですが、知り合いとメールをしていて、バージョンアップに踏み切ることにしました。

だって、バージョンアップをするのに1200円かかるんですよ。

ちょっと高いと思いませんか??

どちらにしよ、sdkでアプリを開発している以上、しなければならないのですが。

バージョンアップして最初に思ったことですが、ボイスレコーダーって使えるのでしょうか?
iPod touchの場合、音声入力できないような気がするのですが。。。

2009/07/07

[本]クリスマス・カロル

すぐに読了!!



第一章:マーレイの亡霊
第二章:第一の幽霊
第三章:第二の幽霊
第四章:最後の幽霊
第五章:事の終わり
解説

via:目次

なぜかamazonに目次がなかったので、本書から引用。

金貸しスクルージが3人(なのか??)の幽霊の出会いを通して冷酷な人間から優しい人間へと変わっていく様を描いた作品。

チャールズ・ディケンズの代表作の一つかな。

本作と最初に出会ったのは、代ゼミ荻野講師のテキストに書かれた要約文。

ちょーどその時、家内にふられてしまって絶望にふしていた時に、読んだので、ものすごく感動したことを昨日の事のように覚えています。

あれから読もう読もうと思って、ようやく読むことができた。

あの時の感動以上のものを本書を通して得ることができました。

小説の割には、ものすごく短いし、心温まるお話なので、いつか生まれてくる子供に読んで聞かせたいなーっと。

2009/07/06

[coldfusion]バージョンナンバーごとに処理を分ける

たまたま、CFのバージョンナンバーを取得する方法がわかったので、バージョン毎に処理をわける方法について考えてみる。

といっても、↓のプログラムを貼り付けただけなんだけどね。

<cfset cf_version_number = Server.ColdFusion.ProductVersion>
<cfset cf_version_number = left(cf_version_number,1)>

<cfswitch expression="#cf_version_number#">
<cfcase value="7">
foo
</cfcase>
<cfcase value="8">
hoge
</cfcase>

</cfswitch>

Server.ColdFusion.ProductVersionで、バージョン番号が取得できるんですね。

リファレンスに書いてありました。

ただ、これだと少数点以下の数字ももれなくついてきちゃうので、left関数で、大元の番号を取得し、後は、cfswitchに流し込むだけ。

すっきり書くことができました。

2009/07/02

[coldfusion]タグのコメントについて

こう書いてもばぐらないらしい。

<!cfset hoge = "" >

どうやらCF君は、自分のタグではないと認識するみたいです。

はじめて知った。

2009/07/01

[coldfusion]version8について

さっき、8についてちょっと書いたので。

8でまず目についたのは、img系操作のタグないし関数が増えたかなと。

これもjavaでオブジェクトを作成した上で、バイナリファイルをいじる必要があったので、その手間が省けていいのかなーっと。

この点では、完全に、phpに負けていましたね。

後、ajax関連のタグ・関数が増えていますが、特段、普段から使っている人にとっては、今更感があるのかなと。

[coldfusion]createobjectの属性が追加された

どうやら8から属性が追加されてみたいです。

追加された属性は、主に、プロキシ関連なのですが、おそらく、restやsoap通信をプロキシを通して行う際に、ネイティブにjavaのオブジェクトを作る必要があったので、問い合わせが多かったんじゃーないのかなーっと思っています。

リファレンスはこちらから

2009/06/30

[widgmedia.com]IE対応に

しました。(IE6で動作確認)

是非!!

こちらです。

2009/06/29

[html][css]tableタグの中にあるtextareaについて

IEだけの仕様なような気がするのですが、tableタグの中にあるtextareaを印刷する際に、なぜか、右側に余白ができる現象があります。

具体的にどーいうことかといいますと、

<style type="text/css">
@media print {
textarea {
overflow:visible;
border:none;
}
}

</style>
<table border="1">
<tr>
<td>
<textarea cols="10" rows="5" name="hoge">
長い内容・・・
</textarea>
</td>
</tr>
</table>

上のソースで印刷を行うと、なぜか右側に余白ができてしまうんですよね。

なぜだか理由がわからんのですが。

で、これを回避すには、widthを追加すればいいのかなと。
<style type="text/css">
@media print {
textarea {
overflow:visible;
border:none;
width:△△△px;
}
}

</style>
<table border="1">
<tr>
<td>
<textarea cols="10" rows="5" name="hoge">
長い内容・・・
</textarea>
</td>
</tr>
</table>

firefoxで確認したら、overflow:visibleが有効になっていなかったので、別の方法を模索する必要がありです。

2009/06/28

[html][java]javaアプレットのキャッシュをクリア

したくてぐぐってみたら、なんとすばらしい方法が!!

Javaコンソールからキャッシュをクリアします。

IEですと、「ツール」メニュー→「Javaコンソール」を開いて、
x キーを押すと、「クラスローダキャッシュをクリア」できます。

via:JavaAppletが反映されない

このやり方のすばらしいところは、キャッシュやクッキーを削除する必要がないところ。

もっと早いこと知っていたら。。。

2009/06/27

ドラクエを買おうかどうか悩んでいる

どうしようかなー。



コアファンとしてはものすごくほしいのですが、時間がーーー

2009/06/26

[css]CSSスプライトを使用する方法は既に紹介済み

この記事

CSSスプライトを使用してサイトの表示速度を改善する

CSSスプライトを使ってwebのダウンロード時間を短くする方法は、あまりにも有名な話なのですが、問題が著者。

この記事の著者は、Chris Bennettとなっているのですが、てっとり早くいうと、Steve SoudersのハイパフォーマンスWebサイト ―高速サイトを実現のパクリなんじゃないかと。



だって内容が超似ていましたよ。

引用するのはかまわないのですが、きちんと引用元をかかないとまずいような気がしたので。

See also:[本]ハイパフォーマンスWebサイトの本を買いました。

2009/06/25

[GoogleWave]初参戦

したのですが、全然、使い方がわかんねー。。。

2009/06/24

[java]Runnable(threadについて)

ちょっと今、ゲームのアルゴリズムを勉強したくて、たまたま昔に買ったこちらの本を模写しています。


で、Runnableインタフェースを使用したスレッドがいきなり登場するわけなんですが、こちらのサイトを参考にすると、run()メソッドをコールしなくても、startメソッドを呼び出してしまえば自動的に実行してくれるのがなんとも便利な。

スレッドなんて普段の業務で使わないから使い方忘れちゃったよ。
やっぱ使わないとドンドン忘れていっちゃうなー。。。

ちなみに、スレッドを学んだのはこの本なんだけどね。