2008-01-09-01-Inside Japonica - 7 - ワイド画面対応 - project-enigma

2008-01-09-01-Inside Japonica - 7 - ワイド画面対応

>> Site top >> weblog >> 月別アーカイブ >> 2008年01月のlog >> 2008-01-09-01-Inside Japonica - 7 - ワイド画面対応

最終更新日付:2014/01/01 18:03:36


Inside Japonica - 7 - ワイド画面対応

2008 年 01 月 09 日

Inside Japonica も第7回。今回は、ワイド画面対応の話です。

さて、ワイド画面といえば大抵は 320 x 480 なサイズだったりするわけですが、いわゆるバーチャルシルクや DIA という仕組みでもってこのワイド画面を実現しているデバイスはどれくらいあるでしょうか。陰郎が知っている限りをあげつらってみましょう。

あと、CLIE で型番が N で始まるワイド画面モノがいくつかあったと思いますが、陰郎は当時アンチ SONY の最右翼だったこともあり、よく把握していません ( SONY ファンの皆さんゴメンナサイ )。今はどうなんだという質問に対しては笑ってごまかすことにします。にっこり。

さて、陰郎は以前、ワイド画面対応には消極的でした。わざわざこの weblog で表明したこともあったかと思います。理由は、「 非ワイド画面デバイスでも使用される前提のアプリでは、ワイド対応が本質的でなくなりがち 」 というものでした。これは、ある程度ゲームのようなアプリを前提とした主張です。ワイド画面対応しても、非ワイドでも使えるならワイド対応は決して本質的にはなりえない...とうことですね。それにワイド画面デバイスって、全体から見れば小数派になっちゃうじゃないですか。大きなコストをかけて対応する必要性を感じなかった、というのが正直なところだったわけです。

しかし、実用アプリともなると話は違います。厳密なことを言えば、実用アプリだろうとゲームだろうと、「 画面という空間をどのように使うか 」 によってワイド画面が本質的になるかどうかが決まるのですが、まぁ細かい話は抜きにして、この Japonica 、というか Doc リーダー。ワイド画面を備えたデバイスでワイド表示できなければ 「 おいおい、それはないだろう 」 と言われます。よね。なので、ワイド画面対応は必須だったわけです。やらないわけにもいきません。胸張ってリリースできないじゃないですか。CLIE 対応は後手に回ったじゃないかって? さっきも言ったとおり、その話題は笑ってごまかしますよ。にっこり。

で、まぁ自分が使っているのが T5 や TX だったこともあり、Palm 純正の DIA 機構への対応はかなり早い段階で実現できました。よく考えると、これは project-enigma 初のワイド画面対応アプリなんですね。初めて DIA を畳むことができたときは快感で声が出ましたよ。えぇ。どうやったらいいのかよく分からなくて、かなり長い間苦戦したような記憶がありますが、まぁそれはそれとして。

んでいきなり最近の話になりますが、CLIE のワイド画面対応、実はあれ、ワイド画面関連の処理部分をごっそり書き直しているんです。Palm 社の DIA と SONY のバーチャルシルク(?)とではアプリケーション側で必要な対応がまったく異なるため、ワイド画面対応個所をイジってみたところ、かなりごちゃごちゃしてきたんですね。DIA の処理をしてる部分に全部 SONY 向けの条件分岐を入れるととんでもないことになるので、クラス継承を使った多態を使って切り抜けました。その際、微妙にバグ臭かった挙動を取り除いたりもしましたが、新たに混入させちゃったりもしたかもしれません。

しかし、5Way Rocker やワイド画面なんかの対応が重要...というところが、個人的にはいかにも 「 実用アプリだなぁ... 」 と思うところだったりします。文書閲覧のへヴィユーザーにとっては、おそらく Doc リーダーというのは相当長時間、しかも頻繁に使用するアプリだと思うんですね。陰郎は最近、青空文庫のシャーロック・ホームズシリーズを読んでいるのですが、結果的に英文翻訳作業のための ToDo アプリに次いで使用頻度が高いのが Japonica になっています。で、そうなると地味な使い勝手の悪さが我慢ならなくなってくるもの。ですから何か思うところがあればご連絡ください。対応できるかどうかは別としても、とにかく陰郎の耳に入らないことにはどうにもなりませんので。

続く

 

