Kinetiseはビジュアル開発ツールの限界を補って、ソースコードをユーザーに提供…より自由で柔軟な開発が可能に

c5734cdd-06dc-4bd4-9190-6abf044180a2-1

モバイル開発は、暖冬の湖で薄氷を踏むような世界だ。React Nativeと悪戦苦闘して氷上で脳を負傷するか、またはドラッグ&ドロップのエディターを使って一つのプラットホームの湖底に永久に閉じ込められる。でもしかし、デベロッパーのKinetiseが、両者の良いとこ取りを提供しようとしている。

Kinetiseについては数年前から、AndroidやiOSのアプリを直接書くことに代わる、おもしろいやり方として、本誌でも何度か取り上げているが、でも同社は最近、自分たちのソリューションが、強力なのに大きなITチームが尻込みすることに気づいた。そこで作者のPiotr Pawlakはあっさりと、1499ドルのソースコードダウンロードオプション*を加え、ブラウザー上で視覚的に作ったアプリのコードをユーザーが得られるようにした。〔*: 同ページQ&Aより: QUESTION: What do I need the Source Code for and how much does it cost? ANSWER: Source code for your application allows adding new features outside of Kinetise Editor. The cost is flat of $1,499 per application. Downloading is unlimited for selected application. 〕

なぜそうしたのか? 要望が多かったからだ。

“自分たちが作っているアプリの、ソースコードがほしい、というデベロッパーやスタートアップのファウンダーが、とても多かった”、とPawlakは語る。

ソースコードがほしい理由は、いくつかある。たとえば、データの保存のされ方が分かれば、セキュリティのチェックや対策ができるだろう。ひとつのビジュアルツールに閉じ込められたくない(自分でコードに自由に手を加えたい)、という理由もありえる。とにかく、ソースコードをデベロッパーにダウンロードさせることによってKinetiseは、Microsoft Accessのような閉じた世界から、Visual Studioに近い自由な世界へ変わった。

出力されるソースコードの言語は、iOSではObjective C、AndroidではJavaだ。これなら、Kinetiseから送られてくるコードをさらに拡張したり、手直しすることも、容易にできる。

e1216a20-9a5e-4d9b-b76b-e3c3f6d7d4af-1
[1. ドラッグ&ドロップのエディターでアプリの機能を作る 2. ソースコードをダウンロードする 3. 必要ならそのネイティブコードを書き換える]

ソースコードを入手できるアプリケーションビルダーは、これが初めてではない。これまでにも、Dropsourceなどがあった。でもKinetiseは、複数のデータソースにアクセスしたり、Webアプリケーションからデータにアクセスするための、堅牢なAPIも提供している。だから途中からドラッグ&ドロップ方式のエディターを放棄して、そのアプリの開発をソースコード上で継続することができる。あなたの労作が、途中でゴミ箱に捨てられるおそれは、なくなった。

[原文へ]
(翻訳:iwatani(a.k.a. hiwa))

Android Studio 2.0がリリース、エミュレータの改良でビルド〜デプロイ過程を大幅に高速化

android-work

Googleが今日(米国時間11/23)、同社のモバイルオペレーティングシステムAndroidのアプリを書くための統合開発環境(integrated development environment, IDE)Android Studioの、バージョン2.0をリリースした。

既製の人気IDE IntelliJをベースとするAndroid Studioは2013年に登場し、1年前にベータを脱した。‘統合’の名のとおり、そこにはコードエディタやコード分析ツール、GoogleのすべてのAndroidプラットホームのエミュレータなど、デベロッパがアプリを作るために必要なものがすべて含まれている。

ニューバージョンは現在、Android StudioのCanary(先行)リリースチャネルでプレビューを入手できる。

GoogleのAndroid StudioのプロダクトマネージャStephanie Cuthbertsonによると、2.0を作るときの基本方針は、これまでの二年間で築かれた現状を基盤としつつ、とくにスピードアップに力を入れる、だった。“使うことが楽しいIDEは、ただ安定しているだけでなく、すばらしく安定していなければならない”、と彼女は語る。しかし高度な安定性は、これまでのリリースで達成された、とチームは感じていた。

AndroidStudio2.0_InstantRun

今回のアップデートでは、たとえばデプロイのスピードを大幅に挙げた。Cuthbertsonによると、フルビルドの場合スピードはこれまでより2倍ないし2.5倍速いという。デベロッパにとってそれはもちろん嬉しいことだが、今度のバージョンでもっと嬉しいのは、”Instant Run”という新しい機能が加わったことだろう。HTMLの場合は、エディットしてブラウザで読みこめばすぐに結果が分かるが、”Instant Run”はそれと同じ即時性をAndroidで目指している。ただしモバイルアプリの場合は、いくらビルドのスピードが上がったといっても、そのロードはHTML + ブラウザほど速くはない。

