月別: 2011年9月

Communicating with the server

android用の神経衰弱ゲームを公開しました(・∀・)
The Match-up(Memory) game for android was released!

Google Play:
Mole's Match-up.

Introduction page:
Mole’s Match-upをリリースした∩( ・ω・)∩


http://code.google.com/intl/ja/webtoolkit/doc/latest/tutorial/clientserver.html

 サーバとの通信

すべてのGWTアプリケーションはエンドユーザーのwebブラウザ内でJavaScriptとして走ります。だけれども、あなたはしばしばよりスタンドアロンなクライアントサイドアプリケーションを作成することを望むでしょう。あなたのアプリケーションは、リクエストを送信したり、更新を受信したり、サーバと通信する必要があります。
古いwebアプリケーションはwebサーバとやり取りする毎に、完全に新しいHTMLページを取ってきます。対照的に、AJAXアプリケーションはクライアントにユーザーインターフェイスロジックを押し付けて、データのみを送受信するためにサーバに非同期呼び出しを行います。これはアプリケーションの帯域幅の要件とサーバの負荷を軽減すると同時に、AJAXアプリケーションのUIをより応答性が高く、流動的にすることを可能にします。
この時点で、クライアントサイドのコードで株価データをシミュレートするストックウォッチャー(株価監視)アプリケーションの最初の実装を作成済です。以下の3つのチュートリアルで、サーバから株価データを取得する方法を学びます。
Note: GWTアプリケーションでのクライアント-サーバ間通信のより広いガイドについては
Communicate with a Serverを見てください。

 実装方法の選択

GWTはサーバと通信するための幾つかの異なる方法を提供します。どのデータフォーマットを使用するかは最終的に対話する必要があるサーバに依存します。

リモートプロシージャコールの作成(GWT RPC)

あなたがバックエンドでJavaを走らせることが出来て、あなたのアプリケーションのサーバサイドビジネスロジックを作成出来るならば、おそらくGWT RPCがベストチョイスです。GWT RPCは標準のHTTP越しにサーバとJavaオブジェクトを受け渡すための仕組みです。 透過的にJavaサーブレットを呼び出したり、オブジェクトのシリアライゼーションのようなローレベルの細部を処理するためにGWT RPCフレームワークを使用することが出来ます。
これを試す場合はリモートプロシージャコールの作成を参照してください。

HTTP経由でのJSONデータの取得

あなたのアプリケーションがJavaサーブレットをホスト出来ないサーバまたは既にJSONやXMLのような別のデータフォーマットを使用しているサーバと通信する場合は、データを取得するためにHTTPリクエストを作成することが出来ます。GWTはリクエストを構築する為に使用することが出来る一般的なHTTPクラスやレスポンスを処理する為に使用することが出来るJSONとXMLクライアントクラスを提供します。 さらに開発している間はJavaScriptオブジェクトをあなたの統合開発環境で対話することの出来るJavaオブジェクトへ変換する為にオーバーレイタイプを使用することも出来ます。
これを試す場合はJSONデータの取得を参照してください。 このチュートリアルはJSONデータ用のHTTPリクエストの作成のみをカバーしていますが、コードは代わりにXMLデータでも動作するように適応させることが出来ます。

JSONP用クロスサイトリクエストの作成

1つ以上のリモートwebサーバからのデータを使用する必要があるマッシュアップアプリケーションを作成する場合、SOP(同一生成元ポリシー)アクセス制限を回避する必要があります。このチュートリアルでは、パディング付きJSON(JSONP)を取得する<script>タグを書く為にJavaScriptネイティブインターフェイス(JSNI)を使用します。
これを試す場合はクロスサイトリクエストの作成を参照してください。
Note:  Google Data APIsYahoo! Web Servicesなど、試すことの出来るJSON形式データのさまざまな公開ソースがあります。

 非同期呼び出しの実行

GWT RPCを使用する場合でもHTTP経由でJSONデータ取得をする場合でも、作成するHTMLページからサーバへの呼び出しは全て非同期です。これは呼び出しが戻るのを待っている間、ブロックしないことを意味します。呼び出しに続くコードは直ちに実行されます。呼び出しが完了した場合、呼び出し作成時に指定したコールバックメソッドが実行されます。
非同期呼び出しはAJAX (Asynchronous JavaScript And XML)開発の中核となる原則です。  (開発者にとって)シンプルな同期呼び出しではなく、非同期呼び出しを行うことの利点は、改良されたエンドユーザーエクスペリエンスです:
  • ユーザーインターフェイスは応答性は高いままです。
    webブラウザのJavaScriptエンジンは一般的にシングルスレッドです。だからサーバを同期呼び出しすることは、呼び出しが完了するまでwebページが”ハング”することを引き起こします。ネットワークが遅かったり、サーバが応答しない場合、これはエンドユーザーエクスペリエンスをめちゃくちゃにするでしょう。
  • 未確定のサーバ呼び出しを待っている間、他の作業を実行出来ます。
    例えば、インターフェイスを配置するためにサーバからデータを取得している間に同時にユーザーインターフェイスを構築することが出来ます。これはユーザーがページ上のデータを見るために要する時間を短縮します。
  • 同時に複数のサーバ呼び出しを行うことが出来ます。
    しかしながら、通常、ブラウザは同時発信ネットワーク接続数を2つに制限するので、非同期呼び出しを使用した追加することが出来る並行処理は制限されます?
    (*how muchがどう訳せばいいかわからない)
