0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Androidアプリで使用できる言語またはフレームワーク

Posted at

はじめに

以前 JavaScript で作成していたアプリを Android 向けにリリースしようかと考えています。
候補としては、Kotlin, ReactNative, Flutter の 3 つになります。
ということで、それぞれの特徴を調べて、自分用のメモとして以下に纏めてみました。

※これまでたくさんの方が比較されてきたかと思いますが、自分で書いてみた次第。

Kotlin

  • Java Virtual Machine 上で動作するオブジェクト指向言語。
  • Java と比較すると、簡潔で安全性が高い。
  • Java と互換性が高い、JVM 言語の一種。
  • Java のプログラムやJava用のライブラリ、フレームワークなどを流用できる。
  • プログラム作成後はコンパイルして使用する。(変更から反映まで時間を要する場合がある。)

React Native

  • JavaScript のライブラリであるため、iOS/Android 両方のアプリを開発可能。
  • ホットリロードと言って、コードの変更点を保存して瞬時に反映することができる。
  • React を使用した人には学習が容易である。(逆に、Java 開発経験者は、JavaScriptをいちから学習する必要がある。)
  • 発生するエラーが、ReactNative と JavaScript の階層でのエラーがあり、解決に時間を要する・エラー箇所特定のしにくさがある。

Flutter

  • iOS/Android 両方のアプリを開発可能。
  • ReactNative と同様、ホットリロード機能がある。
  • Dart といいうプログラミング言語を新しく習得する必要がある。(ただし、設計は JavaScript を踏襲しているとのこと。)
  • 情報が少ないために解決に時間を要する場合がある。
  • Googleのスマートディスプレイの OS 「Cast OS」の後継と考えられるFuchsia にて、アプリ開発のフレイムワークとして採用されている。

結論

Android だけでなく iOS での開発を考慮することができ、JavaScript を触ったことがある私としては、React Native が良いかなーとなりそうでした。
しかし、発生するエラーがどの階層かすぐに判断できず解決に時間を要することがあるということと、将来性を考えると、Flutter が最適と考えました。

最後に

Flutter はこれから機能が充実してくるため、勉強していくのが楽しみです。

参考

Kotlin

Kotlin 公式ページ
Wikipedia
TOPSIC

React Native

React Native 公式ページ
Udemyメディア

Flutter

Flutter 公式ページ
Qiita

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?