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
84
React Nativeで 防衛戦をする方法
kondo_script
August 06, 2024
Tweet
Share
More Decks by kondo_script
See All by kondo_script
Google Apps Scriptを使いこなさない方法
efbmzwyk999
1
870
Featured
See All Featured
VelocityConf: Rendering Performance Case Studies
addyosmani
330
24k
Why Our Code Smells
bkeepers
PRO
337
57k
Balancing Empowerment & Direction
lara
1
360
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
790
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
930
Bash Introduction
62gerente
614
210k
A better future with KSS
kneath
239
17k
Done Done
chrislema
184
16k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Embracing the Ebb and Flow
colly
86
4.7k
Thoughts on Productivity
jonyablonski
69
4.7k
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がロイヤリティフリーなのがすごいこと ◦ 人によって関わり方はそれぞれ ◦ 今日この場を楽しむのが今日の皆さんのコントリビュートです