کتاب معماری نرمافزار: The Art of Software Architecture با فرمت AZW3 برای کتابخوان کیندل و فرمت EPUB
معماری نرمافزار: The Art of Software Architecture | دوره جامع آموزشی معماری نرمافزار: The Art of Software Architecture شاهکاری از طراحی، نبوغ و آیندهنگری در دنیای کد آیا تا به حال به ساختمانهای عظ...
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره معماری نرمافزار: The Art of Software Architecture
موضوع کلی: برنامه نویسی
موضوع میانی: معماری نرمافزار
📋 سرفصلهای دوره
- 1. مقدمهای بر هنر معماری نرمافزار
- 2. معماری نرمافزار چیست و چرا اهمیت دارد؟
- 3. نقش و مسئولیتهای یک معمار نرمافزار
- 4. تفاوت بین معماری، طراحی و پیادهسازی
- 5. محرکهای معماری (Architectural Drivers)
- 6. محدودیتهای معماری (Architectural Constraints)
- 7. هنر مصالحه (Trade-off) در معماری
- 8. مفاهیم بنیادین: وابستگی (Coupling) و انسجام (Cohesion)
- 9. قانون کانوی (Conway's Law) و تأثیر آن بر معماری
- 10. ویژگیهای کیفی (Quality Attributes): سنگ بنای معماری
- 11. معرفی اصول طراحی نرمافزار
- 12. اصول SOLID: Single Responsibility Principle
- 13. اصول SOLID: Open/Closed Principle
- 14. اصول SOLID: Liskov Substitution Principle
- 15. اصول SOLID: Interface Segregation Principle
- 16. اصول SOLID: Dependency Inversion Principle
- 17. اصول DRY, KISS, YAGNI
- 18. جداسازی دغدغهها (Separation of Concerns)
- 19. معرفی الگوها و سبکهای معماری
- 20. معماری یکپارچه (Monolithic Architecture)
- 21. معماری لایهای (Layered Architecture)
- 22. معماری کلاینت-سرور (Client-Server Architecture)
- 23. معماری مبتنی بر رویداد (Event-Driven Architecture)
- 24. معماری میکروسرویس: مقدمه و مفاهیم
- 25. تجزیه یک سیستم یکپارچه به میکروسرویسها
- 26. الگوی پایگاه داده به ازای هر سرویس (Database per Service)
- 27. الگوی API Gateway
- 28. الگوی کشف سرویس (Service Discovery)
- 29. ارتباطات بین سرویسها: همگام و ناهمگام
- 30. الگوی Circuit Breaker برای افزایش تابآوری
- 31. معماری سرویسگرا (SOA) و تفاوت آن با میکروسرویسها
- 32. الگوی CQRS (Command Query Responsibility Segregation)
- 33. الگوی Event Sourcing
- 34. الگوی Strangler Fig برای مدرنسازی سیستمها
- 35. معماری افزونهای (Microkernel/Plugin Architecture)
- 36. معماری Pipe and Filter
- 37. معماری مبتنی بر فضا (Space-Based Architecture)
- 38. معرفی Domain-Driven Design (DDD)
- 39. زبان فراگیر (Ubiquitous Language)
- 40. مفاهیم استراتژیک DDD: زمینه محدود (Bounded Context)
- 41. نقشههای زمینه (Context Mapping)
- 42. مفاهیم تاکتیکی DDD: موجودیتها و اشیاء مقدار
- 43. مفاهیم تاکتیکی DDD: تودهها (Aggregates)
- 44. معرفی الگوهای طراحی (Design Patterns)
- 45. الگوهای ایجادی: Factory Method و Abstract Factory
- 46. الگوهای ایجادی: Builder و Singleton
- 47. الگوهای ساختاری: Adapter و Decorator
- 48. الگوهای ساختاری: Facade و Proxy
- 49. الگوهای رفتاری: Strategy و Observer
- 50. الگوهای رفتاری: Command و Template Method
- 51. الگوی تزریق وابستگی (Dependency Injection)
- 52. معماری داده: پایگاههای داده SQL و NoSQL
- 53. قضیه CAP (Consistency, Availability, Partition Tolerance)
- 54. مفهوم Polyglot Persistence
- 55. استراتژیهای کشینگ (Caching Strategies)
- 56. مقیاسپذیری پایگاه داده: Sharding و Replication
- 57. انباره داده (Data Warehouse) و دریاچه داده (Data Lake)
- 58. مفهوم Data Mesh
- 59. سازگاری نهایی (Eventual Consistency) و مدل BASE
- 60. طراحی API: بهترین شیوههای RESTful
- 61. آشنایی با GraphQL
- 62. ارتباطات با کارایی بالا با gRPC
- 63. صفهای پیام (Message Queues)
- 64. پلتفرمهای استریم رویداد (Event Streaming Platforms) مانند Kafka
- 65. یکپارچهسازی سیستمها با الگوهای یکپارچهسازی سازمانی (EIP)
- 66. مفهوم Service Mesh
- 67. امنیت API: OAuth 2.0 و JWT
- 68. مفهوم Idempotency در سیستمهای توزیعشده
- 69. نقش DevOps در معماری نرمافزار
- 70. زیرساخت به عنوان کد (Infrastructure as Code - IaC)
- 71. کانتینرسازی با Docker
- 72. ارکستراسیون کانتینرها با Kubernetes
- 73. معماری ابر-محور (Cloud-Native Architecture)
- 74. ملاحظات معماری در انتخاب ارائهدهنده ابر (AWS, Azure, GCP)
- 75. معماری بدون سرور (Serverless Architecture) و FaaS
- 76. قابلیت مشاهدهپذیری (Observability): لاگ، متریک و تریس
- 77. استراتژیهای استقرار: Blue-Green و Canary Deployment
- 78. مهندسی قابلیت اطمینان سایت (SRE) و معماری
- 79. مدلسازی و مستندسازی معماری
- 80. مدل C4 برای بصریسازی معماری نرمافزار
- 81. ثبت تصمیمات معماری (Architectural Decision Records - ADRs)
- 82. فرآیند بازبینی معماری (Architecture Review)
- 83. مدیریت بدهی فنی (Technical Debt)
- 84. معماری تکاملی (Evolutionary Architecture)
- 85. توابع شایستگی (Fitness Functions) برای هدایت معماری
- 86. رهبری فنی و تأثیرگذاری بدون اختیار
- 87. ارتباط مؤثر با ذینفعان فنی و غیرفنی
- 88. مسیر شغلی: از توسعهدهنده تا معمار نرمافزار
- 89. معماری Micro-frontends
- 90. امنیت در معماری (Security by Design)
- 91. حریم خصوصی در معماری (Privacy by Design)
- 92. مهندسی آشوب (Chaos Engineering)
- 93. اخلاق در معماری نرمافزار
- 94. روندهای نوظهور در معماری: هوش مصنوعی و محاسبات کوانتومی
- 95. تحلیل یک مطالعه موردی: معماری یک پلتفرم موفق
- 96. تحلیل یک مطالعه موردی: درسهایی از یک شکست معماری
- 97. جمعبندی و نگاهی به آینده هنر معماری نرمافزار
- 98. **معماری نرمافزار مبتنی بر رویداد (Event-Driven Architecture) و الگوهای آن**
- 99. **امنیت در معماری نرمافزار: اصول، الگوها و ملاحظات کلیدی**
- 100. **معماری میکروسرویسها (Microservices Architecture): مزایا، چالشها و پیادهسازی**
تگها:
Clean Architecture
design patterns
Microservices
Programming
software architecture
software design
Software Development
Software Engineering
SOLID
System Architecture
الگوهای طراحی
برنامه نویسی
توسعه نرمافزار
طراحی نرمافزار
معماری سیستم
معماری نرمافزار
مهندسی نرمافزار
میکروسرویسها
نرمافزار
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.