کتاب صوتی ORM: استفاده از ORM در سیستم‌های توزیع شده

ORM: فتح قله برنامه نویسی توزیع شده! (دوره جامع) ORM: دروازه‌ای به دنیای سیستم‌های توزیع شده – پایگاه داده‌ها را رام کنید! آیا به دنبال ارتقای مهارت‌های برنامه‌نویسی خود و ورود به دنیای جذاب سیستم‌های...

انتخاب پلن

انتخاب پلن برای ادامه خرید الزامی است.

پرداخت اقساطی
در صورت خرید اقساطی هر قسط: 124,963 تومان
۴ قسط ماهانه. بدون سود، چک و ضامن.
پرداخت اقساطی با دیجی‌پی پرداخت اقساطی با ترب‌پی

🎓 دوره آموزشی جامع

📚 اطلاعات دوره

عنوان دوره: دوره ORM: استفاده از ORM در سیستم‌های توزیع شده

موضوع کلی: برنامه نویسی

موضوع میانی: ORM (Object-Relational Mapping)

📋 سرفصل‌های دوره

  • 1. مقدمه‌ای بر پایستگی داده (Data Persistence)
  • 2. مقایسه پایگاه‌داده‌های رابطه‌ای و NoSQL
  • 3. مشکل عدم تطابق امپدانس شیء-رابطه‌ای (Object-Relational Impedance Mismatch)
  • 4. معرفی ORM: چیستی و چرایی استفاده
  • 5. مفاهیم اصلی ORM: موجودیت (Entity)، مخزن (Repository) و واحد کار (Unit of Work)
  • 6. مروری بر فریمورک‌های محبوب ORM (EF Core, Hibernate, SQLAlchemy)
  • 7. آماده‌سازی محیط توسعه: پایگاه‌داده، IDE و کتابخانه ORM
  • 8. ایجاد اولین موجودیت و نگاشت آن به جدول پایگاه‌داده
  • 9. عملیات پایه CRUD: ایجاد، خواندن، به‌روزرسانی، حذف
  • 10. آشنایی با اتصالات پایگاه‌داده و Connection Pooling
  • 11. کلیدهای اصلی، کلیدهای خارجی و محدودیت‌ها (Constraints)
  • 12. نگاشت انواع داده بین اپلیکیشن و پایگاه‌داده
  • 13. رویکردهای تولید اسکما: Code-First, Database-First, Model-First
  • 14. مدیریت تغییرات اسکما با Migrationها
  • 15. مقدمه‌ای بر زبان‌های کوئری مخصوص ORM (LINQ, HQL, JPQL)
  • 16. مدل‌سازی روابط: یک-به-یک (One-to-One)
  • 17. مدل‌سازی روابط: یک-به-چند (One-to-Many)
  • 18. مدل‌سازی روابط: چند-به-چند (Many-to-Many)
  • 19. بارگذاری تنبل (Lazy Loading) در مقابل بارگذاری حریصانه (Eager Loading)
  • 20. حل مشکل کوئری N+1
  • 21. بارگذاری صریح (Explicit Loading) و پروجکشن‌ها (Projections)
  • 22. کوئری‌های پیچیده: فیلتر کردن، مرتب‌سازی و صفحه‌بندی
  • 23. گروه‌بندی (Grouping) و تجميع (Aggregation)
  • 24. انواع Joinها: Inner, Left, Right, Full Outer
  • 25. استفاده از زیرکوئری‌ها (Subqueries)
  • 26. کار با Viewهای پایگاه‌داده از طریق ORM
  • 27. فراخوانی رویه‌های ذخیره‌شده (Stored Procedures) و توابع سفارشی
  • 28. استراتژی‌های نگاشت وراثت: جدول به ازای هر سلسله‌مراتب (TPH)
  • 29. استراتژی‌های نگاشت وراثت: جدول به ازای هر نوع (TPT)
  • 30. استراتژی‌های نگاشت وراثت: جدول به ازای هر کلاس مشخص (TPC)
  • 31. کار با کلیدهای ترکیبی (Composite Keys)
  • 32. اشیاء مقدار (Value Objects) و انواع موجودیت‌های تحت تملک (Owned Entity Types)
  • 33. مدیریت همزمانی: قفل‌گذاری خوش‌بینانه (Optimistic Locking) با Versioning
  • 34. مدیریت همزمانی: قفل‌گذاری بدبینانه (Pessimistic Locking)
  • 35. تراکنش‌ها (Transactions) و خواص ACID
  • 36. درک عمیق الگوی واحد کار (Unit of Work)
  • 37. مدیریت تراکنش‌ها و محدوده‌های تراکنش (Transaction Scopes)
  • 38. پردازش دسته‌ای: درج، به‌روزرسانی و حذف گروهی (Bulk Operations)
  • 39. پروفایل کردن عملکرد: شناسایی گلوگاه‌ها
  • 40. تحلیل کوئری‌های SQL تولید شده توسط ORM
  • 41. استراتژی‌های ایندکس‌گذاری برای بهبود عملکرد
  • 42. انواع ایندکس‌های پایگاه‌داده (B-Tree, Hash, Full-text)
  • 43. آشنایی با طرح اجرای کوئری (Query Execution Plan)
  • 44. مبانی کشینگ (Caching): چرا و چه زمانی کش کنیم؟
  • 45. کش سطح اول (First-Level Cache): کش Session/Context
  • 46. کش سطح دوم (Second-Level Cache): کش اشتراکی
  • 47. کش کوئری (Query Cache)
  • 48. استراتژی‌های ابطال کش (Cache Invalidation)
  • 49. کش توزیع‌شده (Distributed Caching) با Redis یا Memcached
  • 50. یکپارچه‌سازی کش توزیع‌شده با ORM
  • 51. استفاده از کوئری‌های فقط-خواندنی (Read-Only Queries) برای بهینه‌سازی
  • 52. اجرای کوئری‌های SQL خام در مواقع ضروری
  • 53. عملیات ناهمگام (Asynchronous Operations) در ORM
  • 54. انعطاف‌پذیری اتصال (Connection Resiliency) و سیاست‌های تلاش مجدد (Retry Policies)
  • 55. تکنیک‌های پیشرفته بهینه‌سازی کوئری
  • 56. سیستم‌های توزیع‌شده چیست؟
  • 57. ویژگی‌های سیستم‌های توزیع‌شده: مقیاس‌پذیری، پایایی، دسترس‌پذیری
  • 58. قضیه CAP: سازگاری، دسترس‌پذیری و تحمل‌پذیری تقسیم (Partition Tolerance)
  • 59. مروری بر معماری میکروسرویس
  • 60. الگوی پایگاه‌داده به ازای هر سرویس (Database-per-Service)
  • 61. چالش‌های مدیریت داده در میکروسرویس‌ها
  • 62. تراکنش‌های توزیع‌شده: مشکل پروتکل تعهد دو مرحله‌ای (2PC)
  • 63. الگوی Saga برای مدیریت تراکنش‌های توزیع‌شده
  • 64. ساگا مبتنی بر هماهنگی (Choreography-based Saga)
  • 65. ساگا مبتنی بر ارکستراسیون (Orchestration-based Saga)
  • 66. مفهوم سازگاری نهایی (Eventual Consistency)
  • 67. مبانی طراحی دامنه-محور (Domain-Driven Design - DDD)
  • 68. مفاهیم Aggregate و Bounded Context در DDD
  • 69. الگوی منبع‌یابی رویداد (Event Sourcing)
  • 70. الگوی جداسازی مسئولیت دستور و پرس‌وجو (CQRS)
  • 71. استراتژی‌های ORM برای الگوی Database-per-Service
  • 72. مدیریت Migrationهای اسکما در محیط میکروسرویس
  • 73. چالش‌های سازگاری داده بین سرویس‌های مختلف
  • 74. پیاده‌سازی الگوی Outbox با ORM برای پیام‌رسانی قابل اطمینان
  • 75. استفاده از ORM در پیاده‌سازی Saga برای ردیابی وضعیت
  • 76. پیاده‌سازی بخش دستور (Write Model) در CQRS با ORM
  • 77. پیاده‌سازی بخش پرس‌وجو (Read Model) و پروجکشن‌ها در CQRS
  • 78. استفاده از نسخه‌های المثنی فقط-خواندنی (Read Replicas) برای مقیاس‌پذیری
  • 79. پیکربندی ORM برای تفکیک خواندن و نوشتن (Read/Write Splitting)
  • 80. مدیریت شاردینگ داده (Data Sharding) با ORM
  • 81. چندمستأجری (Multi-Tenancy): رویکرد پایگاه‌داده به ازای هر مستأجر
  • 82. چندمستأجری (Multi-Tenancy): رویکرد اسکما به ازای هر مستأجر
  • 83. چندمستأجری (Multi-Tenancy): پایگاه‌داده مشترک با ستون شناسه مستأجر
  • 84. پیاده‌سازی عملی چندمستأجری با فریمورک‌های ORM
  • 85. کوئری‌های بین سرویسی: الگوی ترکیب API (API Composition)
  • 86. کوئری‌های بین سرویسی: الگوی درگاه API (API Gateway)
  • 87. استراتژی‌های همگام‌سازی داده بین میکروسرویس‌ها
  • 88. ضبط تغییرات داده (Change Data Capture - CDC) و یکپارچه‌سازی آن
  • 89. مکانیزم‌های قفل‌گذاری توزیع‌شده (Distributed Locking)
  • 90. هماهنگ‌کننده‌های تراکنش سراسری (Global Transaction Coordinators)
  • 91. امنیت: تزریق SQL و نقش ORM در پیشگیری از آن
  • 92. مدیریت اطلاعات محرمانه و رشته‌های اتصال پایگاه‌داده
  • 93. ممیزی و ثبت تغییرات داده با Interceptorها و رویدادهای ORM
  • 94. پیاده‌سازی الگوی حذف منطقی (Soft Delete)
  • 95. استراتژی‌های تست برای لایه دسترسی به داده مبتنی بر ORM
  • 96. استفاده از پایگاه‌داده‌های درون-حافظه‌ای (In-Memory) برای تست
  • 97. تست یکپارچه‌سازی (Integration Testing) با پایگاه‌داده واقعی
  • 98. بهترین شیوه‌ها در طراحی موجودیت‌ها (Entity Design)
  • 99. ضدالگوهای رایج در استفاده از ORM
  • 100. آینده ORM و تکنولوژی‌های دسترسی به داده