しかしInstant Runを使うと、エミュレータの上でも物理デバイスの上でも、アプリのビルドとデプロイを一度にできる。そして、コードの一部を変えて再デプロイすると、エミュレータでも実機でも数秒(2〜3秒)以内に、新しいアプリが動いている様子を見られる。この機能は、AndroidのIce Cream Sandwich以降のバージョンで使える。Instant Runの内部的な仕組みについては、今後詳しいドキュメンテーションを出すからそれまで待ってくれ、ということだ。

Androidのエコシステムはとても大きいから、デベロッパが自分のアプリを人気機種のすべてで開発の初期からテストしていくことは、ほとんど不可能だ。XamarinのTest CloudAWSのDevice Farm、あるいはGoogle自身のTest Labなどを利用すれば、完成間近のアプリをいろんなオプションでテストできるが、開発途上のアプリはエミュレータでテストすることが多い。Googleがこれまで提供していたエミュレータは、必ずしも、最速で使いやすいとは言いがたい(だからMicrosoftは自社製品をリリースした)。

AndroidStudio2_Emulator

しかし今回のアップデートで一新されたエミュレータは、今の最新のハードウェアの上なら、どんな物理デバイスよりも速い。インタフェイスも改良されたから、カメラで写真を撮るなど、モバイル上のいろんなアクションを、前よりも簡単に起動できる。ネットワークのさまざまな条件やGPSもエミュレートできる(後者では既製のパスも提供される)。エミュレータから、Google Playの各種サービスにアクセスできる。さらに便利なのは、想定する実機の画面サイズに合わせて、エミュレータのウィンドウのサイズを変えられることだ。

ゲームなどグラフィクスの多いアプリを作るデベロッパのために、GPUプロファイラというものが提供される。それは、画面に新しい画像や映像を描くときのパフォーマンスを調べるツールで、現時点ではまだプレビューバージョンだ。

AndroidStudio2.0_GPUProfiler_Preview

最近Googleは、アプリのインデクシングに力を入れている。それは、従来のように単なる静的コンテンツだけでなく、さまざまなアプリからの出力も検索の対象にしてしまうためだ。Android Studioのチームも検索のチームと密接に協働して、この機能を新しいアプリでより有効にしやすいようにした。そこで今度のエミュレータは、Google Search(検索)のためのディープリンクを生成する。

Android Studioを出す前のGoogleは、Eclipse IDEのためのツールをたくさん提供していた。でも今年になってGoogleは、そのやり方は今年限りでやめる、と発表した。今回プロマネのCuthbertsonも、この‘脱Eclipse’をとくに強調した。

今でも古いツールを使ってAndroidアプリを作っているデベロッパは少なからずいると思われるが、でも今ではGoogleの公式ツールの方が、IntelliJのアップデートをその都度すべて取り込むなどにより、断然良くなっているはずだ。とくにAndroid Studioの今回のアップデートではビルドシステムが大幅に改良されたから、Android用のほぼベストのIDE、と言えるのではないか。

