アカウント名:
パスワード:
こういう問題を起こさないための共通プラットフォームなんじゃないのか。Windowsが乗るハードはいくらでも種類があるが、Windowsアプリをハードごとにテストするなんて話は聞いたことが無い。Android携帯はハードごとにOSに手を加えるなんて事をせず、インタフェースや搭載アプリでのみ差別化を図るべきだ。
PCなんてモニタの数すら多様だし、さらに使っている最中に90度回転する奴もいるし。それでもアプリレベルで解決してますけどね。ウィンドウじゃなくてアクティビティだから話は違うだろという事かな。
ハードを無視した議論は無意味だと思いますよ。特に組み込み系は。
リソースジャブジャブのPCなら抽象化はそれほど難しくないでしょうけど、ギリギリのリソースしか使えない組み込み系はそんなことしたら重くて死ねる。移動機系ならバッテリーまで死ねる。
ことAndroidに関して言えば解像度の違いはフレームワークレベルで吸収されています。例えばフォントサイズを指定する場合、「160dpi端末で何ピクセル相当か」という値で指定し端末に合わせて適切な値に変換され、内部ではネイティブの数字で持っています。また、相対値での指定も多く使われます。まあもちろん全くのオーバーヘッドゼロではないですが、フレームワーク側でかなり初期に変換を掛けられますのでさほど問題にはならないです。というかまぁ今時のスマートフォンはロースペックでもCPUは500MHzとかですのでさすがにこのくらいの処理は余裕です。フレームワークから外れたことをすると考慮する必要は出てきますが、まあ概ね良く出来た仕組みですよ。
Androidのこの辺の問題を話す時、Android開発の外側の人は必ず「解像度の違い」とか「OSバージョンの違い」とかの問題だと勘違いするんですよね。でもそういうとこ、実はほとんど問題にならないです。最初からそんなことは当たり前として想定済みの設計ですから。問題になるのは「キーボードが付いているかどうか」とか「トラックボールが付いているかどうか」とかそういうところなんです。つまりトラックボールに依存したUIにしてしまうと、トラックボールがない端末では使えない、ということですね。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
計算機科学者とは、壊れていないものを修理する人々のことである
なんのためのAndroidだ (スコア:0)
こういう問題を起こさないための共通プラットフォームなんじゃないのか。
Windowsが乗るハードはいくらでも種類があるが、
Windowsアプリをハードごとにテストするなんて話は聞いたことが無い。
Android携帯はハードごとにOSに手を加えるなんて事をせず、
インタフェースや搭載アプリでのみ差別化を図るべきだ。
Re: (スコア:0)
PCなんて画面数すら多様 (スコア:1)
PCなんてモニタの数すら多様だし、さらに使っている最中に90度回転する奴もいるし。それでもアプリレベルで解決してますけどね。ウィンドウじゃなくてアクティビティだから話は違うだろという事かな。
屍体メモ [windy.cx]
Re:PCなんて画面数すら多様 (スコア:1)
ハードを無視した議論は無意味だと思いますよ。
特に組み込み系は。
リソースジャブジャブのPCなら抽象化はそれほど難しくないでしょうけど、
ギリギリのリソースしか使えない組み込み系はそんなことしたら重くて死ねる。
移動機系ならバッテリーまで死ねる。
Re:PCなんて画面数すら多様 (スコア:1, 参考になる)
ことAndroidに関して言えば解像度の違いはフレームワークレベルで吸収されています。
例えばフォントサイズを指定する場合、「160dpi端末で何ピクセル相当か」という値で指定し端末に合わせて適切な値に変換され、内部ではネイティブの数字で持っています。また、相対値での指定も多く使われます。
まあもちろん全くのオーバーヘッドゼロではないですが、フレームワーク側でかなり初期に変換を掛けられますのでさほど問題にはならないです。というかまぁ今時のスマートフォンはロースペックでもCPUは500MHzとかですのでさすがにこのくらいの処理は余裕です。
フレームワークから外れたことをすると考慮する必要は出てきますが、まあ概ね良く出来た仕組みですよ。
Androidのこの辺の問題を話す時、Android開発の外側の人は必ず「解像度の違い」とか「OSバージョンの違い」とかの問題だと勘違いするんですよね。でもそういうとこ、実はほとんど問題にならないです。最初からそんなことは当たり前として想定済みの設計ですから。
問題になるのは「キーボードが付いているかどうか」とか「トラックボールが付いているかどうか」とかそういうところなんです。つまりトラックボールに依存したUIにしてしまうと、トラックボールがない端末では使えない、ということですね。