سلام دوستان لطفا یکی واضح و شفاف بگه فرق یین Ado.net و Entity Framework و OLE DB و کلا این چیزا چی هست ؟ من که خیلی گیج شدم
تمام مواردی که فرمودید ORM هستند. ORM ها ابزاری برای ارتباط بین نرم افزار شما و دیتابیس هستند. از این ابزار در زبان های مایکروسافت مثل C# و VB.net و Asp استفاده می شود. هر کدام از این ابزار مزایا و معایبی دارند. البته ORM ها بیشتر از این موارد هستند که در ادامه توضیحاتی در مورد هر یک از این ابزار داده می شود.
یکی از ویژگی های منحصر بفردی که باعث رشد و فراگیری نرم افزارها در اکثریت مشاغل بود قابلیت مدیریت داده ها و اطلاعات بود. اما یکی از چالش های مهم برای برنامه نویسان نحوه ایجاد ارتباط بین نرم افزار و بانک های اطلاعاتی بود. در گذشته یک روش منسجم و چارچوب مشخصی برای ارتباط بین نرم افزار و بانک اطلاعاتی وجود نداشت و برنامه نویسان با نوشتن کدهای زیاد و گاهی سخت این ارتباط را برقرار می کردند. در آن زمان برنامه نویسان از ابزارهایی مثل RAW Data یا Direct Api با داده های دیتابیس ارتباط برقرار می کردند.
با توجه به اهمیت کار با اطلاعات در نرم افزارها، پس از مدتی مهندسان مایکروسافت به فکر ایجاد یک بستر و چارچوب مشخص برای ارتباط با دیتابیس افتادند. از این رو ابزاری به نام ODBC ایجاد شد. این ORM توسط زبان C طراحی شد که اجازه دسترسی به انواع دیتابیس ها را به برنامه نویسان می داد. ODBC یک ابزار سطح پایین با کارایی بالا بود که در زمان خود یک انقلاب در زمینه ارتباط نرم افزار با دیتابیس محسوب می شد که می توانست داده ها را از دیتابیس فراخوانی کرده و درون خود نگهداری کند. از طرفی ODBC باعث می شد که نرم افزار مستقل از دیتابیس عمل کند و فقط یک ارتباط بین آنها برقرار باشد.
با وجود اینکه ODBC یک کمک بسیار بزرگ در نحوه ارتباط نرم افزار با دیتابیس بود اما اشکالاتی داشت. از آن جمله می توان به از دست رفتن ارتباط در بسیاری از حالات اشاره کرد. ضمنا در برخی موارد نیاز به ارتباط چندگانه با دیتابیس بود که ODBC از انجام این کارها عاجز بود. از این رو ORM جدیدی به نام ADO توسط مایکروسافت معرفی شد که تقریبا همزمان با معرفی VB6 مایکروسافت بود. در ADO ارتباط پایدارتری ایجاد می شد و سرعت دسترسی به اطلاعات هم قابل قبول بود.
تقریبا در سال 2000 میلادی شرکت های غول برنامه نویسی مانند مایکروسافت به سمت قابلیت های شبکه ای شدن نرم افزارها و ایجاد نرم افزارهای تحت شبکه رفتند. همچنین معرفی فریم ورک ها و تکنولوژی های جدید در حوزه وب در آن سالها کم کم ضعف های ADO رو نمایان ساخت و شرکت مایکروسافت برای رفع این ضعف ها (خصوصا در زمینه شبکه) به فکر ایجاد یک ORM جدید افتاد تا قابلیت های شبکه و ارتباطات شبکه ای، ریکویست های تعداد بالا و نرم افزارهای با کاربران بالا را پوشش دهد. از این رو ADO.Net معرفی شد. ابزار ADO.Net در آن سالها به یکی از ORM های محبوب برنامه نویسان تبدیل شد که قابلیت های فراوانی را ارایه می داد. ارتباط پایدار با نرم افزار، قابلیت ایجاد نرم افزارهای تحت شبکه، استفاده در حوزه وب، قابلیت های فراوان در نوشتن کویری ها و سرعت قابل توجه آن باعث شد این ORM تبدیل به یک ابزار محبوب در سطح دنیا شود.
گرچه ADO.Net موفقیت های چشمگیری در زمینه ارتباط نرم افزار با دیتابیس به دست آورده بود اما پیشرفت های سریع شرکت ها در حوزه معرفی محصولات جدید و قابلیت های جدید زبان های برنامه نویسی که مرتبا ارایه می شد کم کم ضعف های ADO.Net هم مشخص شد. یکی از مهم ترین ضعف های ADO.Net ارتباطات ناایمنی بود که با دیتابیس برقرار می کرد. ضمنا ایجاد تکنولوژی های جدید مانند API ها و معرفی الگوهای مختلف برنامه نویسی (Design Pattern) و عدم توانایی ADO.Net جهت پوشش همه این موارد باعث ایجاد تکنولوژی Entity Framework شد. Entity Framework قابلیت های گسترده ای در زمینه امنیت، احراز هویت، انواع حالات کار با دیتابیس و ... ارایه کرد و به سرعت بین برنامه نویسان جا باز کرد. ضمنا سرعت توسعه نرم افزار در انتیتی فریم ورک بسیار بالا رفت و حجم کدنویسی بسیار کاهش پیدا کرد. البته ناگفته نماند سرعت کار با داده ها نسبت به ADO.Net تا حدودی کاهش پیدا کرد.
اما در مورد OLE DB قضیه کلا متفاوت هست. این ORM یک ابزار برای ایجاد ارتباط بین نرم افزار شما و دیتابیس اکسس می باشد. این ابزار قابلیت های شبکه ای، چند کاربره و بسیاری از قابلیت های دیگر را ندارد و برای پروژه های کوچک مقیاس مناسب می باشد.
تاریخ :
1404/01/28
- ساعت :
10:46:00 AM
- بازدید :
70
- پاسخ :
1
|
تاریخ :
1403/12/22
- ساعت :
11:05:00 AM
- بازدید :
285
- پاسخ :
1
|
تاریخ :
1399/11/25
- ساعت :
11:22:00 AM
- بازدید :
4004
- پاسخ :
2
|
تاریخ :
1403/10/20
- ساعت :
11:39:00 AM
- بازدید :
315
- پاسخ :
1
|
تاریخ :
1399/06/07
- ساعت :
12:45:00 PM
- بازدید :
8407
- پاسخ :
1
|
تاریخ :
1401/02/24
- ساعت :
02:17:00 PM
- بازدید :
2276
- پاسخ :
1
|
تاریخ :
1403/01/06
- ساعت :
05:14:00 PM
- بازدید :
901
- پاسخ :
1
|
تاریخ :
1402/12/12
- ساعت :
03:20:00 PM
- بازدید :
696
- پاسخ :
1
|
تاریخ :
1402/07/20
- ساعت :
01:34:00 PM
- بازدید :
1113
- پاسخ :
1
|
تاریخ :
1402/06/27
- ساعت :
12:27:00 PM
- بازدید :
1744
- پاسخ :
2
|
تاریخ :
1404/02/04
- ساعت :
04:31:00 PM
- بازدید :
55
- پاسخ :
1
|
تاریخ :
1404/01/28
- ساعت :
09:29:00 PM
- بازدید :
76
- پاسخ :
1
|
تاریخ :
1404/01/29
- ساعت :
10:55:00 AM
- بازدید :
59
- پاسخ :
1
|
تاریخ :
1404/01/28
- ساعت :
10:46:00 AM
- بازدید :
70
- پاسخ :
1
|
تاریخ :
1404/01/28
- ساعت :
10:27:00 AM
- بازدید :
60
- پاسخ :
1
|
تاریخ :
1404/01/26
- ساعت :
05:27:00 PM
- بازدید :
141
- پاسخ :
1
|
تاریخ :
1404/01/24
- ساعت :
07:09:00 AM
- بازدید :
115
- پاسخ :
0
|
تاریخ :
1404/01/25
- ساعت :
03:09:00 PM
- بازدید :
78
- پاسخ :
1
|
تاریخ :
1404/01/16
- ساعت :
07:20:00 PM
- بازدید :
341
- پاسخ :
1
|
تاریخ :
1404/01/07
- ساعت :
05:02:00 AM
- بازدید :
198
- پاسخ :
1
|