おはようございます。まだまだReact Nativeと奮闘する夏季休暇を過ごしております。毎日トラブルシューティングばかりで疲れてきたので、たまにはこういった内容も調べてみようかなと思った次第です笑
本日は、React Nativeの開発ツールについてです。私は今開発でExpoを使っているのですが、他にどんなものがあるんだろうなぁと疑問に思ったので、調べてみました。それでは参ります!
Contents
Expo
最初は、私も現在利用している、Expoです。
特徴
- Expoは、Expo CLIとExpo Clientの2つの機能から構成されている(詳しくはこちら)
- クロスプラットフォームリリースで煩わしいビルドをよしなにやってくれる(Android StudioやXCodeを利用せず開発できる)
- Hot Reload (これはExpo固有の機能ではないかな・・?)や、Expo Goというクライアントアプリでアプリをテストするため、デバイスを問わず高速に開発ができる。(Expo Goアプリをインストールしているデバイスであれば、デバッグ時のQRコードを読み取るだけでそのデバイス上でアプリの動作をテストできる。
- 対応していないライブラリがちょこちょこあるため、Expoを使っていることで所望のライブラリが使えず、つまづくことがそこそこ多い。
人気
- オープンソースによる開発が行われている
- 2021年9月現在、週間12万ダウンロードと圧倒的なダウンロード数、さらに右肩上がり
- Github Starは14,700と非常に多い
- 772名のコントリビューターがおり、また直近12ヶ月のコミットは2950回(3時間に1回)と、非常に頻繁に行われており開発の勢いがある
@React-Native-Community/CLI
続けて、@react-native-community/cliです。こちらは、以下でご紹介するreact-native-cliの後継のようで、react-native-communityによって開発されているようです。
特徴
この辺りにExpoとの比較とともにわかりやすくまとめられていたため、ご覧くださいませ。
人気
- 週間58万ダウンロード・・!そして右肩上がり。Expoより圧倒的に多いのですね・・知らなかった!
- Github Starは1700。比較的新しいライブラリだから、そんなものなのでしょうかね。
- 484名のコントリビュータで過去12ヶ月のコミットは96回。更新の頻度は、Expoなどと比較すると少なめなのですかね・・
[廃止] React-Native-CLI
最後に、React-Native-CLIです。こちらも、Facebookが開発しており、純正CLIになります。
が、Githubページをみると、すでに廃止され、別のライブラリ@react-native-community/cli
へ移行した模様。 githubのページでも以下のように記載があります。
react-native-cli – an optional global convenience package, which is a proxy to @react-native-community/cli and global installation helper. Please consider it legacy, because it's not necessary anymore.
というわけで、こちらはご参考程度に・・
特徴
この辺りにExpoとの比較とともにわかりやすくまとめられていたため、ご覧くださいませ。
人気
- React Native開発元であるFacebookによる開発が行われている
- 2021年9月現在、週間3.41万ダウンロードと絶対数はまだまだ多いが、Expoと比較すると3分の1 程度。また、やや右肩下がり。
- Github Starは97,800とExpoと比較しても非常に多い。
- 2979名のコントリビューターがおり、過去12ヶ月のコミットは2,262回 (4時間に1回)と、Expoに比較するとやや頻度が低い(それでも絶対的には高い頻度)。が、Expoと遜色なく積極的に開発は行われている模様。最近は頻度が落ちている?
結論
ざっくりいうと、Expoは色々よしなにやってくれて、より簡単に高速にアプリ開発ができる一方で、その副作用として、他のライブラリが使用できなかったり、といったことも起きえる。@React-native-community/cliは、自分でやらないといけないことが多いけど、自由度が高い、といった整理になるのでしょうか。
いずれのツールも、更新頻度やダウンロード数といった指標は、絶対値としては十分なので、ツールに求める機能の要件に応じて決定すれば良さそうです。
本日も最後までご覧いただきありがとうございました!
おしまい
[番外編] ReactNativeをもっと学ぶなら・・・
React Nativeをもっとちゃんと学びたい!という方は、こちらにおすすめコンテンツをまとめましたので、ご参考にしていただければと思います・・!
土台のJavaScript/TypeScriptに不安がある方は、こちらもまとめましたので、ご参考になりましたら幸いです。
コメントを残す