React Native

Architecture Patterns

āļŠāļ–āļēāļ›āļąāļ•āļĒāļāļĢāļĢāļĄāļ„āļ­āļĄāđ‚āļžāđ€āļ™āļ™āļ•āđŒ, atomic design, āđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡āđāļšāļš feature-based, clean architecture, SOLID

22 āļ„āļģāļ–āļēāļĄāļŠāļąāļĄāļ āļēāļĐāļ“āđŒÂ·
Senior
1

āļŠāļ–āļēāļ›āļąāļ•āļĒāļāļĢāļĢāļĄāđāļšāļšāļ„āļ­āļĄāđ‚āļžāđ€āļ™āļ™āļ•āđŒāđƒāļ™āđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™ React Native āļ„āļ·āļ­āļ­āļ°āđ„āļĢ?

āļ„āļģāļ•āļ­āļš

āļŠāļ–āļēāļ›āļąāļ•āļĒāļāļĢāļĢāļĄāđāļšāļšāļ„āļ­āļĄāđ‚āļžāđ€āļ™āļ™āļ•āđŒāļ„āļ·āļ­āļāļēāļĢāļˆāļąāļ”āđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡āđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™āđƒāļŦāđ‰āđ€āļ›āđ‡āļ™āļ­āļ‡āļ„āđŒāļ›āļĢāļ°āļāļ­āļšāļ—āļĩāđˆāļ™āļģāļāļĨāļąāļšāļĄāļēāđƒāļŠāđ‰āđƒāļŦāļĄāđˆāđ„āļ”āđ‰āđāļĨāļ°āđ€āļ›āđ‡āļ™āļ­āļīāļŠāļĢāļ° āđ‚āļ”āļĒāđāļ•āđˆāļĨāļ°āļ­āļ‡āļ„āđŒāļ›āļĢāļ°āļāļ­āļšāļĄāļĩāļ„āļ§āļēāļĄāļĢāļąāļšāļœāļīāļ”āļŠāļ­āļšāđ€āļžāļĩāļĒāļ‡āļ­āļĒāđˆāļēāļ‡āđ€āļ”āļĩāļĒāļ§ āđāļ™āļ§āļ—āļēāļ‡āļ™āļĩāđ‰āļŠāđˆāļ‡āđ€āļŠāļĢāļīāļĄāļāļēāļĢāļ™āļģāđ‚āļ„āđ‰āļ”āļāļĨāļąāļšāļĄāļēāđƒāļŠāđ‰āđƒāļŦāļĄāđˆ āļ—āļģāđƒāļŦāđ‰ unit testing āļ‡āđˆāļēāļĒāļ‚āļķāđ‰āļ™ āđāļĨāļ°āđ€āļžāļīāđˆāļĄāļ„āļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļ–āđƒāļ™āļāļēāļĢāļšāļģāļĢāļļāļ‡āļĢāļąāļāļĐāļē āđāļ•āđˆāļĨāļ°āļ„āļ­āļĄāđ‚āļžāđ€āļ™āļ™āļ•āđŒāļˆāļ°āļŦāđˆāļ­āļŦāļļāđ‰āļĄ state āļ•āļĢāļĢāļāļ° āđāļĨāļ°āļāļēāļĢāđāļŠāļ”āļ‡āļœāļĨāļ‚āļ­āļ‡āļ•āļ™āđ€āļ­āļ‡ āļ—āļģāđƒāļŦāđ‰āļŠāļēāļĄāļēāļĢāļ–āļŠāļĢāđ‰āļēāļ‡āļ­āļīāļ™āđ€āļ—āļ­āļĢāđŒāđ€āļŸāļ‹āļ—āļĩāđˆāļ‹āļąāļšāļ‹āđ‰āļ­āļ™āļˆāļēāļāļšāļĨāđ‡āļ­āļāļ—āļĩāđˆāđ€āļĢāļĩāļĒāļšāļ‡āđˆāļēāļĒāđāļĨāļ°āļ›āļĢāļ°āļāļ­āļšāļāļąāļ™āđ„āļ”āđ‰

2

āđƒāļ™āļĢāļđāļ›āđāļšāļš Atomic Design āļŦāđ‰āļēāļĢāļ°āļ”āļąāļšāļ‚āļ­āļ‡āļ„āļ­āļĄāđ‚āļžāđ€āļ™āļ™āļ•āđŒāļˆāļēāļāđ€āļĨāđ‡āļāļ—āļĩāđˆāļŠāļļāļ”āđ„āļ›āđƒāļŦāļāđˆāļ—āļĩāđˆāļŠāļļāļ”āļ„āļ·āļ­āļ­āļ°āđ„āļĢ?

