• 2 رای - 5 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
اسم اینکار چیه - DAL ORM DAO...
#1
سلام

اینکه مثلا یک اینترفیس یا کلاس ثابت داشته باشم و بوسیله اون بتونم با همه کلاس های دیتابیس ها کار کنم، بدون اینکه مجبور بشم همه دستوات و کدها مو تغییر بدم...
چی میگن به این؟
همون PDO میشه یعنی؟
پس DAO, DAL, ORM چی هستن پس؟

ممنون Smile
  پاسخ
تشکر شده توسط :
#2
?.......
  پاسخ
تشکر شده توسط :
#3
از DAL کدومش منظورته دقیقاً؟ Data access layer یا DataBase abstraction layer؟

Database abstraction layer یا DBAL یا middleware
- یک کتابخانه/لایه برای ارتباط بین برنامه و دیتابیس هستش
- چیزی شبیه به PDO در PHP می مونه - که بکمکش می تونی با همه MsSQL, MySQL, Oracle, PgSQL و... ارتباط برقرار کنی و راحت کار کنی
- یک لایه فیزیکی(مثل DLL یا SO) برای کار با هر نوع دیتابیس. بدون اینکه درگیر مسایل مختص به هر دیتابیس بشی
و...
مثال: ODBC مایکروسافت، JODBC, GNOME-DB، unixODBC, PDO...


Data access layer یا DAL
- یک سبک معماری/طراحی هستش.
- درواقع لایه ای بین منطق برنامه(Bussiness logic layer) و داده هستش.
- از دستکاری دیتا بصورت مستقیم(مثل نوشتن کوئری برای هر INSERT) جلوگیری میکنه.
- میشه گفت wrapper ای برای استفاده از توابع native دیتابیس هستش
- این سبک معماری میتونه دیتابیس independent باشه یا حتی صددرصد OO باشه(مثل ORM ها)
و...
مثل: function createNewUser, function deleteAccount, class MySQL
که بجای نوشتن کوئری و دستورات بصورت مستقیم، بواسطه لایه ها اینکار انجام میشه


Data access object یا DAO
- یک نوع pattern/الگو در برنامه نویسی هستش
- درواقع OOP شده ی DAL هستش
- درواقع abstraction ای با خروجی شی برای دسترسی به دیتا هستش (شی ای برای دسترسی به دیتا)
- به لایه دیتا نزدیکه
- فقط توسط اشیا با دیتا کار میکنه
- بیشتر مربوط به .Net و جاوا میشه
و...


از ORM هم بدم میاد بهت نمیگم Sleepy
وبلاگ: Yousha.Blog.ir


 کد کمتر => خطای کمتر => قابل فهمتر => خوانایی بالاتر => نگهداری بهتر

  پاسخ
تشکر شده توسط : ayoubsys Null Sylert
#4
عالی بود مرسی HeartHeart

ولی شما که راجب همش اطلاعات دادی راجب orm هم اطلاعات میدادی دیگه Big Grin
  پاسخ
تشکر شده توسط :
#5
خدمت شما:
https://github.com/wafflesystems/dal/issues/5
https://github.com/jpgerek/dal-mysql/issues/1
https://github.com/alexadusei/PHP-Databa...r/issues/1

هزاران مورد از این گونه اشتباهات در اینترنت هست، مخصوصاً در فریم ورک ها و کتابخانه ها
وبلاگ: Yousha.Blog.ir


 کد کمتر => خطای کمتر => قابل فهمتر => خوانایی بالاتر => نگهداری بهتر

  پاسخ
تشکر شده توسط : Null


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان