Entity Framework Core (EF Core) جدیدترین نسخه از Entity Framework است که توسط مایکروسافت به عنوان بخشی از فریمورک .NET Core معرفی شده است. این نسخه به گونهای طراحی شده که قابلیت پشتیبانی از چندسکویی را داراست و نسبت به نسخههای قبلی، سبکتر، جامعتر و کاربرپسندتر میباشد. به عبارت دیگر، EF Core جدیدترین ORM ارائهشده توسط مایکروسافت محسوب میشود.
ORM چیست؟
ORM یک لایه واسط بین کلاسهای زبان برنامهنویسی و دادههای ذخیره شده در پایگاه داده است. وظیفه اصلی آن نگاشت دادههای پایگاه داده به کلاسهای برنامهنویسی میباشد. پیش از ظهور ORMها، این نگاشت بهصورت دستی توسط برنامهنویسان انجام میشد؛ کاری که هم زمانبر و هم پرخطر بود، چرا که کوچکترین تغییر در نام ستونها یا سایر تنظیمات میتوانست منجر به خطا شده و برنامه از کار بیافتد. امروزه، بیشتر برنامهنویسان به استفاده از ORM روی آوردهاند.
لازم به ذکر است که استفاده از ORM ممکن است سرباری به همراه داشته باشد. در مواقعی که با حجم بالای داده سروکار داریم، این سربار میتواند قابل توجه باشد و در نتیجه برای افزایش سرعت عملکرد، ممکن است از روشهای دستی یا از مینی ORMهایی مانند Dapper استفاده شود.
ORMها چه کاری انجام میدهند؟
- نگاشت مدلهای دامین به اشیای پایگاه داده
- ایجاد و بهروزرسانی پایگاه داده همزمان با تغییر مدلها
- تولید کدهای T-SQL و اجرای آنها روی پایگاه داده
- مدیریت تراکنشها
مزایای استفاده از ORM:
- سادهتر شدن توسعه و نگهداری کد
- تولید خودکار کدهای T-SQL
- امکان نوشتن کوئریهای پیچیده بهسادگی با استفاده از LINQ
معایب استفاده از ORM:
- مصرف منابع بیشتر نسبت به نوشتن SQL دستی
- تولید کدهای SQL که ممکن است بهینه نباشند
- در مواجهه با حجم بالای داده، احتمال بروز مشکلات عملکردی
EF Core به عنوان جدیدترین ORM ارائهشده توسط مایکروسافت، با ویژگیهای مدرن و بهبودهای عملکردی خود، انتخابی مناسب برای پروژههای وب و سازمانی بهشمار میرود. با وجود مزایای متعدد از جمله سادگی توسعه و نگهداری، نکاتی همچون مصرف بیشتر منابع در برخی شرایط نیز وجود دارد که باید در طراحی سیستمها مد نظر قرار گیرد. آشنایی با مفاهیم اصلی ORM، استفاده از ابزارهای بهینهسازی و بهرهگیری از منابع آموزشی معتبر، کلید موفقیت در استفاده از EF Core است.
در دوره ستارگان ASP.NET Core، شما بهطور جامع با EF Core و Dapper آشنا میشوید و مهارتهای لازم برای بهرهبرداری از این دو تکنولوژی را در پروژههای واقعی کسب خواهید کرد.
برای افزودن دیدگاه خود، نیاز است ابتدا وارد حساب کاربریتان شوید