
عنوان:
Modern Full-Stack React Projects
نویسنده:
Daniel Bugl
انتشارات:
Packt Publishing
تاریخ انتشار:
2024
حجم:
4.5MB
معرفی کتاب:" پروژههای مدرن فولاستک React: ساخت، نگهداری و استقرار اپلیکیشنهای وب مدرن با استفاده از MongoDB، Express و React "
مهارتهای توسعه وب خود را با کار روی پروژههای واقعی در کاربردهای مختلف توسعه وب فولاستک ارتقاء دهید و مسیر حرفهای خود را تقویت کنید.
ویژگیها
- یادگیری معماری و اجزای پشته MERN بهصورت پروژهمحور
- ساخت پروژههای React پایدار، مقیاسپذیر و قابل نگهداری
- یادگیری اتصال بین فرانتاند و بکاند در پروژههای واقعی
- شامل نسخه PDF رایگان همراه با خرید نسخه چاپی یا دیجیتال
درباره کتاب
درک توسعه فولاستک امروزه برای تیمهای توسعه اهمیت بالایی دارد، زیرا مرز بین بکاند و فرانتاند با ابزارهایی مانند MongoDB، Express، React و Node.js کمرنگ شده است.
در این کتاب به قلم نویسندهی کتابهای مطرح *Learn React Hooks* و *Learning Redux*، نحوه راهاندازی، توسعه، تست و استقرار برنامههای واقعی مانند وبلاگ و اپ چت را با تمرینهای عملی یاد میگیرید. همچنین در انتهای مسیر به سراغ Next.js میروید تا با مفاهیم SSR، SEO، Server Actions و React Server Components آشنا شوید.
آنچه خواهید آموخت
- راهاندازی بکاند با Express و MongoDB + تست با Jest
- استقرار با Docker، پیادهسازی CI/CD و تست انتها به انتها با Playwright
- افزودن احراز هویت JWT و مدیریت نشستها
- ساخت GraphQL API و اتصال به Apollo Client
- ساخت اپ چت با Socket.IO و معماری رویدادمحور
- بهینهسازی برای سئو و پیادهسازی SSR با Next.js
- استفاده از React Server Components و Server Actions در پروژههای Next.js
مخاطبان
اگر توسعهدهنده React یا مهندس جاوااسکریپت هستید که میخواهید به سطح حرفهای در توسعه فولاستک برسید، این کتاب مناسب شماست. دانستن مفاهیم پایهی جاوااسکریپت و ریاکت کافی است. تجربهی اندک در ساخت بکاند یا استقرار پروژهها مشکلی ایجاد نمیکند؛ این کتاب شما را آمادهی ساخت سیستمهای حرفهای خواهد کرد.
فهرست مطالب
- Contents
- Foreword
- Preface
- Acknowledgments
- About This Book
- Who Should Read This Book
- How This Book Is Organized: A Roadmap
- liveBook Discussion Forum
- Other Online Resources
- About the Author
- About the Cover Illustration
- Part 1
- Chapter 1. A Walkthrough of System Design Concepts
- A Discussion About Tradeoffs
- Should You Read This Book?
- Overview of This Book
- Prelude: A Brief Discussion of Scaling the Various Services of a System
- Chapter 2. A Typical System Design Interview Flow
- Clarify Requirements and Discuss Tradeoffs
- Draft the API Specification
- Connections and Processing Between Users and Data
- Design the Data Model
- Logging, Monitoring, and Alerting
- Search Bar
- Other Discussions
- Post-Interview Reflection and Assessment
- Interviewing the Company
- Chapter 3. Non-Functional Requirements
- Scalability
- Availability
- Fault-Tolerance
- Performance/Latency and Throughput
- Consistency
- Accuracy
- Complexity and Maintainability
- Cost
- Security
- Privacy
- Cloud Native
- Further Reading
- Chapter 4. Scaling Databases
- Brief Prelude on Storage Services
- When to Use vs. Avoid Databases
- Replication
- Scaling Storage Capacity with Sharded Databases
- Aggregating Events
- Batch and Streaming ETL
- Denormalization
- Caching
- Caching as a Separate Service
- Examples of Different Kinds of Data to Cache and How to Cache Them
- Cache Invalidation
- Cache Warming
- Further Reading
- Chapter 5. Distributed Transactions
- Event Driven Architecture (EDA)
- Event Sourcing
- Change Data Capture (CDC)
- Comparison of Event Sourcing and CDC
- Transaction Supervisor
- Saga
- Other Transaction Types
- Further Reading
- Chapter 6. Common Services for Functional Partitioning
- Common Functionalities of Various Services
- Service Mesh/Sidecar Pattern
- Metadata Service
- Service Discovery
- Functional Partitioning and Various Frameworks
- Library vs. Service
- Common API Paradigms
- Part 2
- Chapter 7. Design Craigslist
- User Stories and Requirements
- API
- SQL Database Schema
- Initial High-Level Architecture
- A Monolith Architecture
- Using an SQL Database and Object Store
- Migrations Are Troublesome
- Writing and Reading Posts
- Functional Partitioning
- Caching
- CDN
- Scaling Reads with a SQL Cluster
- Scaling Write Throughput
- Email Service
- Search
- Removing Old Posts
- Monitoring and Alerting
- Summary of Our Architecture Discussion So Far
- Other Possible Discussion Topics
- Chapter 8. Design a Rate-Limiting Service
- Alternatives to a Rate-Limiting Service and Why They Are Infeasible
- When Not to Do Rate Limiting
- Functional Requirements
- Non-Functional Requirements
- Discuss User Stories and Required Service Components
- High-Level Architecture
- Stateful Approach/Sharding
- Storing All Counts in Every Host
- Rate-Limiting Algorithms
- Logging, Monitoring, and Alerting
- Providing Functionality in a Client Library
- Further Reading
- Employing a Sidecar Pattern
- Chapter 9. Design a Notification/Alerting Service
- Functional Requirements
- Non-Functional Requirements
- Initial High-Level Architecture
- Object Store: Configuring and Sending Notifications
- Notification Templates
- Scheduled Notifications
- Notification Addressee Groups
- Unsubscribe Requests
- Handling Failed Deliveries
- Client-Side Considerations Regarding Duplicate Notifications
- Priority
- Search
- Monitoring and Alerting
- Availability Monitoring and Alerting on the Notification/Alerting Service
- Other Possible Discussion Topics
- Final Notes
- Chapter 10. Design a Database Batch Auditing Service
- Why Is Auditing Necessary?
- Defining a Validation with a Conditional Statement on a SQL Query’s Result
- A Simple SQL Batch Auditing Service
- Requirements
- High-Level Architecture
- Constraints on Database Queries
- Prevent Too Many Simultaneous Queries
- Other Users of Database Schema Metadata
- Auditing a Data Pipeline
- Logging, Monitoring, and Alerting
- Other Possible Types of Audits
- Other Possible Discussion Topics
- References
- Chapter 11. Autocomplete/Typeahead
- Possible Uses of Autocomplete
- Search vs. Autocomplete
- Functional Requirements
- Non-Functional Requirements
- Planning the High-Level Architecture
- Weighted Trie Approach and Initial High-Level Architecture
- Detailed Implementation
- Sampling Approach
- Handling Storage Requirements
- Handling Phrases Instead of Single Words
- Logging, Monitoring, and Alerting
- Other Considerations and Further Discussion
- Chapter 12. Design Flickr
- User Stories and Functional Requirements
- Non-Functional Requirements
- High-Level Architecture
- SQL Schema
- Organizing Directories and Files on the CDN
- Uploading a Photo
- Downloading Images and Data
- Monitoring and Alerting
- Some Other Services
- Other Possible Discussion Topics
- Chapter 13. Design a Content Distribution Network
- Advantages and Disadvantages of a CDN
- Requirements
- CDN Authentication and Authorization
- High-Level Architecture
- Storage Service
- Common Operations
- Logging, Monitoring, and Alerting
- Other Possible Discussions on Downloading Media Files
- Cache Invalidation
- Chapter 14. Design a Text Messaging App
- Requirements
- Initial Thoughts
- Initial High-Level Design
- Connection Service
- Sender Service
- Message Service
- Message-Sending Service
- Search
- Logging, Monitoring, and Alerting
- Other Possible Discussion Topics
- Chapter 15. Design Airbnb
- Requirements
- Design Decisions
- High-Level Architecture
- Functional Partitioning
- Create or Update a Listing
- Approval Service
- Booking Service
- Availability Service
- Logging, Monitoring, and Alerting
- Other Possible Discussion Topics
- Chapter 16. Design a News Feed
- Requirements
- High-Level Architecture
- Prepare Feed in Advance
- Validation and Content Moderation
- Logging, Monitoring, and Alerting
- Other Possible Discussion Topics
- Chapter 17. Design a Dashboard of Top 10 Products on Amazon by Sales Volume
- Requirements
- Initial Thoughts
- Initial High-Level Architecture
- Aggregation Service
- Batch Pipeline
- Streaming Pipeline
- Approximation
- Dashboard with Lambda Architecture
- Kappa Architecture Approach
- Logging, Monitoring, and Alerting
- Other Possible Discussion Topics
- References
- Appendices
- A. Monoliths vs. Microservices
- B. OAuth 2.0 Authorization and OpenID Connect Authentication
- C. C4 Model
- D. Two-Phase Commit (2PC)
- Index
مشخصات
نام کتاب
Modern Full-Stack React Projects
نویسنده
Daniel Bugl
انتشارات
Packt Publishing
تاریخ انتشار
2024
ISBN
9781837637959
چاپ
اول
تعداد صفحات
506
زبان
انگلیسی
فرمت
حجم
4.5MB
موضوع
Computers\Programming