![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 84 Pomógł: 7 Dołączył: 5.08.2009 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
Witam czytam właśnie o programowaniu obiektowym i zastanawiam się nad pewną kwestią.
Jeżeli dla danego obiektu wszystkie składowe będą dostępne za geterami i seterami, to autorzy książki zalecają sprawdzanie poprawności danych w tych metodach i rzucanie np. wyjątków. Zastanawiam się nad praktycznym zastosowaniem, bo jeżeli wypełniony POST nie będzie miał poprawnej wartości to raczej nie będziemy chcieli walić errorami. Spotkałem się z rozwiązaniem polegającym na tworzeniu klasy, która pobiera wartości np. z POST, a następnie zwraca tablicę z errorami, którą można wyświetlić. Taka klasa ma sens, ale co wtedy ze sprawdzaniem w geterach i seterach ? Olać czy powielać, co wpłynie negatywnie na wydajność. Mam nadzieję, że opisałem jasno. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
1. Podwójne sprawdzanie nie wpłynie negatywnie na wydajność.
2. W setterach powinieneś raczej robić jedynie najbardziej podstawową walidację danych. Np. funkcja zwracająca pierwiastek kwadratowy może rzucić wyjątek gdy podamy jej liczbę ujemną, metoda która ma dodać coś do kolekcji unikalnych elementów może rzucić wyjątek w przypadku próby dodania duplikatu itp. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 11.10.2025 - 20:06 |