EXPRESS24 AUDIO EXPERIENCE
یادگیری را بشنوید؛ زندگی کنید
کتاب‌های صوتی و پادکست‌های آموزشی، راهی دلنشین برای کشف ایده‌های تازه، گسترش دانش و استفاده بهتر از لحظه‌های روزمره هستند.
دانش، الهام و تجربه؛ این بار با صدای زندگی
برای آموختن، همیشه لازم نیست بخوانید
گاهی بهترین فرصت یادگیری زمانی است که در مسیر رفت‌وآمد هستید، قدم می‌زنید، استراحت می‌کنید یا کارهای روزمره‌تان را انجام می‌دهید. محتوای صوتی کمک می‌کند از این لحظه‌ها برای شنیدن، اندیشیدن و آشنایی با موضوعات تازه بهره ببرید.
◷
یادگیری در دل روزمرگی
از زمان رفت‌وآمد، پیاده‌روی یا استراحت برای شنیدن محتوای مفید استفاده کنید؛ بدون آنکه همیشه به کتاب چاپی یا صفحه نمایش نیاز داشته باشید.
◎
تجربه‌ای شنیداری و دلنشین
با روایت صوتی، توضیحات گفتاری و فضای شنیداری هر محتوا همراه شوید و متناسب با سلیقه خود، شیوه تازه‌ای برای دریافت مطالب تجربه کنید.
✦
گسترش دانش و دیدگاه
با موضوعات متنوع آشنا شوید، ایده‌های تازه کشف کنید و فرصت بیشتری برای یادگیری مستمر و پرورش کنجکاوی خود بسازید.
♫
همراه با سبک زندگی شما
محتوای صوتی را متناسب با برنامه روزانه خود انتخاب کنید و در زمان مناسب، شنیدن را به بخشی از عادت‌های شخصی‌تان تبدیل کنید.
کتاب صوتی یا پادکست؟
کتاب صوتی
راهی برای همراه شدن با محتوای یک کتاب از طریق شنیدن. بسته به اثر، می‌توانید داستان‌ها، آموزش‌ها، مفاهیم تخصصی یا مطالب کاربردی را در قالب روایت و بیان صوتی دنبال کنید.
مناسب برای شنیدن و مرور محتوای کتاب‌ها
پادکست آموزشی
فرصتی برای دنبال کردن موضوعات مشخص در قالب گفت‌وگو، روایت، توضیح آموزشی یا مجموعه‌ای از قسمت‌های صوتی؛ مناسب برای کشف ایده‌ها و آشنایی با دیدگاه‌های گوناگون.
مناسب برای یادگیری موضوعی و شنیدن دیدگاه‌های تازه
هر جا که هستید، شنیدن را آغاز کنید
با دستگاه مناسب خود، محتوای صوتی را به آسانی دنبال کنید.
▯
گوشی هوشمند
اندروید و آیفون
▣
تبلت
برای شنیدن و دنبال کردن محتوا
▤
رایانه و لپ‌تاپ
با پخش‌کننده صوتی سازگار
♫
هدفون و بلندگو
برای شنیدن متناسب با محیط
چطور از تجربه شنیدن بیشتر بهره ببریم؟
✦ زمان مناسبی برای شنیدن انتخاب کنید؛ زمانی که بتوانید با آرامش به محتوا توجه داشته باشید.
✦ برای مطالب آموزشی، نکته‌های مهم را یادداشت کنید یا پس از پایان شنیدن، آن‌ها را مرور کنید.
✦ اگر محتوا طولانی است، آن را در چند نوبت دنبال کنید تا فرصت بیشتری برای درک و مرور داشته باشید.
✦ هنگام رانندگی یا انجام کارهای نیازمند تمرکز، ایمنی را در اولویت قرار دهید و از شیوه شنیدنی استفاده کنید که حواس شما را مختل نکند.
هر شنیدن، فرصتی برای کشف است
با کتاب‌های صوتی و پادکست‌های آموزشی، دنیای تازه‌ای از ایده‌ها، روایت‌ها و آموختنی‌ها را به لحظه‌های خود اضافه کنید.
کشف محصولات بیشتر در اکسپرس ۲۴
express24.ir
امکانات پخش، ادامه شنیدن و دسترسی آفلاین به نوع فایل، دستگاه و نرم‌افزار مورد استفاده بستگی دارد.
AUDIO PREVIEW
قبل از انتخاب، گوش کنید!
بخشی از سبک محتوای محصولات صوتی ما را بشنوید و با فضای آن آشنا شوید.
♫
نمونه صوتی از سبک محصولات صوتی ما
پیش‌نمایش کوتاهی از سبک پادکست های صوتی محصولات ما
پخش آنلاین
برای تجربه بهتر، می‌توانید از هدفون استفاده کنید.
تگ‌ها: .NET data modeling Database Database management Distributed Systems Java Node.js object-relational mapping ORM PHP Programming Python scalability software architecture برنامه نویسی پایتون پایگاه داده جاوا دیتابیس سیستم‌های توزیع شده مدل سازی داده معماری نرم افزار مقیاس پذیری

نظرات

هنوز نظری ثبت نشده است.

وارد شوید تا نظر ثبت کنید.