react native学习record one month

React Native 开发主要面向"跨平台原生 App 开发"

🧠 一、基础能力

  1. JavaScript / TypeScript

    • 熟练掌握 ES6+(async/await、Promise、Map、Set 等)

    • 熟悉 TypeScript 类型系统(常用类型定义、接口、联合类型、泛型)

  2. React 核心

    • 函数组件 + Hook(useState、useEffect、useCallback、useRef 等)

    • 状态管理(Context、Redux、Zustand、Recoil 等)

    • 生命周期模拟(useEffect 替代 componentDidMount 等)

    • 组件拆分与复用(高阶组件、Render Props、组合模式)

⸻

📱 二、React Native 专项技能

  1. UI 与布局

    • Flexbox 布局(RN 中主要使用 flex)

    • StyleSheet.create 与动态样式处理

    • 尺寸适配(Dimensions、PixelRatio、react-native-responsive 等)

    • 多分辨率与不同平台(iOS / Android)适配

  2. 常用组件

    • ScrollView、FlatList、SectionList

    • Text、View、Image、TouchableOpacity

    • 自定义按钮、输入框、模态框等常见 UI 元件

  3. 导航与路由

    • react-navigation:Stack、Tab、Drawer 等导航模式

    • 动态路由、参数传递、嵌套导航

  4. 本地能力调用

    • 相册、摄像头、麦克风(如 react-native-image-picker)

    • 定位(如 react-native-geolocation)

    • 推送通知(如 Firebase Messaging)

    • 深度链接(Deep Linking)

⸻

🛠 三、工程能力

  1. 项目配置

    • Metro 构建工具基本使用

    • 多环境配置(dev/staging/prod)

    • 使用 .env 和 react-native-config

  2. 第三方库集成

    • react-native-vector-icons

    • react-native-gesture-handler

    • react-native-reanimated

  3. 热更新与版本发布

    • 使用 CodePush 实现 JS 热更新

    • 与 App Store / Google Play 的发布流程

    • 支持灰度、版本控制

⸻

🔧 四、调试与性能优化

  1. 调试工具

    • React Native Debugger

    • Flipper 调试平台

    • Chrome DevTools + console

  2. 性能优化

    • FlatList 大量数据优化

    • 避免不必要的 re-render(使用 React.memo、useCallback)

    • 懒加载与分页处理

    • 使用 shouldComponentUpdate / PureComponent

⸻

🧩 五、Native 能力(进阶)

这一部分是进阶开发中要掌握的,特别是涉及 桥接通信、封装原生模块 时。

  1. 原生模块封装

    • iOS(Swift/Objective-C)

    • Android(Kotlin/Java)

    • 使用 NativeModules、TurboModule 与 RN 通信

  2. Native 与 JS 通信机制

    • Bridge 桥接机制

    • Native Event Emitters

    • 双向通信模型(例如 React Native 与 WebView 通信)

⸻

🔗 六、跨端开发实践

• 使用 Platform 模块判断平台差异

• 封装跨平台组件(统一 UI 和逻辑)

• 多端样式 / 动画适配(Android 和 iOS 差异大)

⸻

🧪 七、测试与质量保障

• 单元测试:jest + @testing-library/react-native

• 端到端测试:detox

• 崩溃监控与日志采集:Sentry、Firebase Crashlytics

⸻

📦 八、推荐学习路线

  1. 学习 React 和 TS 基础

  2. 完成一个完整的 RN 项目(如 ToDo List、IM、短视频)

  3. 深入导航、列表、图片缓存等优化

  4. 学会打包和上线

  5. 掌握原生模块封装 + 热更新

  6. 看懂调试工具 + 性能分析工具使用

相关推荐
小陈phd12 分钟前
深入理解agent学习笔记(五)——KV Cache友好的上下文设计
笔记·学习·spring
下辈子不要当码农14 分钟前
Linux驱动学习(1)
linux·运维·学习
余额瞒着我当琳25 分钟前
C++算法学习篇5--二分查找法
c++·学习·算法
鱼很腾apoc1 小时前
【MySQL】 第2期 查询与函数系统详解:从基础 CRUD 到复合多表查询
linux·数据库·学习·mysql·dml
幼儿园蛋小黄1 小时前
嵌入式学习总结:从 I2C 中断驱动到 DHT11 温湿度采集实战
单片机·嵌入式硬件·学习
星恒随风1 小时前
Linux进程间通信(二):深入理解System V共享内存、消息队列、信号量与内核IPC资源管理
linux·运维·服务器·笔记·学习·状态模式
li星野2 小时前
【学习记录】PCB设计常用操作全解析:单位、图层、过滤器、布线、规则与快捷键
学习
优化Henry2 小时前
LTE基站传输割接后S1连接失败排查实录
运维·网络·笔记·学习·信息与通信
星恒随风3 小时前
Linux进程间通信(一):从匿名管道、命名管道到进程池,深入理解Pipe、FIFO与文件描述符
linux·运维·笔记·学习·状态模式
chde2Wang3 小时前
numpy学习2
学习·numpy