[Homework] OOP - OOP In PHP - Септември 2014
Не много добре изпипано домашно
Не много добре изпипано домашно
Здравейте,
Темата е от предишния випуск, но няма смисъл да пускам нова, затова пиша тук.
Получих преди малко коментар към домашното от лекцията и се получава малко сблъсък на виждания меджу моето мнение и това на проверяващия. Той/тя казва: "Стаята не трябва да проверява дали резервациите и се overlap-ват. Това е работа на BookingManager-а."
Според мен точно в стаята би следвало да се случва тази проверка. Стаята съдържа в себе си резервациите и тя е компетентна да прецени дали една резервация е валидна, т.е. да провери за овърлапване. Ако енджина го върши това, излиза, че той трябва да има достъп и да ползва резервациите на стаята и не ми се струва логично проверката да се прави там. Аз както видам нещата, енджина казва на стаята "добави си резервация" и тя го прави както си знае, като в нейния метод за добавяне на резервация тя проверява има ли конфликт със съществуваща или не.
Енджина може да проверява други неща - съществува ли такава стая, валидни ли са датите на резервацията (от гледна точка крайната дата да е след началната) (едит - това дето го задрасках пък трябва да си е работа на самия клас резервация) и такива неща.
Ако може някой по-опитен да разплете логиката, защото в това отношение сме си новаци.
П.С. Едно благодаря за колегата, който опита да ми обясни за spl_autoload-a. Не ми е все още много ясно, ще опитам по-късно пак да схвана как точно работи.