T-file

一歩踏み出す勇気を全力で応援するブログ

React Nativeとは?【初心者向け】

こんにちは、React Native実務経験があるtakaです。

今回は、ReactNativeとはそもそも何なのかということに加え、メリット・デメリット、Reactや他のフレームワークとの違い、実際の案件をこの記事で紹介していきたいと思います。

React Nativeとは?

React Native(リアクトネイティブ)とは、JavaScriptをネイティブコードに変換してアプリ開発を行えるフレームワークです。
つまりスマホアプリ開発をJavaScriptで行えるということです。

とても便利です。

では、ReactNativeがどのような特徴があるのか見ていきましょう。

React Nativeの特徴は?

開発言語がJavaScript

冒頭で説明したようにJavaScriptのフレームワークです。
webエンジニアはJavaScrptは親しみがあるので、学習コストを抑えることができます。

iOSアプリ・Androidアプリ両方を作成可能

ReactNativeはクロスプラットフォームのアプリ開発用フレームワークです。
なのでiOSアプリ・Androidアプリ両方を作成可能です。

これはすごいことです。

本来、

・iOSアプリを開発するならSwiftやObjective-C
・Androidアプリを開発するならJavaやKotlin

などのwebエンジニアになじみにくい言語やフレームワークを利用する必要があります。

ただでさえ学習コストがかかるうえに、iOSアプリ・Andoroidアプリ両方リリースする必要があるなら学習コストはどんどんと膨れ上がります。

しかし、ReactNativeはJavaScriptであり、クロスプラットフォームなので、学習コストを抑えることができます。

「学習コストを抑えること」はアプリを早くリリースする上でとても必要な指針です。

Facebookが開発したフレームワーク

アプリ開発でのこれらの課題を解決するために、FacebookがReact Nativeを開発しました。

  • 開発環境のセットアップ
  • 複数OSのサポートが大変
  • 端末によってレイアウト崩れが起こる

話はそれますがフロントエンドフレームワークのbootstrapはTwitterが開発しました。
大きい会社になると、フレームワークを開発してしまうんですね!

Reactを利用している

React Nativeは、Reactというユーザーインターフェース(UI)を構築するためのJavaScriptライブラリを使って、UIを制御する仕組みを採用しています。

React Nativeの「React」はReactそのもののことだったんですね。

ちなみにJavaScriptとJavaは全く関係がないので注意を…

ReactをネイティブコードにするのがReact Nativeです。

tips!

ネイティブアプリとは、タブレットやスマホにダウンロードするアプリのことです。

開発環境はなんでも良い

React NativeはWindows・macOS・Linuxをサポートしているので、WindowsでiOSアプリを開発することが可能になります。

これは大きいですね。

Reactとの違いは?

Reactは主にWebアプリケーションを作成するフレームワークですが、React Nativeはモバイルアプリケーションを作成するフレームワークです。

そもそも比較する対象ではありません。

React nativeの求人・案件は?

React Nativeの求人

ReactNativeのフリーランス求人・案件 月額単価相場の中央値は75万円のようですね。
20代の平均年収は348万円、30代が444万円のようなので、多くの方の年収が上がりそうです。

こちらのサイトを参考にしました。

案件数は?

先ほどのサイトで見ると、WEB開発の王道PHPの案件数15,019件(2021/09/25時点)に対して、React Nativeは205件(2021/09/25時点)でした。

やはりWEB開発ができるようになった人が扱うイメージがあるので、エンジニア自体の希少性もあるのでしょう。

まとめ

React Nativeとは、アプリ開発を行うことを目的としたJavaScriptのフレームワークでしたね。
JavaScript・Reactを学んでいる人は学習コストを抑えて身につけることができます。

自分の価値を高め、あふれている他のWEBエンジニアと差別化したい場合、アプリ開発ができる場合はReact Nativeを学ぶ選択肢に入るでしょう。