āļ„āļģāļ•āļ­āļš

Atomic Design āļ—āļĩāđˆāļŠāļĢāđ‰āļēāļ‡āđ‚āļ”āļĒ Brad Frost āļˆāļąāļ”āļĢāļ°āđ€āļšāļĩāļĒāļšāļ„āļ­āļĄāđ‚āļžāđ€āļ™āļ™āļ•āđŒāđ€āļ›āđ‡āļ™āļŦāđ‰āļēāļĢāļ°āļ”āļąāļš: Atoms (āļ­āļ‡āļ„āđŒāļ›āļĢāļ°āļāļ­āļšāļžāļ·āđ‰āļ™āļāļēāļ™āđ€āļŠāđˆāļ™ Button, Text), Molecules (āļāļĨāļļāđˆāļĄāļ‚āļ­āļ‡ atoms āđ€āļŠāđˆāļ™ SearchInput), Organisms (āļŠāđˆāļ§āļ™āļ—āļĩāđˆāļŠāļĄāļšāļđāļĢāļ“āđŒāđ€āļŠāđˆāļ™ Header), Templates (āđ€āļĨāļĒāđŒāđ€āļ­āļēāļ•āđŒāļ‚āļ­āļ‡āļŦāļ™āđ‰āļē) āđāļĨāļ° Pages (āļ­āļīāļ™āļŠāđāļ•āļ™āļ‹āđŒāļ‚āļ­āļ‡ templates āļžāļĢāđ‰āļ­āļĄāļ‚āđ‰āļ­āļĄāļđāļĨāļˆāļĢāļīāļ‡) āļ§āļīāļ˜āļĩāļāļēāļĢāļ™āļĩāđ‰āļŠāđˆāļ§āļĒāđƒāļŦāđ‰āļŠāļĢāđ‰āļēāļ‡ design system āļ—āļĩāđˆāļŠāļ­āļ”āļ„āļĨāđ‰āļ­āļ‡āđāļĨāļ°āļ‚āļĒāļēāļĒāļ‚āļ™āļēāļ”āđ„āļ”āđ‰āļ‡āđˆāļēāļĒāļ‚āļķāđ‰āļ™

3

āļ‚āđ‰āļ­āđ„āļ”āđ‰āđ€āļ›āļĢāļĩāļĒāļšāļŦāļĨāļąāļāļ‚āļ­āļ‡āđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡āđ‚āļ›āļĢāđ€āļˆāļāļ•āđŒāđāļšāļš feature-based āđ€āļĄāļ·āđˆāļ­āđ€āļ—āļĩāļĒāļšāļāļąāļšāđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡āđāļšāļšāļ­āļīāļ‡āļ•āļēāļĄāļ›āļĢāļ°āđ€āļ āļ—āđ„āļŸāļĨāđŒāļ„āļ·āļ­āļ­āļ°āđ„āļĢ?

āļ„āļģāļ•āļ­āļš

āđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡āđāļšāļš feature-based āļˆāļąāļ”āļāļĨāļļāđˆāļĄāđ„āļŸāļĨāđŒāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ—āļĩāđˆāđ€āļāļĩāđˆāļĒāļ§āļ‚āđ‰āļ­āļ‡āļāļąāļšāļŸāļąāļ‡āļāđŒāļŠāļąāļ™āļŦāļ™āļķāđˆāļ‡āđ„āļ§āđ‰āđƒāļ™āđ‚āļŸāļĨāđ€āļ”āļ­āļĢāđŒāđ€āļ”āļĩāļĒāļ§āļāļąāļ™ (āļ„āļ­āļĄāđ‚āļžāđ€āļ™āļ™āļ•āđŒ hooks services āđ€āļ—āļŠāļ•āđŒ) āļ‹āļķāđˆāļ‡āļŠāđˆāļ§āļĒāđ€āļžāļīāđˆāļĄāļ„āļ§āļēāļĄāđ€āļŠāļ·āđˆāļ­āļĄāđ‚āļĒāļ‡āļ‚āļ­āļ‡āđ‚āļ„āđ‰āļ”āđāļĨāļ°āļ—āļģāđƒāļŦāđ‰āļāļēāļĢāļ™āļģāļ—āļēāļ‡āļ‡āđˆāļēāļĒāļ‚āļķāđ‰āļ™āđ€āļžāļĢāļēāļ°āļ—āļļāļāļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆāđ€āļāļĩāđˆāļĒāļ§āļāļąāļš feature āļ­āļĒāļđāđˆāđƒāļ™āļ—āļĩāđˆāđ€āļ”āļĩāļĒāļ§ āļ•āđˆāļēāļ‡āļˆāļēāļāđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡āđāļšāļšāļ­āļīāļ‡āļ•āļēāļĄāļ›āļĢāļ°āđ€āļ āļ—āļ—āļĩāđˆāđ„āļŸāļĨāđŒāļāļĢāļ°āļˆāļąāļ”āļāļĢāļ°āļˆāļēāļĒ āđāļ™āļ§āļ—āļēāļ‡āļ™āļĩāđ‰āļĨāļ”āļāļēāļĢāļŠāļĨāļąāļšāļšāļĢāļīāļšāļ—āđāļĨāļ°āļ—āļģāđƒāļŦāđ‰āļāļēāļĢāļĨāļšāļŦāļĢāļ·āļ­āđāļāđ‰āđ„āļ‚ feature āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ‡āđˆāļēāļĒāļ‚āļķāđ‰āļ™

