لایه دسترسی به داده
از ویکی پدیا، دانشنامه آزاد
یک لایه دسترسی به داده ها (DAL) در نرم افزار کامپیوتر، لایه ای از یک برنامه کامپیوتری است که دسترسی ساده به داده های ذخیره شده در برخی از انواع ذخیره سازی دائمی، مانند پایگاه داده موجودیت-رابطه ای را فراهم می کند. این مخفف معمولاً در محیط های مایکروسافت استفاده می شود.
به عنوان مثال، DAL ممکن است به جای ردیفی از فیلدها از جدول پایگاه داده، یک مرجع را به یک شی (از نظر برنامه نویسی شی گرا) کامل با ویژگی های آن برگرداند. این اجازه می دهد تا ماژول های کلاینت (یا کاربر) با سطح بالاتری از انتزاع ایجاد شوند. این نوع مدل را می توان با ایجاد یک کلاس از روش های دسترسی به داده که به طور مستقیم به مجموعه ای از رویه های ذخیره شده پایگاه داده مربوطه ارجاع می دهد، پیاده سازی کرد. یک پیاده سازی دیگر می تواند به طور بالقوه رکوردها را به یا از یک سیستم فایل بازیابی یا بنویسد. DAL این پیچیدگی ذخیره داده های زیرین را از دنیای خارجی پنهان می کند.
به عنوان مثال، به جای استفاده از دستوراتی مانند حذف (delete) ، درج (insert) و به روزرسانی (update) برای دسترسی به یک جدول خاص در پایگاه داده، می توان یک کلاس و چند رویه ذخیره شده در پایگاه داده ایجاد کرد. رویه ها از یک متد در داخل کلاس فراخوانی می شوند که یک شی حاوی مقادیر درخواستی را برمی گرداند. یا دستورات درج، حذف و بهروزرسانی را میتوان در توابع سادهای مانند کاربر ثبت نام کننده (register user) یا کاربر ورود (login user) که در لایه دسترسی به داده ذخیره میشود، اجرا کرد.
همچنین، روش های منطق تجاری از یک برنامه کاربردی را می توان به لایه دسترسی به داده ها نگاشت. بنابراین، بهعنوان مثال، بهجای ایجاد پرس و جو در یک پایگاه داده برای واکشی همه کاربران از چندین جدول، برنامه میتواند یک متد را از یک DAL فراخوانی کند که آن تماسهای پایگاه داده را انتزاع میکند.
برنامه هایی که از لایه دسترسی به داده استفاده می کنند می توانند وابسته به پایگاه داده یا مستقل باشند. اگر لایه دسترسی به داده از چندین نوع پایگاه داده پشتیبانی کند، برنامه کاربردی می تواند از هر پایگاه داده ای که DAL می تواند با آن صحبت کند استفاده کند. در هر دو شرایط، داشتن یک لایه دسترسی به داده، یک مکان متمرکز برای همه تماسها به پایگاه داده فراهم میکند، و بنابراین انتقال برنامه به سایر سیستمهای پایگاه داده را آسانتر میکند (با این فرض که 100٪ تعامل پایگاه داده در DAL برای یک برنامه مشخص انجام میشود).
ابزارهای نگاشت شی-رابطه ای، لایه های داده را به این روش، به دنبال الگوهای ثبت فعال یا داده نگاشت، ارائه می کنند. مدل ORM/active-record در چارچوب های وب محبوب است.