Obecnie myślę o interfejsie do klasy, którą piszę. Ta klasa zawiera style dla znaku, na przykład czy znak jest pogrubiony, pochylony, podkreślony itp. Przez dwa dni debatowałem ze sobą, czy powinienem używać metod pobierających / ustawiających lub nazw logicznych dla metod, które zmieniają wartości na te style. Chociaż wolę nazwy …
Próbuję stworzyć program do zarządzania pracownikami. Nie mogę jednak wymyślić, jak zaprojektować Employeeklasę. Moim celem jest możliwość tworzenia i manipulowania danymi pracowników w bazie danych za pomocą Employeeobiektu. Podstawowa implementacja, o której myślałem, była prosta: class Employee { // Employee data (let's say, dozens of properties). Employee() {} Create() {} …
Biorąc pod uwagę klasę Python, która zostanie utworzona tylko raz, tzn. Będzie tylko jeden obiekt klasy. Zastanawiałem się, w jakich przypadkach sensowne jest utworzenie instancji pojedynczej klasy zamiast pracy bezpośrednio z klasą. Jest podobne pytanie , ale koncentruje się na innym: chodzi o grupowanie zmiennych globalnych i funkcji w klasę …
Zamknięte . To pytanie musi być bardziej skoncentrowane . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby skupiało się tylko na jednym problemie, edytując ten post . Zamknięte 6 lat temu . Jestem bardzo ciekawy myśli i najlepszych praktyk branżowych dotyczących elementów statycznych lub całych klas statycznych. …
Uczę się tylko o wstrzykiwaniu zależności i utknąłem na czymś. Dependency Injection zaleca wysyłanie klas zależnych przez konstruktor, ale zastanawiam się, czy jest to konieczne w przypadku obiektów danych. Ponieważ testowanie jednostkowe jest jedną z głównych zalet DI, czy obiekt danych, który przechowuje tylko dane, a nie jakiekolwiek procedury, kiedykolwiek …
Mam kilka klas (repozytoriów), które wykonują zadanie zapisywania / pobierania niektórych obiektów w / z bazy danych; wszystkie muszą ustanowić połączenie z jedną bazą danych. Pomyślałem, aby uniknąć przedefiniowania ConnectionStringi SqlConnectionw każdej klasie, przekazując im otwarte połączenie. Więc gdzie / kiedy jest najlepsze miejsce / czas, aby zdefiniować / otworzyć …
W moim projekcie C ++ mam dwie klasy Particlei Contact. W Particleklasie mam zmienną składową, std::vector<Contact> contactsktóra zawiera wszystkie kontakty Particleobiektu oraz odpowiednie funkcje składowe getContacts()i addContact(Contact cont). Zatem w „Particle.h” dołączam „Contact.h”. W Contactklasie chciałbym dodać kod do konstruktora, aby Contactten wywołał Particle::addContact(Contact cont), aby contactsbył aktualizowany zarówno dla …
„Odkryłem” interfejsy i zacząłem je kochać. Piękno interfejsu polega na tym, że jest to umowa, a każdy obiekt spełniający tę umowę może być używany wszędzie tam, gdzie wymagany jest interfejs. Problem z interfejsem polega na tym, że nie może on mieć domyślnej implementacji, co utrudnia przyziemne właściwości i pokonuje DRY. …
Rozwijam szereg filtrów pocztowych dla witryny Wordpress i zbudowałem pierwsze 4 z jedną klasą. Ostatnie dwa są wystarczająco różne, aby dzielić tylko jedną funkcję (funkcję tworzenia końcowych łączy) w swoich klasach. Czy rozsądne jest, w tym przypadku lub w dowolnej liczbie podobnych hipotetycznych przypadków, rozszerzenie oryginalnej klasy w celu uzyskania …
Oczywiście, że tak, po prostu zastanawiam się, czy racjonalne jest projektowanie w taki sposób. Robię klona Breakouta i pracuję nad klasą. Chciałem zastosować dziedziczenie, mimo że nie muszę, zastosować to, czego się nauczyłem w C ++. Myślałem o projektowaniu klas i wymyśliłem coś takiego: GameObject -> klasa podstawowa (składa się …
Czytałem tę stronę o tym , kiedy getters / setters są uzasadnieni, a OP podał następujący przykładowy kod: class Fridge { int cheese; void set_cheese(int _cheese) { cheese = _cheese; } int get_cheese() { return cheese; } } void go_shopping(Fridge fridge) { fridge.set_cheese(fridge.get_cheese() + 5); } W Zaakceptowanych odpowiedź stany: …
Mam problemy z tym, co uważam za zbyt abstrakcyjne w bazie kodu (a przynajmniej radzenie sobie z tym). Większość metod w bazie kodu została wyodrębniona w celu przyjęcia najwyższego rodzica A w bazie kodu, ale dziecko B tego rodzica ma nowy atrybut, który wpływa na logikę niektórych z tych metod. …
Przeprowadzamy wiele testów jednostkowych i refaktoryzacji naszych obiektów biznesowych i wydaje mi się, że mam bardzo odmienne opinie na temat projektowania klas niż inni koledzy. Przykładowa klasa, której nie jestem fanem: public class Foo { private string field1; private string field2; private string field3; private string field4; private string field5; …
Zamknięte . To pytanie jest oparte na opiniach . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby można było na nie odpowiedzieć faktami i cytatami, edytując ten post . Zamknięte 6 lat temu . Właśnie zacząłem pisać nową klasę i przyszło mi do głowy, że dodałem wiele …
Niezależnie od tego, czy obiekt istnieje fizycznie, czy nie, możemy modelować go na różne sposoby. W wielu przypadkach moglibyśmy arbitralnie zastosować uogólnienie lub kompozycję. Jednak zasada GoF „faworyzuj kompozycję zamiast uogólnienia [sic]” prowadzi nas do użycia kompozycji. Kiedy modelujemy na przykład linię, tworzymy klasę zawierającą dwa elementy PointA i PointB …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.