بررسی نقض SRP

پرسیده شده
فعالیت 919 روز پیش
دیده شده 492 بار
0

سلام استاد 

 

این کد زیر به نظرتون SRP رو نقض کرده

 

 public function insert($table, $data)
  {
    $prantez = dbUtilities::makeInsertQuery($data);
    $this->connection->query("INSERT INTO {$table}. {$prantez} "." VALUES "  );
  }
  

 

هدف از این متد اینه که کوئری insert ساخته بشه 

 

متد makeInsertQuery اون قسمتی از متد insert که به این شکل هستش ==> (?, ?, ?, ?) رو میسازه

که من لاجیک این کد رو  تو utilitie  کلاس نوشتم  و در insert فقط استفادش کردم. 

 

در اخرم متد query رو کال کردم  

 

(البته کدها ناقص هست و اجرا نمیشه فقط میخوام بدونم SRP رو نقض کرده یا نه )

 

<?php
class dbUtilities
{
  public static function makeInsertQuery($data)
  {
    $count = count($data);
    return "(" . rtrim(str_repeat("?,", $count), ",") . ")" . " VALUES " dbUtilities::makeValues($data);
  }
}

 

 

 

 

 

 

 

فایل پیوست

amir tavakolian
amir tavakolian

15 مهر 00

0
حذف شده

سلام خدمت شما. هدف از SRP جلوگیری از انجام وظایف متفاوت برای کلاس هست که در این کدهای شما همچین چیزی مشاهده نمیشه. البته اون کلاس Utils جای بحث داره اما ربطی به SRP نداره.

فایل پیوست

کیوان علی محمدی

توسط

کیوان علی محمدی

25 مهر 00

حذف شده
نشکر استاد راجب کلاس utils که گفتین جای بحث داره؛ توضیح میدین
amir tavakolian

26 مهر 00

جلسه هفته اول - اصول SOLID - اصل Single Responsibility - مفهوم