![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 495 Pomógł: 245 Dołączył: 1.07.2009 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Cześć.
Walczę z kolejnym wymogiem projektu nad którym siedzę. "Logika MySQL powinna być obsługiwana przez obiekty z właściwościami, zamiast bezpośrednich wartości kolumn. Proszę użyć setters i getters aby to osiągnąć oraz nie zapomnieć użyć ich do zapisu i wyświetlania logiki." Póki co to nie użyłem setter/getter. Pokażcie proszę na przykładzie mojego poniższego kodu jak to powinno być zastosowane. Klasa Produkt
Kawałek klasy ProductAdd z metodą wrzucającą do bazy:
|
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Jak pisalem wczesniej:
nie $productObject = new ProductAdd($db); a $productObject = new ProductAdd($this->db); No i skoro $db to obiekt klasy DB to nie private $db; public function __construct($db){ $this->$db = $db; } a private DB $db; public function __construct(DB $db){ $this->$db = $db; } Cytat W którym miejscu najlepiej porobić setter/getter żeby wykazać że wiem o co w nich chodzi (wymóg projektu)? No jak zrobic setter/getter przeciez ci podalem w pierwszym poscie tego wlasnie tematu. Cytat Jest tu jakaś klasa z której można zrobić abstrakcyjną i byloby to uzasadnione? Tan caly balagan to jedna wielka abstrakcja wiec juz masz (IMG:style_emoticons/default/wink.gif) A na powaznie, nachwile obecna nie widze gdzie to by mozna bylo dac, za duzy balagan i za malo czasu by poprawiac class ProductAdd extends Product Pisalem, ze ProductAdd nie moze dziedziczyc po Produkt, tylko ma dostac Produkt gdzie trzeba. public function insertNewProduct(Product $product) |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 495 Pomógł: 245 Dołączył: 1.07.2009 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
No jak zrobic setter/getter przeciez ci podalem w pierwszym poscie tego wlasnie tematu. Tak tak, jak zrobić i w którym miejscu danej klasy to rozumiem - pisałeś. Ale moje pytanie było bardziej typu - czy dla każdej klasy to robić? Czy są jakieś uzasadnienia kiedy getter/setter nie robić? Czy w moim powyższym kodzie jest jakaś klasa w której szczególnie aż rzuca się w oczy że powinny byś gettery i settery?Tan caly balagan to jedna wielka abstrakcja wiec juz masz (IMG:style_emoticons/default/wink.gif) Serio jest aż tak źle, że nawet kandydat na juniora powinien się wstydzić?class ProductAdd extends Product Pisalem, ze ProductAdd nie moze dziedziczyc po Produkt, tylko ma dostac Produkt gdzie trzeba. public function insertNewProduct(Product $product) Ok, clear. Nie zdążyłem tego jeszcze poprawić. I tak dziś to wygląda to wszystko już dużo lepiej niż jeszcze choćby 24h temu. A czy sama klasa Product jest zrobiona należycie? Ten post edytował sadistic_son 12.01.2023, 14:07:00 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 10.10.2025 - 22:43 |