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
92
React Nativeで 防衛戦をする方法
kondo_script
August 06, 2024
Tweet
Share
More Decks by kondo_script
See All by kondo_script
Google Apps Scriptを使いこなさない方法
efbmzwyk999
1
1k
Featured
See All Featured
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
253
22k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.3k
How to train your dragon (web standard)
notwaldorf
97
6.4k
Statistics for Hackers
jakevdp
799
220k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.8k
Scaling GitHub
holman
463
140k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Typedesign – Prime Four
hannesfritz
42
2.9k
Navigating Team Friction
lara
190
15k
GraphQLとの向き合い方2022年版
quramy
49
14k
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がロイヤリティフリーなのがすごいこと ◦ 人によって関わり方はそれぞれ ◦ 今日この場を楽しむのが今日の皆さんのコントリビュートです