あなたがAJAX開発が初めてならば、非同期呼び出しについて慣れるのに最も困難なことは呼び出しがノンブロッキングであることです。しかしながら、Javaインナークラスはこれを管理可能にすることに効果があります。
非同期呼び出しの作成についてのより詳しい情報は開発者ガイドの Getting Used to Asynchronous Callsを参照してください。

うぶんちゅ坂(12)

android用の神経衰弱ゲームを公開しました(・∀・)
The Match-up(Memory) game for android was released!

Google Play:
Mole's Match-up.

Introduction page:
Mole’s Match-upをリリースした∩( ・ω・)∩


Asunder CD Ripper

CDをリッピングしようと思い、RipOffというソフトを利用したが、

なんかうまくいかない(´・ω・`)

 

Asunder CD ripper 音楽CDからMP3ファイルにCDリッピング

で 紹介されていた手順に従い、Asunderを入れる。

無事にリッピング出来た(・∀・)

 


JD

前回はJaneをwine経由で使用していたが、

現在イーモバは規制で書き込みが出来ず、

閲覧するだけなので Janeじゃなくてもいいかなと考えてJDに。

 

よくわからないのでwikiにあった

sudo apt-get install jd

を端末で走らせた。取り敢えずインストール出来た。

使い込んでないので不具合等はわからない。

 


Java+Eclipse

【Ubuntu 11.04】 Oracle(Sun) Java version 6 update 24 インストール (Firefox 4.0 プラグイン含む)

の下の方で紹介されている手順でJDKを入れて.profileに値を追加した。

 

再起動して

java -version

したら、ちゃんと”1.7.0″と表示された(・∀・)

 

Ubuntu 11.04 Eclipse 3.6 Heliosのインストールで紹介されている手順だと、

ちょっとpleiadesの方がうまくいかなかったので、昔インストールした記憶を元に

pluginとfeaturesだかをマージペーストした。

 

この辺の作業をsudo nautilusで起動した方でやってしまい、色々とはまる_| ̄|○

所有者がmessagebusとかになってアクセス出来ない__○_

 

rootでダウンロードした状態になっていたのかよくわからないが、

通常のユーザーがダウンロードしたファイルに十分な権限を

持っていなかったのが原因だったようだ。

 

ダウンロードしたファイルに”読み書き”権限を加えてから

展開したら、普通にアクセス出来るようになった(・∀・)

 


うっひゃあ、1.7だからString Switch出来ちゃう(・∀・)とか

元VB6ユーザーであったことを如実に表す反応を示しつつも、

しばらく1.6記法だなぁとも思う。

 

いずれJavaFX2.0も落として来なければ(`・ω・´)

 

 

うぶんちゅ坂(11)

android用の神経衰弱ゲームを公開しました(・∀・)
The Match-up(Memory) game for android was released!

Google Play:
Mole's Match-up.

Introduction page:
Mole’s Match-upをリリースした∩( ・ω・)∩


うぶんちゅ坂(10)からの続き…になるのかな?

 


HardInfo

 

折角新しいマシンにしたことだしとベンチマークを取ることに。
適当にぐぐる。
HardInfo システム情報とベンチマークの結果をまとめてHTMLに出力できるシステムツール

紹介されていたベンチマークソフトを使う。他にも何か起動していたが、

止めるのが面倒だったので、そのままベンチマークを実行。

 

Benchmarks

CPU Blowfish
CPU Blowfish
This Machine 2900 MHz 2.660
Intel(R) Celeron(R) M processor 1.50GHz (null) 26.1876862
PowerPC 740/750 (280.00MHz) (null) 172.816713
CPU CryptoHash
CPU CryptoHash
This Machine 2900 MHz 574.812
CPU Fibonacci
CPU Fibonacci
This Machine 2900 MHz 1.597
Intel(R) Celeron(R) M processor 1.50GHz (null) 8.1375674
PowerPC 740/750 (280.00MHz) (null) 58.07682
CPU N-Queens
CPU N-Queens
This Machine 2900 MHz 0.635
FPU FFT
FPU FFT
This Machine 2900 MHz 1.239
FPU Raytracing
FPU Raytracing
This Machine 2900 MHz 35.462
Intel(R) Celeron(R) M processor 1.50GHz (null) 40.8816714
PowerPC 740/750 (280.00MHz) (null) 161.312647

 

なんかこういう結果らしい。

旧PCで測ってないから、どれだけ性能が向上しているかわからない(ノ∀`)

比較対象がPowerPCとCeleron Mobileか。うーん、よくわからないw

 

ただVirtualBoxの仮想XP環境にコアを二つ割り当てたら、

快適に動くようになった(・∀・)

 

以前はなんか遅くて断念したAOEも普通にプレイ出来た。

コア数の問題だったんかねぇ。

 

ちなみにVirtualBoxを起動しようとしたらなんかエラーが発生してちょっとはまった。

単純にBIOSのVirtualizationだかをenableにしてなかっただけだった(ノ∀`)

 


 libdvdcss.so.2

 