4

āļŦāļĨāļąāļāļāļēāļĢ SOLID 'S' (Single Responsibility Principle) āļ—āļĩāđˆāđƒāļŠāđ‰āļāļąāļšāļ„āļ­āļĄāđ‚āļžāđ€āļ™āļ™āļ•āđŒ React Native āļŦāļĄāļēāļĒāļ–āļķāļ‡āļ­āļ°āđ„āļĢ?

5

āđƒāļ™ Clean Architecture āđ€āļĨāđ€āļĒāļ­āļĢāđŒāđƒāļ”āļ—āļĩāđˆāļĄāļĩāļāļŽāļ—āļēāļ‡āļ˜āļļāļĢāļāļīāļˆāļ‚āļ­āļ‡āđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™?

+19 āļ„āļģāļ–āļēāļĄāļŠāļąāļĄāļ āļēāļĐāļ“āđŒ

āļŦāļąāļ§āļ‚āđ‰āļ­āļŠāļąāļĄāļ āļēāļĐāļ“āđŒ React Native āļ­āļ·āđˆāļ™āđ†

āļžāļ·āđ‰āļ™āļāļēāļ™ JavaScript

Junior
25 āļ„āļģāļ–āļēāļĄ

āļžāļ·āđ‰āļ™āļāļēāļ™ React

Junior
20 āļ„āļģāļ–āļēāļĄ

āļžāļ·āđ‰āļ™āļāļēāļ™ React Native

Junior
22 āļ„āļģāļ–āļēāļĄ

React Hooks

Junior
20 āļ„āļģāļ–āļēāļĄ

TypeScript āļŠāļģāļŦāļĢāļąāļš React āđāļĨāļ° React Native

Junior
22 āļ„āļģāļ–āļēāļĄ

āļ„āļ­āļĄāđ‚āļžāđ€āļ™āļ™āļ•āđŒāđāļĨāļ° API āļ‚āļ­āļ‡ React Native

Junior
20 āļ„āļģāļ–āļēāļĄ

āļāļēāļĢāļˆāļąāļ”āļŠāđ„āļ•āļĨāđŒāđāļĨāļ°āđ€āļĨāļĒāđŒāđ€āļ­āļēāļ•āđŒāđƒāļ™ React Native

Junior
18 āļ„āļģāļ–āļēāļĄ

āļāļēāļĢāļ™āļģāļ—āļēāļ‡āđƒāļ™ React Native

Mid-Level
22 āļ„āļģāļ–āļēāļĄ

āļāļēāļĢāļˆāļąāļ”āļāļēāļĢ State āđƒāļ™ React Native

Mid-Level
24 āļ„āļģāļ–āļēāļĄ

Networking āđāļĨāļ° API āđƒāļ™ React Native

Mid-Level
20 āļ„āļģāļ–āļēāļĄ

āļāļēāļĢāļ„āļ‡āļ­āļĒāļđāđˆāļ‚āļ­āļ‡āļ‚āđ‰āļ­āļĄāļđāļĨ

Mid-Level
20 āļ„āļģāļ–āļēāļĄ

āļŸāļ­āļĢāđŒāļĄāđāļĨāļ°āļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāļ„āļ§āļēāļĄāļ–āļđāļāļ•āđ‰āļ­āļ‡

Mid-Level
18 āļ„āļģāļ–āļēāļĄ

āđāļ­āļ™āļīāđ€āļĄāļŠāļąāļ™ React Native

