体験を伝える―『ガジェット通信』の考え方

面白いものを探しにいこう 本物を体験し体感しよう 会いたい人に会いに行こう 見たことのないものを見に行こう そしてそれをやわらかくみんなに伝えよう [→ガジェ通についてもっと詳しく] [→ガジェット通信フロアについて]

サイバーエージェントに「Kotlin」を採用した自社Androidアプリ開発の舞台裏を聞いてみた

Googleも正式サポートを表明

「いま、Kotlinのコミュニティはかなり盛り上がってますよ!」

開口一番、嬉しそうに語るのは、サイバーエージェントの藤原聖氏だ。

KotlinはJetBrains社が開発した、JVM上で動作する静的型付けのオブジェクト指向プログラミング言語。複雑で肥大化し互換性問題で硬直してきたとも言われるJavaの言語仕様を解消するため、簡素化および安定性と機能性を高めることを狙った新しいプログラミング言語だ。

その存在は以前から知られていたが、2017年5月、サンフランシスコで開催された「Google I/O 2017」で、GoogleがKotlinをAndroidアプリ開発言語として正式にサポートすることを発表したのだ。このカンファレンスに参加していた藤原氏は、そのときの興奮がいまなお収まらない。

株式会社サイバーエージェント 藤原 聖氏
2011年サイバーエージェント中途入社。入社後は、Androidエンジニアとして数々のコミュニティサービスの開発、運営に携わった後、2015年4月より映像配信プラットフォーム「FRESH!」の立ち上げに参画。その後、2016年9月よりメディア統括本部 技術戦略室 テクニカルマネージャーを務める。

「実は2016年のGoogle I/OでKotlinに関して何らかの発表があると思っていたのですが、そのときにはなくて。Googleは開発言語の正式サポートなどはしないのものなのかなと思っていたので、今年のキーノートで発表されて本当にびっくりしました。

すでに世界での利用実績が高まっていることに加え、技術的チャレンジが好きなエンジニアほど、Kotlinを使っているという事実がありました。そうした先進的なエンジニアを今後もAndroid開発に惹きつけるためにも、Kotlinの正式サポート表明が必要だったのではないかと思っています」

藤原氏が嬉しがるのは言うまでもない。Kotlinがまだマイルストーン11という時代からその有用性に注目し、自社のプロジェクトに導入していたからだ。

2015年4月から開発が始まった映像配信プラットフォームフォーム「FRESH!」のAndroidクライアントのKotlinによる実装は、もちろんサイバーエージェント内では初めて、国内外でも早い取り組みだ。現在は「FRESH!」のサーバーサイドの一部もKotlinで書かれている。

Kotlinの導入は燎原の火のごとく急速に広がる気配がある。例えば日本では、Sansanの「Eight」、トクバイの「トクバイ」、エムスリーの「MR君」、Rettyの「Retty」、エウレカの「Pairs」など、Kotlinでの開発を表明するサービスが続々と誕生している。

「いつでもJavaに戻れる」を合い言葉に開発スタート

KotlinがAndroidアプリ開発者に高い関心をもって迎えられている理由は何か。一つは、Javaとの100%互換性だ。

「Androidで使われているライブラリはそのまま使える。また、何か問題があったらJavaにすぐ戻れる。FRESH!のプロジェクトでも、何かあったらJavaに戻ろうというのが藤原さんの口癖でした」

と振り返るのは、2015年4月入社でいきなりKotlinという初めての言語を使うことになった、荒谷光氏だ。

荒谷氏は新卒入社ながら、大学・大学院を通して一貫してAndroid開発に携わってきており、Javaという言語の硬直性についても熟知していた。

「会社でもAndroid開発は続けたかったのですが、どうせやるんだったら新しい言語でやりたかった」と、Kotlinへのチャレンジにワクワクした一人だ。

株式会社サイバーエージェント 荒谷 光氏
内定者時代にアプリ版「Ameba」でのAndroid開発を経て、2015年サイバーエージェント新卒入社。研修終了後の2015年6月より「FRESH!」チームにジョインし、2016年9月より映像配信プラットフォーム「FRESH!」Androidエンジニアリーダーを務める。

2015年の開発当初、参考になる日本語の情報は、2012年の段階ですでにKotlinに着目し、国内でのエバンジェリストを自称する長澤太郎氏(日本Kotlinユーザーグループ代表、エムスリー所属)が発信する情報ぐらいでした。

Kotlinの言語仕様を理解するうえで、藤原氏と荒谷氏が最も参考にしたのは、Kotlinのオフィシャルサイトが英語で発信する情報だった。

「後発の言語なのに、というかそれゆえに、オフィシャルサイトの情報はよく整理されており、丁寧でわかりやすかった。これが世界に急速にユーザーを広める原動力になっているのはたしかです」(荒谷氏)。

Android開発で欠かせない統合開発環境(IDE)「Android Studio」が第一級の言語としてKotlinを推奨し、それをサポートしている点も重要だ。

「Android Studio」はもともとJetBrains社が開発した「IntelliJ IDEA」をベースにAndroid開発に最適化されたものであり、Kotlinとの親和性が高いのだ。

Syntaxがモダンで美しい。NullPointerException回避の工夫も

そしてKotlinの最大の魅力といえば、その言語のモダンさだ。

「なによりSyntaxがモダンで簡潔。その美しさに恋に落ちたというエンジニアもいるぐらいです。Javaだと本質的ではないが、お決まりで書かないといけない構文がたくさんあるのですが、そういうボイラープレート的なものがKotlinにはほとんどありません」(藤原氏)

1 2次のページ
CodeIQ MAGAZINEの記事一覧をみる
  • 誤字を発見した方はこちらからご連絡ください。
  • ガジェット通信編集部への情報提供はこちらから
  • 記事内の筆者見解は明示のない限りガジェット通信を代表するものではありません。