コメント

一匹の黄色い猿 - 01/09/2008 03:03:01 PM

> N で始まるワイド画面モノがいくつかあったと

つ[OS5に限ると、NX70/60、NX80/73の2機種*2グレード]
つ[微妙に動作が違うのは過去コメントでも判るかと]

> かなりごちゃごちゃしてきたんですね

つ[だから本家用とClie用が別パッケージの物があるの鴨]
つ[過去のアプリにはClieのみ対応とか、本家のみとか…]
つ[同じOSに見えて、実はかなり違うのね(^^;]
つ[改めてプログラマ各位のご苦労に感謝する猿]
_
っ[今更だけど本家とClieのパッケージ、分離してみる?]
っ[専用なら不要分岐の数バイトも小さくなるし…]
っ[ホント、今更だよなw]

陰郎 - 01/09/2008 08:32:29 PM

> 一匹の黄色い猿 さん

Japonica の開発で CLIE も結構触りましたけど、CLIE って Palm というよりは CLIEですね。良くも悪くも、あんまり Palm らしくない。とっても SONY らしさを感じます。(笑

>> つ[だから本家用とClie用が別パッケージの物があるの鴨]

SONY は独自仕様が多いですからねぇ...初期のハイレゾも本家に先駆けて独自仕様でやったんでしたっけ。それに関しては OS 5 になってから本家の本元仕様に追従したんでしょうね。

同じことをするのに方法が違ったりすると、内部構造が無闇に複雑になるので、パッケージを分ける手は有効ですよね。それに、特定のライブラリの存在を実行時に判定しなきゃならないこともありますし。

>> っ[今更だけど本家とClieのパッケージ、分離してみる?]

いや、やめておきましょう。

分離すると、面倒を見なきゃならんものが2倍に...(汗

それに、陰郎は C++ という言語を使っているので、複雑な構造に対処するのは比較的得意な方です。ワイド画面の CLIE 対応でも、起動時に1回判定すればそれ以降は条件分岐無しで動くようにできてます。1つのアプリ内部に、ワイド画面関連のパッケージが2つ用意されているような感じですね。条件分岐が少ない分、データ構造が複雑なんですけど...(汗

一匹の黄色い猿 - 01/10/2008 02:20:02 AM

>本家に先駆けて独自仕様でやったんでしたっけ

つ[その通り]
つ[しかし「改変した部分は教えてあげないよん」と意地悪]
つ[確か対価がやたら高かったというこぼれ噂もw]
つ[結果、本家が意地になった…とw]
つ[その後、和解したらしく、APIの共有をしたらしい]
つ[記憶違いかな(老害)]

> いや、やめておきましょう。

つ[こればかりは作者諸氏の気分次第だかんね(^^;]

> 面倒を見なきゃならんものが2倍に

つ[本家かClie、片方だけの不具合調整に苦労…しない?]
つ[あちらを立てれば、こちらが立たず…とか(ないか)]
つ[あとはメモリの肥やしになるのが勿体ないぐらい]
つ[昔に比べてメモリが広大になってるから無問題?(^^;]
_
っ[OS4で16MBまで拡張したもんなぁ…]
っ[OS5になってuserエリアが11Mになったのは泣いたがw]

陰郎 - 01/10/2008 08:35:49 PM

> 一匹の黄色い猿 さん

>> つ[昔に比べてメモリが広大になってるから無問題?(^^;]

Japonica は、ヒープメモリに関しては贅沢をさせてもらってます。なんつっても文書丸ごとメモリに展開しますからね。これは OS 5 でなきゃできなかったと思います。青空文庫の「吾輩は猫である」なんか圧縮DOCの展開後で 700KB 超えますからねぇ...ヒープの断片化が激しい状態だったらオープンエラーになるかも。(汗

それは実行時だけの話なんでいいとしても、個人的に心配なのは 200KB 超というアプリのサイズですね。これを「大きすぎない?」と思う方もいるでしょう。ひとまずのところ、Palm 用と CLIE 用で分けても大してサイズは変わらない(良くて数KBかな)ことになっちゃいますが、何とか小さくできたらなぁ...とは思いますね。

このページにコメントする

 

このページのタグ

Page tag : Palm

 

 


Copyright(C) 2005-2017 project-enigma.
Generated by CL-PREFAB.