5

J2ME アプリケーションの UI の設計をどのように進めるかについて、私は非常に混乱しています。基本的に、アルゴリズム、関数、およびデータベースの作業は完了しましたが、適切な UI を実現するのに苦労しています。私には2つのアイデアがありました:

  1. 高速で安価なインターネット アクセシビリティのための Web 圧縮技術を簡単に利用できる j2me アプリにします (コアの望ましさ)。

  2. それを Web アプリにして、オンライン アプリをロードするだけの一種のブラウザー アプリにします。このオプションを使用すると、アップグレードや UI 機能についてあまり心配する必要がなくなりますが、インターネットのコストと速度が制限要因になります。

私は最初のオプションを使用しようとしていますが、最初に向かったのはLWUITでしたが、途中で重くなり、小さな電話にアプリをデプロイすることははるかに少なく、アプリをデバッグすることさえ困難になりました. 実際、オンラインで検索すると、問題がさらに悪化しました。J2ME アプリケーションへの関心は大幅に低下したようで、それについてのほとんどのは時代遅れです。実際、多くの人が私に同じ質問をします。視覚的に非常に魅力的な J2ME アプリケーションをオンラインで見ますが、それらの「秘密」を理解できないようです。

見栄えの良いJ2ME アプリ を開発した人の話を聞きたいの小さくて見栄えの良いアプリを開発するための最善の方法は何ですか? 具体的には、これに関する便利なツールや記事へのリンクが欲しいです。ありがとう!!


編集:現在の開発...

標準の最新のJ2ME アプリを開発する最善の方法について長い間考え、調査した結果、最適なオプションは統合プラットフォームであることがわかりました。おそらく、HTML5 アプリを J2ME に簡単に移植できるものです。しかし、これまでの私の検索は無駄でした。私が発見した唯一の興味深いものは、CodeNameOneJava の Avatar Oneです。しかし、CodeNameOne は私が探していたソリューションを実際には提供していませんが、Oracle はまだ 1年以上 Avatar One で忙しくしているようです。私は何かが欠けているかどうか知りたいです。オープンソースの LWUITの機能を見てきましたHTML5 をよく理解していれば、HTML5 ベースのアプリを J2ME に移植するのに役立つ HTML5 レンダラーを開発することはそれほど難しくないと思います。それで、私が見逃しているものはありますか?私が参加できる進行中のオープンソース プロジェクトはありますか?

ありがとう!

4

2 に答える 2

4

以前にここで提案していることを経験したので、必ずしもお勧めしませんが、あなたは尋ねました.


LWUIT で開発されたのと同じくらい見栄えがよく、より小さな jar ファイルでデバッグしやすいアプリケーションが必要な場合、1 つの解決策は、基本的な幾何学的形状と LCDUI に描画された画像から GUI を開発することですCanvas

これら 3 つの目標を達成するために、スケーラビリティと開発時間を犠牲にすることになります。

LWUIT を学ぶ必要がなく、コードを書きながら学ぶことができるため、GUI のデバッグが容易になります。

初期段階で GUI エンジンの設計に時間を費やすか、後でコードを書き直すのにより多くの時間を費やすことになります。

アプリケーションを別の画面サイズに移植するには、LWUIT を使用した場合よりも多くの作業が必要になります。

他の誰かがあなたのコードに取り組んでいる場合は、それがどのように機能するかを教えなければなりません。

GUI の変更は、コンポーネントを追加または削除するために、基になるコードを更新する必要があることを意味する場合があります。

GUI の汎用性が低いほど、アプリケーション jar は小さくなります。アプリケーションのサイズを縮小するためだけに、オブジェクト指向プログラミングの利点の一部を放棄することになるかもしれません。


最新のアプローチに関する限り、JavaME は実際にはテスト駆動開発の方法論には向いていませんが、それに近い方法でいくつかの利点が得られる可能性があります。

多くの小さなテスト MIDlet を作成します。それぞれに最大 1 つのユーザー操作が可能です。それらはすべて、アルゴリズム、マルチスレッド、ストレージ、ネットワーキング用の共通のエンジン コードを共有しています...

共通コードは最終製品で使用されます。

すべての「単体テスト」を作成したら、それらの組み合わせを開始します。各組み合わせは、2 つの小さな機能セット間の相互作用をテストすることのみを目的としています。

より大きな MIDlet のピラミッドを作成し、途中でテストします。

ピラミッドの最上部は、ずっと作成したかった MIDlet です。


残念ながら、JavaME のテストのほとんどは手作業で行われています。

MIDlet の自動テストを実行するには、2 つの方法があります。

  • Keynote Device Anywhere スクリプト ツールを使用します。これを設定するには時間がかかり、サービスの使用は無料ではありませんが、テストは電話とその SIM を購入しなくてもできる限り実際の条件に近い状態で実行されます。

  • おそらく Jenkins インスタンスの一部として、テスト MIDlet を自動的に実行し、テストの結果を報告するために、Microemulator のソース コードを使用して変更します。Microemulator をニーズに適合させることは、おそらく簡単な開発作業ではなく、MIDlet で最初のテストを実行する前に、新しい自動化システムをテストする必要があります。

于 2012-08-04T12:58:46.103 に答える
0

最終的に、HTML5 でモバイル Web アプリを作成することにしました。HTML5 キャッシュを有効にすると、ほとんどのモバイル向けに開発できますが、ネイティブ機能は犠牲になります。将来的には、何も変わらなければ、モバイル OS の種類ごとに異なるアプリケーションを開発する予定です。

于 2012-09-13T09:10:32.417 に答える