اپلیکیشن اندرویدی فلشکارت آموزشی Efficient Data Access with Entity Framework Core
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره Efficient Data Access with Entity Framework Core
موضوع کلی: برنامه نویسی
موضوع میانی: ایاسپی دات نت کور (ASP.NET Core)
📋 سرفصلهای دوره
- 1. مقدمهای بر ORM و Entity Framework Core
- 2. چرا EF Core را برای ASP.NET Core انتخاب کنیم؟
- 3. مقایسه EF Core، Dapper و ADO.NET
- 4. راهاندازی محیط توسعه (NET SDK, IDE, SQL Server.)
- 5. ایجاد اولین پروژه ASP.NET Core
- 6. نصب پکیجهای NuGet مربوط به EF Core
- 7. آشنایی با اجزای اصلی: DbContext, DbSet, Entities
- 8. رویکردهای Database-First, Code-First و Model-First
- 9. تمرکز بر رویکرد Code-First
- 10. اتصال به پایگاه داده: Connection String
- 11. تعریف اولین کلاس Entity
- 12. کلیدهای اصلی: قراردادها در مقابل پیکربندی دستی
- 13. پیکربندی خواص با استفاده از Data Annotations
- 14. مقدمهای بر Fluent API
- 15. پیکربندی خواص با Fluent API (نوع، طول، الزامی بودن)
- 16. تبدیل مقادیر (Value Conversions)
- 17. پیکربندی روابط یک-به-یک
- 18. پیکربندی روابط یک-به-چند
- 19. پیکربندی روابط چند-به-چند
- 20. نقشهبندی وراثت: Table-per-Hierarchy (TPH)
- 21. نقشهبندی وراثت: Table-per-Type (TPT)
- 22. نقشهبندی وراثت: Table-per-Concrete-Type (TPC)
- 23. انواع پیچیده و Owned Entity Types
- 24. ایندکسها: ایجاد و پیکربندی
- 25. کلیدهای جایگزین و قیود منحصر به فرد (Unique Constraints)
- 26. معرفی DbContext: قلب تپنده EF Core
- 27. پیکربندی DbContext با متد `OnConfiguring`
- 28. پیکربندی مدل با متد `OnModelCreating`
- 29. مقدمهای بر Migrations
- 30. ایجاد اولین Migration
- 31. اعمال و بازگردانی Migrations
- 32. تولید اسکریپت SQL از Migrations
- 33. کاشت داده (Seeding Data) با `OnModelCreating`
- 34. کاشت داده پیشرفته با MigrationBuilder
- 35. کار با ارائهدهندگان پایگاه داده مختلف (SQL Server, PostgreSQL, SQLite)
- 36. مبانی LINQ to Entities
- 37. بازیابی تمام دادهها از یک جدول
- 38. بازیابی یک موجودیت واحد (`Find`, `Single`, `First`)
- 39. فیلتر کردن دادهها با دستور `Where`
- 40. مرتبسازی دادهها با `OrderBy` و `ThenBy`
- 41. صفحهبندی دادهها با `Skip` و `Take`
- 42. انتخاب و نمایش دادههای خاص با `Select` (Projection)
- 43. مقدمهای بر بارگذاری دادههای مرتبط
- 44. بارگذاری حریصانه (Eager Loading) با `Include` و `ThenInclude`
- 45. بارگذاری صریح (Explicit Loading) با `Load`
- 46. آشنایی با بارگذاری تنبل (Lazy Loading) و معایب آن
- 47. پیکربندی و استفاده از Lazy Loading Proxies
- 48. مشکل کوئری N+1 و راههای حل آن
- 49. تفاوت ارزیابی سمت کلاینت و سمت سرور (Client vs. Server Evaluation)
- 50. استفاده از توابع تجمعی (`Count`, `Sum`, `Average`, `Max`, `Min`)
- 51. گروهبندی دادهها با `GroupBy`
- 52. اتصال جداول با `Join` و `GroupJoin`
- 53. استفاده از `AsNoTracking` برای سناریوهای فقط-خواندنی
- 54. مقایسه `AsSplitQuery` و `AsSingleQuery`
- 55. اجرای کوئریهای SQL خام با `FromSqlRaw`
- 56. نحوه عملکرد ردیابی تغییرات (Change Tracking)
- 57. افزودن موجودیتهای جدید (`Add`, `AddRange`)
- 58. ویرایش موجودیتها: سناریوهای متصل و منفصل (Connected vs. Disconnected)
- 59. عملکرد متد `Update`
- 60. ویرایش خواص خاص بدون نیاز به بازیابی موجودیت
- 61. حذف موجودیتها (`Remove`, `RemoveRange`)
- 62. آشنایی با وضعیتهای موجودیت (Entity States)
- 63. متدهای `SaveChanges` و `SaveChangesAsync`
- 64. اتصال و جداسازی موجودیتها (Attaching and Detaching)
- 65. مدیریت رفتار حذف آبشاری (Cascade Delete)
- 66. اجرای دستورات SQL خام غیر-کوئری (`ExecuteSqlRaw`)
- 67. فراخوانی Stored Procedures
- 68. نقشهبندی نتایج Stored Procedure به Entities
- 69. مقدمهای بر تراکنشها (Transactions)
- 70. استفاده از `DbContext.Database.BeginTransaction`
- 71. استفاده از `TransactionScope`
- 72. استفاده از Savepoints در تراکنشها
- 73. مروری بر کنترل همزمانی (Concurrency Control)
- 74. همزمانی خوشبینانه (Optimistic Concurrency) با Concurrency Tokens
- 75. مدیریت تداخلهای همزمانی (`DbUpdateConcurrencyException`)
- 76. بهینهسازی عملکرد: تحلیل SQL تولید شده
- 77. استفاده از لاگگیری برای مشاهده SQL تولید شده
- 78. کش کردن کوئری (Query Caching) در EF Core
- 79. استفاده از کوئریهای کامپایل شده (Compiled Queries) برای حداکثر کارایی
- 80. عملیات دستهای (Batch Operations) فراتر از `SaveChanges`
- 81. استفاده از افزونههای Bulk برای درج و ویرایش با کارایی بالا
- 82. جداسازی جدول و جداسازی موجودیت (Table & Entity Splitting)
- 83. جداول زمانی (Temporal Tables) برای دادههای تاریخی
- 84. استفاده از فیلترهای کوئری سراسری (Global Query Filters)
- 85. آشنایی و استفاده از خواص سایه (Shadow Properties)
- 86. ثبت DbContext با Dependency Injection
- 87. مدیریت چرخه حیات (Lifetime) و محدوده (Scope) در DbContext
- 88. پیادهسازی الگوی Repository
- 89. پیادهسازی الگوی Generic Repository
- 90. پیادهسازی الگوی Unit of Work
- 91. استفاده از `DbContextFactory` برای سناریوهای خاص
- 92. مدیریت دادهها در کنترلرهای ASP.NET Core MVC
- 93. مدیریت دادهها در ASP.NET Core Web API
- 94. استفاده از DTOs و AutoMapper
- 95. برنامهنویسی ناهمزمان با EF Core در وب
- 96. پایگاه داده درون حافظهای (In-Memory Database) برای تست
- 97. نوشتن Unit Test برای منطق EF Core
- 98. نوشتن Integration Test با یک پایگاه داده واقعی
- 99. فیلدهای پشتیبان (Backing Fields): زمان و نحوه استفاده
- 100. خلاصه دوره و بهترین شیوهها برای دسترسی کارآمد به دادهها
این اپلیکیشن فارسی برای یادگیری و مرور محتوای آموزشی از طریق فلشکارت طراحی شده است. کارتها را یکییکی مرور کنید، پاسخ پرسشها را به یاد بیاورید و نتیجه هر پاسخ را ثبت کنید. محتوای دوره پس از نصب درون برنامه در دسترس است تا برای مطالعه روزمره معمولاً به اتصال مداوم اینترنت نیاز نداشته باشید.
محتوای آموزشی در قالبهای متنوع ارائه میشود تا هم برای یادگیری مفاهیم جدید و هم برای تثبیت آموختهها قابل استفاده باشد.
- رابط کاربری فارسی و راستچین با فونت وزیر.
- تم روشن و تیره مطابق تنظیمات سیستم.
- صفحهبندی ساده برای انتخاب دوره و شروع مرور.
- نمایش تعداد دفعات مرور هر فصل.
- انتخاب چند فصل برای مرور همزمان.
- امکان تمرکز بر فصلهایی که هنوز مرور نشدهاند.
این اپلیکیشن برای دانشآموزان، دانشجویان، داوطلبان آزمونها و علاقهمندان به یادگیری طراحی شده است؛ بهویژه کسانی که میخواهند مطالب آموزشی را در زمانهای کوتاه مرور کنند، دانستههای خود را بسنجند و مطالعه منظمتری داشته باشند.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.