jQuery Mobile の要
今回仕事でお客様に見せる為に従来からあったPC版画像閲覧ツールに加えて、スマホ版閲覧ツールを作成し本番リリースした。
jQuery Mobileは、HTML5,javascript,jQueryの基本的な知識があれば、UIとして特にスマホを考える事なくある程度のまとまったWEBアプリケーションが短期に記述コード量少なく構築できる事が可能な所が、最大限のメリットである。
その為、本来であれば、かなりの事を考えなければ、ならない箇所を、ページのイベント制御、DOM制御に絞ってコードを考えれば、スマホライクなジェスチャーイベント処理等について考えなくても、まとまったアプリ開発ができる事を確認した。
jQuery Mobileは、かなり前に開発が凍結されて、最近になって、jQuery UIと共に、更に開発を進展させる旨が発表された段階で、本格的にアプリをこれで構築するには、情報が少なすぎる傾向がある事が、一番難点かと思える。
また、簡単な画面遷移等は、何も考える必要はないが、一端画面制御で複雑な事を実施しようとした時点、一気にこの開発フレームワークの使いがたさが、その情報量の少なさと共に、露見してしてしまう。
$.mobile.changePage(to,options)
この命令で画面制御を切り替える場合には、その後で発生するイベントを全て調査すべきだと考える。
pagebeforechange / pagechange /pagebeforecreate / pagecreate / pageinit /pagebeforeload /pageload
等のページ切り替えイベントが発生するが、必要な物のみ、記述するという事は止めた方が良い。
複雑な画面遷移を実施する場合、画面遷移イベントが複数回発生したり、本来あり得ないような(バグかも知れないが)画面遷移イベントが発生してしまい、こちらが考えた通りの画面遷移をイベントドリブンで設計しても、私の場合は、うまく働かなかった。
結局は、上記イベントをトラップするようにし、各イベントがどのように発生しているのかを全て調査した。
調査する上で、私の場合は、画面に名前を設定し、各イベント制御と共に、その画面名をトレースするような仕組みを入れて、対処したのが実態である。
また、jQuery Mobile に対しても V1.0 V1.2でその仕様が異なっている事も、情報量の少なさと共に、とてもやっかいだった。
基本的には V1.2 なのだが、今後は、かなり異なるV1.4仕様に準拠する必要があると思うが、V1.4の日本語でわかる説明など、ほとんどない。
結局コード量は少ないが、一つ一つの制御を細かく制御する為の調査に開発の60%を費やしたように思う。
2020年2月1日