へっぽこエンジニアの雑記帳

組み込み屋です。今後を見越してWebやモバイルを勉強中。

Webど素人の組み込み屋がTizen Webアプリをつくってみた

この記事はTizen Advent Calendar 2013 10日目の記事です。

この記事の対象読者

  • HTML5やらJavaScriptは詳しくないけど、スマホ用のWebアプリを作ってみたい。という方
  • ど素人の作ったWebアプリにもの申してやるぞ。という方

特に、「Web開発経験は無いけど、HTML5でアプリ作ってみたい!」という方の助けになれば幸いです。

はじめに

タイトル通り、Webのど素人がTizen Webアプリをつくってみました。

HTMLは学生自体、FrontPage Expressで簡単なWebページ作った程度の能力です。
JavaScript京ぽんBookmarklet用に少し弄ったことがあるぐらい。「jQueryなにそれ?」な状態からスタートしました。
Androidアプリ開発をかじったことがあるのが、唯一のよりどころです。

作ったアプリはTwaserというTwitterクライアントです。ただし、つぶやけません。
つぶやきの検索と表示・自動更新に特化しています。主な使用用途は、イベント会場でのハッシュタグ追いかけです。

ソースはGitHubで公開しています。

以下、アプリのスクリーンショット

検索前
f:id:tomoyann:20131210233632p:plain

検索後
f:id:tomoyann:20131210234031p:plain

経緯

  • HTML5やらJavaScriptはほとんど触ったこと無いけど、興味はあった
  • ABC 2013 Autumnで教えて貰ったTizen アプリ チャレンジの申込期限が延長されている
  • 賞金総額400万ドルだし、応募してみれば可能性があるのでは?
  • 賞金に目をくらませれば、モチベーションも上がってWeb周りの勉強にもなるはず

下準備(2013/11/19, 2013/11/26)

本格的に開発(2013/11/27~2013/12/03)

極力定時退社&休日は引きこもってアプリ開発に集中しました。

詳細はコミットログをご覧下さい。

以下、開発中に調べたり教えて頂いた情報です。

アプリ認定否認と認定合格(2013/12/04~2013/12/05)

Tizenアプリは「アプリ登録」→「検証」→「アプリ認定合格」というプロセスを踏んで、ようやくTizen Storeで利用可能になります。

「検証」で弾かれた場合、指摘された問題点を修正後に再度「アプリ登録」をする必要があります。

私の場合、「アプリのアイコンがTwitterに似ているからダメ」という理由で一度否認されました。
アイコン作成時間を短縮しようと、フリーの素材をほぼそのまま使ったのが失敗でした…アイコン変更後、無事に「アプリ認定合格」しました。

実際に作ってみて

  • Androidアプリ開発経験者にとって、Webアプリ開発はカルチャーショック
    • コンパイルしなくても「更新」するだけで最新アプリが動くのは、衝撃的
    • 画面レイアウトも作りやすいし確認しやすい
    • 今回は有効活用できなかったが、既存のWeb開発ツールは強力
  • Twitterなど既存のWebサービスと親和性が高い
    • 参考になる情報が圧倒的に多く、ライブラリも豊富
  • ただし、実際の開発は混沌とした面もある
    • Tizenのドキュメントだけでは完結しない
    • 欲しいと思った機能が散らばっている(Tizen, jQuery, Webkit...)
  • Webアプリの生産性はすごい
    • 慣れればかなり簡単にアプリがつくれる
    • 「Write once, run anywhere」が現実に近づいている
    • 普及するのは間違い無いので、未着手の人は早めに勉強しとかないとまずい

最後に

なにはともあれ、「賞金をモチベーションにWebアプリ開発の基礎を学ぶ」が無事に達成できました。 あとは、万が一にでもアプリチャレンジで入賞できれば儲けものです(笑)

今回のアプリ開発では、@takkeさんと@tizen_cafe_jpさんに多大な協力をいただきました。

開発時の困り事をつぶやいていただけなのに有用な情報をリプライしていただき、本当に助かりました。この場を借りてお礼申し上げます。

「情報が欲しければ、まず自分が情報を発信する」という事の重要さが、身に染みた開発でした。