More Related Content
Similar to Reactnative はじめの一歩 (20)
More from PIXTA Inc. (14)
Reactnative はじめの一歩
- 22. デバッガー
● Chrome Extention
● React Native Debugger 👈
action, stateの差分, payloadの中身の表示
actionのリプレイ機能
長時間開いていると、メモリを食いつぶすので、
定期的に再起動が必要 😥
実装を取り巻く環境構築
- 23. 言語、型チェック
● 言語
○ npm run eject からのSwift / Kotlin
○ React.js
● 型チェック
○ Flowtype
○ TypeScript
実装を取り巻く環境構築
- 24. 言語、型チェック
● 言語
○ npm run eject からのSwift / Kotlin
○ React.js
● 型チェック
○ Flowtype
○ TypeScript 👈
Expo 32.0.0からはTypeScriptをサポート!
yarn addもbabelの設定も不要!
実装を取り巻く環境構築
- 26. State管理
● unstated
● MobX
● Redux 👈
記述量 * 学習コストはReduxが最も大きい。
シェアが大きい。(採用において有利に働く)
ボイラテンプレート的であるが、Redux Wayを走っていれば踏
み外すことがない。
複雑度は後述のディレクトリ管理と非同期処理で相殺
実装を取り巻く環境構築
- 28. ディレクトリ構成
● Redux Way
● Domain Style
● Ducks
● src/
○ actions/
■ a.ts
■ b.ts
○ components/
○ containers/
○ constants/
○ reducers/
役割ごとにディレクトリを切る
実装を取り巻く環境構築
- 29. ディレクトリ構成
● Redux Way
● Domain Style
● Ducks
● src/
○ components/
○ containers/
○ configureStore.js
○ store/
■ items/
■ users/
● actions.ts
● reducers.ts
ドメインごとにディレクトリを分け、 actions, reducersを分ける
middlewareはconfigureStoreに記述
action typesはaction.ts内に書く
実装を取り巻く環境構築
- 30. ディレクトリ構成
● Redux Way
● Domain Style
● Ducks
● src/
○ components/
○ containers/
○ modules/
■ items.ts
■ users.ts
散らばったaction types, action, reducerを1つのファイルにま
とめる。
moduleが肥大化すると可読性が落ちる
実装を取り巻く環境構築
- 31. ディレクトリ構成
● Redux Way
● Rails Style
● Domain Style 🤔
● Ducks 👈
ディレクトリ構成はアプリの規模や処理の複雑度による
Snapmartの場合は比較的小規模であるため、現時点では
modulesの見通しが良い。
規模や複雑度によって、Domain Styleに移行を検討。
実装を取り巻く環境構築
- 33. ルーティング
● React Native Navigation
● React Native Router
● React Navigation 👈
React Native公式推し。Reduxの相性が良い◎
React Native Routerと比較してドキュメントが充実
ルーティングとComponentを分離したい
実装を取り巻く環境構築
- 38. まとめ
用途 ツール名
開発支援 Expo
エミュレーター iOS: Xcode, Android: Genymotion
デバッガー React Native Debugger
言語 TypeScript
State管理 Redux
ディレクトリ構成 Ducks
ルーティング React Navigation
API通信 axios * redux-saga
UIコンポーネント React Native Elements
実装を取り巻く環境構築
- 41. 迷った / 今後検討
● BaaS
○ firebase
○ amplyfy
● Testing
○ Jest
○ Detox
● CI/CD
● Analytics