【React Native 入門】スマホアプリ開発のプロが教える「React Native」の学び方

【React Native 入門】スマホアプリ開発のプロが教える「React Native」の学び方

Facebookが作成したスマホアプリ開発のためのフレームワーク「React Native」が注目を集めています。React Nativeで開発することのメリット・デメリットは? React Native入門者はどんな知識を身につけるべき? 長年ソフトウェア制作やITコンサルティングに携わり、現在はソフトウェア制作会社を経営する川島賢さんに、React Nativeの入門的な知識について解説してもらいました。


React Nativeについて教えてくれたのはこの人!

川島賢さんのプロフィール

https://www.timeticket.jp/hosts/kawashimaken?utm_source=ttl&utm_medium=145&utm_campaign=experiences_2

テクノロジーを愛するCEO 外資系ITコンサルティングファームコンサルタントとして6年間 今、ソフトウェア会社経営中、Webサービス、情報システム、スマホアプリ制作が得意分野です。IoTと機械学習深層学習はこれからチャレンジする分野です!PythonもJavaScriptも大好きです!最近はJetson nanoを遊んでいます! noteも書いています。

React Nativeとは?

タイムチケット アプリ システム開発 川島賢

React Nativeとは、Facebookが発表したスマホアプリ開発のためのフレームワークです。

スマートフォンのOSはいま、Appleが提供する「iOS」とGoogleが提供する「Android」の2つが主流です。 それぞれのOS上で動作するアプリを開発するためには、iOSはSwift、AndroidはJavaという、異なる言語を使い分ける必要があり、開発者にとって大きな負担となっていました。 その課題を解決しようと、Facebookが開発したのが「React Native」です。 React NativeはJavaScriptを用いたフレームワーク1つの言語でiOSとAndroidという2つのプラットフォームをまたいでアプリ開発をすることができるのが特徴です。

React Nativeは入門者にもハードルが低い

React Nativeを使ってアプリ開発をしているソフトウェアエンジニアの川島賢さん。React Nativeの魅力について、開発言語にJavaScriptを用いている点を挙げます。iOSで開発に使われるSwiftは熟練プログラマーにとってはパワフルなツールになり得ますが、習熟するまでの学習コストが高いのが難点です。 その点、JavaScriptを使うReact NativeはWeb系のフロントエンドの開発経験があれば始められるので、入門者にとってもハードルが低いといえます」 「ほんの十数年前、JavaScriptといえば“ブラウザ側で動くおもちゃ”といった程度の認識で、JavaScriptをやっていると言えば笑われたものです」と話す川島さんですが、JavaScriptにはいま、他のプログラミング言語にない「勢い」があるといいます。 「人気の高いプログラミング言語は、利用するプログラマーのあいだでコミュニティが形成されます。コミュニティが成長することによってさまざまなライブラリーやツールが生まれ、やがてエコシステムになっていきます。 近年、RubyやPythonといったコミュニティが盛り上がっていますが、JavaScriptはそれを上回る勢いがあります。言語を扱う人が多ければ多いほど、開発者の母数は増えます」 加えて、JavaScriptはブラウザだけでなく、いろいろなところで動かすことができるシンプルな言語であるところも利点だと指摘します。

タイムチケット アプリ システム開発 川島賢

React Nativeは異なるプラットフォームで利用できる

川島さんは、React Nativeでのアプリ開発に次のようなメリットを感じています。 ・異なるプラットフォーム上で統一されたUI/UXが実現できる iOSとAndroidでそれぞれ異なる言語でアプリを開発した場合、UI/UXに少なからずずれが発生します。しかし、ReactNativeであれば、どのプラットフォームでも比較的容易に統一されたUI/UXを実現することができます。

・コストが削減できる iPhoneとAndroidスマホの両方でアプリをリリースしたい場合、Swiftのスキルを持つエンジニアとJavaのスキルを持つエンジニアそれぞれを採用しなければなりません。しかし、React Nativeに置き換えることでエンジニアを半分に減らすことができ、開発コストを削減することができます。

フレームワークとして十分に成熟しておらず不安定な面も

一方で、「React Nativeでアプリ開発をすることで、楽になった部分もあれば、逆に大変になった部分もある」といいます。 「React Nativeはフレームワークとして発展途上にあり、開発が活発に進められています。そうしたフレームワーク自体のアップデートに対応していく必要があるばかりでなく、iOSとAndroid両方のバージョンアップにも対応しなければなりません。 また、新しいスマホが登場するたびに、異なるハードウェアをベースにした新機能にも対応していく必要があります

SwiftやJavaといったプラットフォーム公認の技術であればドキュメントが充実しており、構成もスムーズ。しかし、「React Nativeではそうはいかないこともある」と加えます。 「React Nativeの場合、開発の工程でレイヤーを1つ余分に挟むことになるので、難しいバグが発生した場合の原因追究が複雑になります」