Mid-Level
22 āļ„āļģāļ–āļēāļĄ

Native Modules & Bridge

Mid-Level
20 āļ„āļģāļ–āļēāļĄ

āđ‚āļ„āđ‰āļ”āđ€āļ‰āļžāļēāļ°āđāļžāļĨāļ•āļŸāļ­āļĢāđŒāļĄ

Mid-Level
18 āļ„āļģāļ–āļēāļĄ

āļŠāļīāļ—āļ˜āļīāđŒāđāļĨāļ° Device API

Mid-Level
20 āļ„āļģāļ–āļēāļĄ

Push Notifications

Mid-Level
18 āļ„āļģāļ–āļēāļĄ

āļāļēāļĢāļ—āļ”āļŠāļ­āļš React Native

Mid-Level
20 āļ„āļģāļ–āļēāļĄ

āļāļēāļĢ Debug React Native

Mid-Level
18 āļ„āļģāļ–āļēāļĄ

Build & Deployment

Mid-Level
20 āļ„āļģāļ–āļēāļĄ

Expo vs React Native Bare

Mid-Level
18 āļ„āļģāļ–āļēāļĄ

āļāļēāļĢāđ€āļžāļīāđˆāļĄāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļž

Senior
24 āļ„āļģāļ–āļēāļĄ

āļāļēāļĢāļˆāļąāļ”āļāļēāļĢāļŦāļ™āđˆāļ§āļĒāļ„āļ§āļēāļĄāļˆāļģ

Senior
20 āļ„āļģāļ–āļēāļĄ

React Native New Architecture

Senior
24 āļ„āļģāļ–āļēāļĄ

āđāļ™āļ§āļ—āļēāļ‡āļ›āļāļīāļšāļąāļ•āļīāļ—āļĩāđˆāļ”āļĩāļ—āļĩāđˆāļŠāļļāļ”āļ”āđ‰āļēāļ™āļ„āļ§āļēāļĄāļ›āļĨāļ­āļ”āļ āļąāļĒ

Senior
20 āļ„āļģāļ–āļēāļĄ

Offline-First Architecture

Senior
20 āļ„āļģāļ–āļēāļĄ

CI/CD React Native

Senior
20 āļ„āļģāļ–āļēāļĄ

Monorepo āđāļĨāļ°āļāļēāļĢāđāļŠāļĢāđŒāđ‚āļ„āđ‰āļ”

Senior
18 āļ„āļģāļ–āļēāļĄ

āļŦāļąāļ§āļ‚āđ‰āļ­āļ‚āļąāđ‰āļ™āļŠāļđāļ‡

Senior
22 āļ„āļģāļ–āļēāļĄ

āļ§āļ‡āļˆāļĢāļŠāļĩāļ§āļīāļ•āđāļ­āļ›āđāļĨāļ°āļāļēāļĢāļ—āļģāļ‡āļēāļ™āđ€āļšāļ·āđ‰āļ­āļ‡āļŦāļĨāļąāļ‡

Mid-Level
20 āļ„āļģāļ–āļēāļĄ

āļāļēāļĢāļĒāļ·āļ™āļĒāļąāļ™āļ•āļąāļ§āļ•āļ™āđāļĨāļ°āļāļēāļĢāļˆāļąāļ”āļāļēāļĢāđ€āļ‹āļŠāļŠāļąāļ™

Mid-Level
22 āļ„āļģāļ–āļēāļĄ

Monitoring & Crash Reporting

Senior
20 āļ„āļģāļ–āļēāļĄ

āđ€āļŠāļĩāđˆāļĒāļ§āļŠāļēāļ React Native āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļŠāļąāļĄāļ āļēāļĐāļ“āđŒāļ„āļĢāļąāđ‰āļ‡āļ–āļąāļ”āđ„āļ›

āđ€āļ‚āđ‰āļēāļ–āļķāļ‡āļ„āļģāļ–āļēāļĄāļ—āļąāđ‰āļ‡āļŦāļĄāļ” flashcards āđāļšāļšāļ—āļ”āļŠāļ­āļšāđ€āļ—āļ„āļ™āļīāļ„ āđāļšāļšāļāļķāļāļŦāļąāļ” code review āđāļĨāļ°āļ•āļąāļ§āļˆāļģāļĨāļ­āļ‡āļŠāļąāļĄāļ āļēāļĐāļ“āđŒ

āđ€āļĢāļīāđˆāļĄāđƒāļŠāđ‰āļŸāļĢāļĩ