فائدة constructor في اللارافيل

Huda_Huda

السلام عليكم

قد يبدو السؤال تافها ، لكنني ما زلت مبتدئة بالبرمجة في اللارافيل

كلنا نعلم أن constructor يتم استدعاؤه عندما نقوم بعمل object من الكلاس

الآن سؤالي في لارافيل يتم استخدام الconstructor بداخل الcontrollrer و يتم فيه إرسال متغيرات و استدعاء دوال و غيرها من الكود ، فما فائدة استدعاء constructor إذا لم نقم بعمل كائن من controller و هل يتم عمل كائن أو لا من controller ، أعلم أن السؤال قد يبدو بسيطا للبعض لكني لم أفهم هذه الجزئية ، و السؤال الآخر متى نكون بحاجة إلى عمل constructor و ما الطريقة الأفضل لاستخدامه، و شكرا لكم


Constructor هي دالة البناء في البرمجة كائنية التوجه في أي لغة برمجة ليس لها علاقة مباشرة ب larval

مثال

public class Computer {

// Set Properties - تحديد الخواص

private int id;

private String name;

private String ramModel;

private String motherBoardModel;

// Set Default Constructor - تحديد الإفتراضي :

public Computer() {}

// Set Parametrized Constructor - تحديد النوع الثاني :

public Computer(int id, String name, String ramModel, String motherBoardModel){

this.id = id;

this.name = name;

this.ramModel = ramModel;

this.motherboardModel = motherBoardModel;

}

// Set Actions - تحديد الأفعال

public void turnOn() {

System.out.Println("Computer is turned on");

}

public void turnOff(){ System.out.Println("Computer is turned off"); } }

مثال php

<?php class BaseClass { function __construct() { print "In BaseClass constructor\n"; } }

class SubClass extends BaseClass { function __construct() { parent::__construct(); print "In SubClass constructor\n"; } }

class OtherSubClass extends BaseClass { // inherits BaseClass's constructor

}

// In BaseClass constructor

$obj = new BaseClass();

// In BaseClass constructor

// In SubClass constructor

$obj = new SubClass();

// In BaseClass constructor

$obj = new OtherSubClass();

?>

صحيح و أنا أعرف هذا الكلام جيدا ، سؤالي يتعلق باللارافيل لماذا نحتاج لعمل constructor في controller يعني على سبيل المثال لم أرَ في أي كود أننا قمنا بعمل object من هذا الcontroller فما فائدة ذلك ، أو هل يتم عمل object من controller في أماكن أخرى