Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
React Nativeで 防衛戦をする方法
Search
kondo_script
August 06, 2024
0
91
React Nativeで 防衛戦をする方法
kondo_script
August 06, 2024
Tweet
Share
More Decks by kondo_script
See All by kondo_script
Google Apps Scriptを使いこなさない方法
efbmzwyk999
1
980
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
246
12k
Making Projects Easy
brettharned
119
6.4k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.9k
YesSQL, Process and Tooling at Scale
rocio
173
14k
BBQ
matthewcrist
89
9.8k
Become a Pro
speakerdeck
PRO
29
5.5k
A Tale of Four Properties
chriscoyier
161
23k
4 Signs Your Business is Dying
shpigford
185
22k
Gamification - CAS2011
davidbonilla
81
5.5k
Designing for humans not robots
tammielis
254
26k
Optimizing for Happiness
mojombo
379
70k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.6k
Transcript
React Nativeで 防衛戦をする方法 2024/08 株式会社NoSchool kondo_script
自己紹介 近藤 裕輝(こんどう ゆうき) • 株式会社NoSchool EM ◦ 「魂の形が純粋なエンジニアじゃねえな」と気づきマネージャの道へ •
ReactNativeとDDDが好き • 趣味はスパゲッティを料理すること
None
採用技術 テックブログを80記事以上公開しています! https://zenn.dev/p/manalink_dev 基本的には世に広まって枯れてきた技術を 選定して、外部からTipsを取り入れつつ 自社独自の問題解決に注力できるための 技術選定をしています。 App Runner Fargate
CloudFront Aurora MySQL Step Functions
今日話すこと その前に
なんの数字でしょう? 2,675人
A. 我々が足を向けて寝られない人の数
React Nativeにまつわる数字 • NPM 2,311,375 downloads / week • 30,000以上のアプリで利用されている(らしい)
あれ?
雑な試算 • contributorと同じ程度の知見を持つ有識者がcontributeし ていない人が4倍いると想定(大甘) ◦ 2,675 + (2,675 * 4)
= 13,375 人 (世界のReact Native 有識者の数 ) • プロダクトの数 >>>> 有識者の数
つまり? • 多くのプロダクトには「React Native有識者」がいない ◦ お使いのプロダクトは正常です • が、React Nativeは何かと有識者が欲しくなる ◦
アップデート ◦ 周辺ライブラリの取り扱い ◦ ネイティブモジュール ◦ パフォーマンスチューニング • なんたってv0.x.xのプロダクト
じゃあどうしろと? • 「俺自身が有識者になることだ」 ◦ これが一番正しい ◦ が、現実はそうも行かない • 割り切って防衛戦をする (今日の話)
◦ 有識者不在の状態でいかに良いプロダクトを作るか ◦ おれたちはディフェンス ▪ オフェンスはプロダクトの別の要素が担っている(はず) ▪ ex) アプリ内のコンテンツ、Webやサーバサイドの開発力
React Native防衛戦 1. bizと防衛ラインを合意する 2. 内部品質を泥臭く守る 3. エンジニアであることを忘れない
bizと防衛ラインを合意する • 「React Nativeで開発できること」ベースで作るものを考える ◦ ネイティブアプリをベンチマークにしない ◦ ネイティブモジュールは最終手段 • 「保守基準」を明確に決めて計画的に対応する
◦ ライブラリのアップデートなど「ReactNativeをやるために必要なコスト」を しっかり合意する ◦ 犠牲的アーキテクチャみたいな話とかできるとなお良いかも
内部品質を泥臭く守る • できるだけデフォルト/デファクトで使う ◦ なるべくexpo / 設定は必要最小限 /凝ったことをしない ◦ MainActivity.javaやAppDelegate.mはなるべく触らない
▪ 触る時は「バージョン管理ツールが存在しないと思って」しっかりコメントを残す • ReactNative本体を含むライブラリのバージョンをちゃんと上 げる ◦ 「最新追従できている」が外れるとトラブル対応の難易度が指数関数的 に上がる
エンジニアであることを忘れない • 防衛戦でも技術力は必要 / 発揮できる ◦ 純粋なReactの状態管理を考えられる ◦ そもそものReactロジックやテスト設計など ◦
「ネイティブアプリ開発者への良い入り口」でもある • OSSへのリスペクト ◦ そもそもReactNativeがロイヤリティフリーなのがすごいこと ◦ 人によって関わり方はそれぞれ ◦ 今日この場を楽しむのが今日の皆さんのコントリビュートです