React Nativeを学ぶときに必要な知識は?

タイムチケット アプリ システム開発 川島賢

これからReact Nativeを学ぼうとする場合、どんな知識を身につけたらいいのでしょうか。 「React Nativeでアプリ開発をしてみたいからと言って、React Nativeに関する知識だけ身につければいいというわけではありません。JavaScriptの使い方やアプリ開発の基本的な知識はおさえておきたいですね」 川島さんに相談する人の中にはJavaScriptの書き方や非同期の処理方法など、React Native以外の部分で戸惑う人が多いそう。 特に、アプリ開発の知識については、「氷山の下の部分は共通している」と川島さん。インフラの知識やデータベースの構造、アプリをリリースするまでの手順は、SwiftやJavaといったプラットフォームと変わらないので、「アプリ開発の裏を知っておけるといい」と話します。 とはいえ、大切なのは「手を動かすこと」。 「React Nativeを選ぶ。そこはいい選択です。コンピュータサイエンスの基礎知識を網羅的に完全習得してからでなくても、開発の要所でぶつかる問題を1つ1つ解決していくことで、効率よく学ぶことができます

React Nativeでものをつくる喜びや達成感を感じてほしい

タイムチケット アプリ システム開発 川島賢

大学でコンピューターサイエンスを学んだ川島さんは、ソフトウェア制作を経て大手コンサルティング会社のアクセンチュアへ。ITコンサルタントとして情報システムの構築などに携わりましたが、「お客さまに近いところで仕事がしたい」と考え、自らソフトウェア制作会社を起業しました。

Webサービスの開発や起業の顧客管理システム、人工知能に関するプロジェクトなど、フロントエンドからバックエンドまで幅広く手がけてきた川島さんですが、最近はReact Nativeについて相談する人も少なくありません。

そんな人たちに、こうアドバイスします。 「React Nativeを使ってみようと思うのであれば、とにかく手を動かしてみてください。そして、つくったものが動いたときの感動や達成感を感じてほしいですね」

React Nativeについて疑問がある人は、川島さんに相談してみると、答えが見つかるかもしれません。

川島賢さんのプロフィールをチェック

関連するキーワード


React Native 入門

最新の投稿


副業の確定申告はいくらから必要?税理士がわかりやすく解説

副業の確定申告はいくらから必要?税理士がわかりやすく解説

働き方改革や昨今のコロナ禍の影響で、本業とは別に副業やギグワークで収入を得ている人も少なくありません。たとえ副業やギグワークでも、収入の金額によっては税務署への確定申告が必要です。では、いくら稼ぐと確定申告が必要になるのでしょうか。確定申告をするときに準備しておくこととは?副業で確定申告する際の方法について、税理士のまーこ☆さんがわかりやすく解説します。


SEOに強いコンテンツとは?作り方のコツをWebマーケターが伝授

SEOに強いコンテンツとは?作り方のコツをWebマーケターが伝授

「SEO対策をしているはずなのに、自社サイトが検索上位に表示されない」。そんな悩みを持つ人は多いのではないでしょうか。SEOに強いコンテンツの条件とは、どんなものでしょうか。また、SEOに強いコンテンツを作るには、どんなことに注意したらよいのでしょうか。SEO集客を得意とするWebマーケター大山典克さんに聞きました。


結婚契約書とは?メリットとデメリットは?行政書士が書き方を解説

結婚契約書とは?メリットとデメリットは?行政書士が書き方を解説

結婚後の夫婦間のトラブルを回避するために「結婚契約書」を作成するカップルが増えています。結婚契約書とはどのようなものでしょうか。どうやって作成すればいいのでしょうか。行政書士として結婚契約書の作成の相談に応じている本園希美さんに聞きました。


YouTubeの再生数を増やすには?現役YouTuberがわかりやすく解説

YouTubeの再生数を増やすには?現役YouTuberがわかりやすく解説

「YouTubeを始めてみたけど、思うように再生数が伸びない」。その原因はどこにあるのでしょうか。動画の内容やサムネイルのデザイン、動画の時間の長さなど、YouTubeの再生数を増やす要因がさまざまに語られている中で、「視聴者ファーストこそ再生数を伸ばすために重要」と話すのは現役YouTuberの「ろっく@YouTuber」さん。YouTubeの再生数を増やすコツを聞きました。


失敗しない断捨離の方法は? 物を手放すコツをわかりやすく解説

失敗しない断捨離の方法は? 物を手放すコツをわかりやすく解説

物を持ち過ぎないシンプルな暮らしが流行している昨今、必要でない物を手放す「断捨離」が注目を集めています。一方で、「物を捨てられない」と悩む人も少なくありません。断捨離をするためにはどんな準備が必要なのでしょうか。断捨離の最適な方法や順番とは? インテリアスタイリストで、断捨離のサポートをしている沙織さんがわかりやすく解説します。