古いからか良くわからないが、非常に安かったのでPVのDVD付属したCDを購入。

ubuntuでリッピングしようとしたら、うまくいかない(´・ω・`)

 

面倒だから取り敢えず物理ドライブからの再生でいいやと思ったけれど、

やっぱりエラーが。libdvdcss.so.2だかを入れてくれと。

Synapticで検索しても引っかからなかった…。

ぐぐる。

 

UbuntuでDVDリッピング+mp4にエンコードで紹介されている手順に従って操作する。

なんかうまくいかない_| ̄|○

 

Ubuntuソフトウェアセンターの動作が固まってるように見える……

色々といじくってみてわかったがSynapticパッケージマネージャを

起動しているのが良くなかったらしい。

 

以前もUbuntuソフトウェアセンターが動かなくて、

Synapticパッケージマネージャばかりを使うようになっていたが、

もしかすると原因はこれだったのか…( ;・´ω・`)ゴクリッ

 

無事に再生もリッピングも出来るようになったヽ( ・∀・)ノ

 


後はeclipseか。Helios入れよかIndigo入れよか(・ω・`≡´・ω・)

NetBeansも入れとこうかな。6コアマシンだと多分軽く使えるだろうし。

 

しかしなんというかマシン移行がスムーズ過ぎるな、

そろそろ何か起きそうな予感( ・´ω・`)

 

テレビ機能に関しては、ubuntuを使うなら、PCで完結することを諦めて、

IOデータ辺りで出てる地デジチューナーを直接ディスプレイに繋げた方が

早いんじゃなかろうかと思ったり思わなかったり…

わざわざPT2とかを入手するよりも楽な気がする。流用もしやすいし。

USB−HDDに録画出来るタイプもあるみたいだしなぁ…うーむ。

 

新マシンなう(・∀・)

android用の神経衰弱ゲームを公開しました(・∀・)
The Match-up(Memory) game for android was released!

Google Play:
Mole's Match-up.

Introduction page:
Mole’s Match-upをリリースした∩( ・ω・)∩


10日間ほど放置していたPCパーツとケースを適当に組んで電源を入れたら
動いたので、そのままOSをインストールした。


新マザーはGA-970A-D3。CPUはPhenom II X6 1065T。メモリは8GB。
フォームファクターすらあんまり気にせず買ったくらいなので、気づかなかったが、
このマザー、グラフィックチップないんかΣ(゚∀゚;)
取り急ぎ旧PCで使っていたHD3450だかを流用する。
旧PCはオンボードグラフィックあるし、今のところ使う予定はない予備だからいいか。

旧PCにあったCD inがないからTVキャプチャボードから音が取れるか不明。
まあ最近観てないから急がなくてもいいか。


キッティング自体は特に問題なく終わる。ケースにリセットスイッチのコードが
なかった…というかリセットスイッチ自体がないケースであった事以外は…。

早速、前回同様USBメモリからのインストールを試みる。
が、BIOSというかブートセレクタには
USB-FLOPPY/USB-ZIP/USB-CDROM/USB-HDD
の選択肢しかない…

USB-HDD、USB-CDROMの順で試すも起動せず…
さすがにFLOPPYとZIPは違うだろうと思い、数年前に作成したUbuntuのCDを
引っ張り出して来てインストール。色々と時間がかかる…

インストール後、アップデイトしようとするも、ネットワークがつながらない…( ;・´ω・`)ゴクリッ
11.04では何もする必要はなかったが、7.10では駄目か…_| ̄|○


XPをインストールするか旧PCで最新のイメージを落としてきてCDに焼くかと
悩んでいたところ、目に入ったのは先日150円で買ってきたUbuntuのムック本( ・´ω・`) デスゾ

付属のCDにはUbuntu 9.04の文字が(`・ω・´)

喜び勇んでインストールを試みるが、no such fileみたいなエラーが出て
インストール出来ない_| ̄|○ ナンダヨコレ…


ドリラーランドのホリススムが酸素0になってミスになった時みたいな「モウ ダメェェ」という
断末魔を心の中で発し、旧PCを起動しなきゃ駄目かなと思い始める。

まあどうせ駄目だろうけれども、もう一度USBメモリを試してみるかと
今度はUSB-ZIPを選択して起動……
 
 
 
 
 
 

起動しやがった…( ゚Д゚)

俺の脳内には 最長経路を進むべきアルゴリズムが仕組まれてるのか…( ;・´ω・`)ゴクリッ


取り敢えず何事もなかったかのように11.04を最新モジュールを
ダウンロードさせつつインストール。ハードディスクからboot。
 
以前は画面モードを後から設定しなおさないと駄目だったけれど、
今回は最初から全画面だ(・∀・)

取り敢えずchrome入れてブックマークを同期してMozc入れて辞書インポートした。
今日はこのくらいにしといてやる(・∀・)