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
89
React Nativeで 防衛戦をする方法
kondo_script
August 06, 2024
Tweet
Share
More Decks by kondo_script
See All by kondo_script
Google Apps Scriptを使いこなさない方法
efbmzwyk999
1
960
Featured
See All Featured
Code Reviewing Like a Champion
maltzj
525
40k
The Invisible Side of Design
smashingmag
301
51k
How to train your dragon (web standard)
notwaldorf
96
6.2k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
Building an army of robots
kneath
306
46k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.1k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
GraphQLの誤解/rethinking-graphql
sonatard
72
11k
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がロイヤリティフリーなのがすごいこと ◦ 人によって関わり方はそれぞれ ◦ 今日この場を楽しむのが今日の皆さんのコントリビュートです