【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 入門

最新の投稿


「人を撮るのが好き」一眼レフで笑顔を引き出す現役ピアニストのカメラマン

「人を撮るのが好き」一眼レフで笑顔を引き出す現役ピアニストのカメラマン

「依頼者が喜んでくれる顔を見たい」。そう話すのは都内で写真撮影サービスを提供しているYukiさんです。一眼レフカメラを使って本格的な写真を撮影するYukiさんの持ち味は「フットワークの軽さ」と「柔軟性」。どんな撮影をしているのでしょうか。


ウェビナーはどうやって集客する?初めてでも失敗しないポイントは?

ウェビナーはどうやって集客する?初めてでも失敗しないポイントは?

長引くコロナ禍によってリアルイベントが次々中止や延期になる中で、オンラインで開催するウェブセミナー(ウェビナー)が注目されています。開催するのは簡単なウェビナーですが、効率よく集客するにはコツが必要です。今回は、ウェビナーを開催したい人や集客の方法に悩む人に向けてウェビナーの集客のポイントを解説。マーケティングのプロが多数登録しているタイムチケットで集客のコツをレクチャーしてくれるサービスを紹介します。


潜在意識を引き出す霊視×コーチングで鑑定します!占いの概念を覆すアドバイス

潜在意識を引き出す霊視×コーチングで鑑定します!占いの概念を覆すアドバイス

人の考えていることや将来の姿が見える霊視の能力とコーチングの知識を持つ藤原麗さんは、タイムチケットで霊視を使ったアドバイスを提供しています。人知を超えた不思議な力で人の潜在意識を引き出してくれるという藤原さん。その能力はどのようなものなのか、教えていただきました。


事務代行サービスとは?頼める内容や利用するメリットを紹介

事務代行サービスとは?頼める内容や利用するメリットを紹介

「忙しすぎて事務作業ができない」「経理が苦手」…。そんな時に便利なのが事務作業をアウトソーシングする「事務代行サービス」です。事務代行サービスはどんなことを依頼できるのでしょうか。事務代行サービスの特徴や依頼先、料金相場を解説。事務代行サービスの選び方や、タイムチケットで利用できる事務代行サービスを紹介します。


肌悩みを理論的に解決!化学専攻の理系美容家がスキンケアを伝授します

肌悩みを理論的に解決!化学専攻の理系美容家がスキンケアを伝授します

「美容を楽しむ感性の大切さを伝えたい」。そう話すのは、タイムチケットで美容に関する相談事にアドバイスをしている理系美容家かおりさんです。女性だけのものと思われがちの「美容」ですが、昨今は男性も肌を気遣う人が増えています。主に男性に向けたスキンケアの相談に応じているかおりさんは、どのようにサービスを提供しているのでしょうか。