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 และตัวจำลองสัมภาษณ์

เริ่มใช้ฟรี