[原文へ]。
(翻訳:iwatani(a.k.a. hiwa)。

HTML5の規格決定から一周年、それはもう未来技術ではない

html5_top

[筆者: Shikhir Singh](Senchaのデベロッパリレーションズ担当シニアマネージャ)

今日(米国時間10/28)は、World Wide Web Consortium(W3C)がHTML5の規格策定事業の完了を宣言してからちょうど一周年になる。それは、インターネットとWebアプリケーションの開発の歴史における、重要な節目だ。これまでの1年間でHTML5の採用は爆発的に伸び、HTML5へ移行してリッチな、そしてクロスプラットホームなWebアプリケーションを提供する企業が日に日に増えた。最近ではAmazonやFacebook、Google、YouTubeなどオーディエンスの多様性の激しい大手サイトでさえも、AdobeのFlashからHTML5へ移行した。その動機は、何だろう?

実は数年前から、デバイスやディスプレイの種類に依存しないシームレスで優れたユーザ体験を志向するデベロッパの多くが、HTML5で開発をするようになっていた。しかし2015年には、多くの企業がモバイルファーストを重視するようになり、そのためエンタプライズ向けのソフトウェアを構築するための信頼性の高い、普遍的な(機種やディスプレイを問わない)開発ベースとしても、HTML5が選ばれるようになった。

HTML5の実力は、かなり前から知られていた。2012年に、発言の影響力が甚大なMark ZuckerbergがHTML5をけなしたが、その3年後にはFacebookのニューズフィードのアップデートの実装をHTML5で行った。HTML5前とHTML5後を比較したデモを、ご覧いただきたい。

HTML5によるWebアプリケーションの開発が進んでいる大きな理由が、三つあると思う:

高度な規格に技術がやっと追いついた

HTML5への移行を促進した要因は、HTML言語本体のイノベーションだけでなく、Webアプリケーションを動かすブラウザの進化も大きい。まず、今のブラウザは数年前に比べても相当速い。MicrosoftのInternet Explorerの支配が徐々に崩れて、Google Chromeのような新しいブラウザが、Webクライアント技術の高速化と効率化を誘導した。Flashが衰退し、HTML5のリッチなマルチメディア能力への関心が高まり、ブラウザの基本機能の枠内でビデオの高速な再生などが可能になった。動画==プラグイン依存は、過去の遺物になった。

「技術革新」と「デベロッパの選好」と「エンタプライズのニーズ」、この三つのものが交差するところに、HTML5の未来がある。

Samsungの8コアプロセッサが象徴しているように、モバイルデバイスの処理能力が高まり、HTML5の採用が促進された。

以上のような技術的進歩によって、HTML5に盛られている高度な表現要請が、ブラウザのレベルで十分に、実装可能になった。今ではエンタプライズにおいてさえ、HTML5が標準技術になりつつある。

企業が求める普遍性

企業は、Webでもモバイルでも高度なアプリケーションを提供して顧客の心を掴まなければならない。しかも、当然ながらそれを、デスクトップ、タブレット、スマートフォンなど多様な機種の上で普遍的に実現しなければならない。顧客の要求は、日に日に高度になるだけでなく、変わるのも早い。そんな変化に企業が対応していくためには、高度な表現能力と高度なクロスプラットホーム性の両方を兼ね備えた技術への投資が、不可欠である。Webアプリケーションでもモバイルアプリでも、最高のパフォーマンスが必要だ。

HTML5には、企業が求める一度書けばどこでもデプロイできる(write once, deploy anywhere)という特質があるので、プラットホームやデバイスの種類がどれだけ増えても、同量の時間で複雑高度なアプリケーションを制作し管理できる。

デベロッパは楽をしたい

デジタル技術がどれだけ進歩しても、開発チームは複雑なアプリケーションをはやく納めるというプレッシャーから逃(のが)れられない。そんな彼らが今、HTML5を使い始めている。デベロッパに対するStrategy Analyticsの最近の調査によると、ネイティブアプリやWebアプリケーションを作るためのすべての技術の中で、今後の採用数の伸びが最高のものは、HTML5の20%だった。そしてビジネスアプリ/アプリケーションの63%が、すでにHTML5で作られている。

デベロッパにとって、HTML5の最大の魅力の一つがオープンなスタンダードであること。だから、モバイルの多様な機種や、ディスプレイの多様なフォームファクタ、それにプラットホームやオペレーティングシステムの違いが目の前にあっても、アプリケーションの要求を比較的簡単に満たすことができる。またリッチなコンテンツを作る場合も、デバイスやオペレーティングシステムの特性に依存することなく、抽象的で普遍的な書き方ができる。

デベロッパという人種はつねに、なるべく複数のプラットホームに通用する言語でコードを書きたいと願っている。しかもそれでいて、どんなスクリーンサイズでもユーザ体験の質が高いこと。またデベロッパとしては、雇用者や開発要件が変わっても同じスキルが使えること。Webアプリケーション開発の高速化はもっぱら、JavaScriptからHTML5への移行のペースにかかっている。

2016年と未来のHTML5…普遍的な開発言語に

私は長年、開発の最前線にいた人間なので、HTML5の登場と、それがモバイルアプリの開発に革命をもたらす可能性に、大いに感動した。「技術革新」と「デベロッパの選好」と「エンタプライズのニーズ」、この三つのものが交差するところに、HTML5の未来がある。

来年は、企業における、Internet Explorerの使用が必須であったレガシーアプリケーションの現代化が加速され、それとともにHTML5の採用が更に一段と増えるだろう。今やそんな企業でも、社員たちは職場でGoogle ChromeやFirefoxを使っている。…どちらも、HTML5のサポートが優れている。さらに今後はWindows 10の採用が増えるから、ブラウザはMicrosoft Edgeが使われるようになり、なお一層、企業世界におけるHTML5の普及が進むだろう。

[原文へ]。
(翻訳:iwatani(a.k.a. hiwa)。