Pytania otagowane jako design-patterns

Wzorzec projektowy jest ogólnym rozwiązaniem wielokrotnego użytku dla często występującego problemu w projektowaniu oprogramowania.

4
Utwórz system oparty na zachowaniu / składnikach dla gier
tło Zajmuję się tworzeniem gier jako hobby i szukam lepszego sposobu na ich zaprojektowanie. Obecnie używam standardowego podejścia OOP (zajmuję się rozwojem przedsiębiorstwa od 8 lat, więc przychodzi to w ujęciu kwartalnym). Weźmy na przykład „złego” public class Baddie:AnimatedSprite //(or StaticSprite if needed, which inherit Sprite) { //sprite base will …

4
Jak zmienia się myślenie o wzorcach projektowych i praktykach OOP w dynamicznych i słabo typowanych językach?
Jest już dość pomocne pytanie w tym zakresie („ Wzory projektowe inne niż OOP? ”), Ale jestem bardziej ciekawy przejściowego punktu widzenia dla kogoś, kto dopiero zaczyna pracę z dynamicznymi i słabo typowanymi językami. To znaczy: załóżmy, że programuję w C ++, C # lub Javie od wielu lat i …

5
Zmodyfikowany wzorzec projektowania strategii
Niedawno zacząłem szukać Wzorów projektowych i jedna rzecz, którą koduję, idealnie pasuje do wzorca Strategii, z wyjątkiem jednej małej różnicy. Zasadniczo niektóre (ale nie wszystkie) z moich algorytmów wymagają przekazania dodatkowego parametru lub dwóch. Więc albo będę musiał przekazuję im dodatkowy parametr, gdy wywołuję ich metodę obliczania lub przechowuj je …


4
Jak owinąć usługę, aby była prostsza
Jesteśmy zależni od usługi innej firmy, która ujawnia gigantyczny interfejs, którego potrzebujemy tylko 3 metody. Dodatkowo interfejs często się zmienia ... W naszym projekcie postanowiłem zawinąć interfejs w klasę i ujawnić tylko metody, których potrzebujemy. Ale nie jestem pewien, jak powinienem obsługiwać zwracane wartości ... Interfejs zwraca obiekt typu Storage. …

2
Warstwa usługi aplikacji wywołująca funkcje bazy danych. Zła architektura?
Scenariusz: Stos: Java, Spring, Hibernacja. Model: aplikacja klient-serwer. Wzór: Model-View-Controller (MVC). Klasy warstwy usług mają trzy zachowania: Niektóre usługi zawierają regułę biznesową w ramach metod i delegują trwałość aplikacji. Lubić: EntityManager.save (encja); Niektóre usługi po prostu wywołują funkcję bazy danych (przekazują parametry), takie jak: CallableStatement cls = con.prepareCall („{call databaseFunction …


2
Architektura / warstwowanie projektu .NET MVC
Jak planujesz architekturę aplikacji internetowej MVC na dużą skalę, w jaki sposób wdrażasz warstwy, aby były możliwie jak najbardziej rozdzielone i łatwe do przetestowania? (w zasadzie postępuj zgodnie z najlepszymi praktykami) Powiedzmy, że najpierw używam kodu jako dostępu do danych. Mam problem z tym, co zdefiniować jako „logikę biznesową” i …

6
Jakie są praktyczne sposoby wdrożenia SRP?
Po prostu jakich praktycznych technik używają ludzie, aby sprawdzić, czy klasa narusza zasadę pojedynczej odpowiedzialności? Wiem, że klasa powinna mieć tylko jeden powód do zmiany, ale w tym zdaniu brakuje praktycznego sposobu, aby to naprawdę wdrożyć. Jedynym sposobem, jaki znalazłem, jest użycie zdania „The ......... powinien ......... sam w sobie”. …

4
Ukrywanie / wyłączanie funkcji dla niektórych użytkowników
Powiedzmy, że mam darmową i płatną wersję aplikacji. Wersja płatna jest nadzbiorem bezpłatnej wersji dotyczącej funkcji dostępnych dla użytkowników, co oznacza, że ​​wersja płatna będzie miała wszystkie funkcje darmowej aplikacji plus dodatkowe. Czy istnieje wzorzec przełączania dostępności funkcji na podstawie flagi, która ładuje się przy starcie (np. Bezpłatny / płatny)? …

1
OOP ECS vs Pure ECS
Po pierwsze, wiem, że to pytanie wiąże się z tematem tworzenia gier, ale postanowiłem zadać je tutaj, ponieważ naprawdę sprowadza się ono do bardziej ogólnego problemu związanego z tworzeniem oprogramowania. W ciągu ostatniego miesiąca dużo czytałem o systemach Entity-Component-Systems i teraz czuję się swobodnie z tą koncepcją. Jednak w jednym …

4
Wzorzec powielania klas?
Obecnie pracuję jako programista solo nad moim obecnym projektem. Projekt odziedziczyłem od innego programisty, który odszedł z firmy. Jest to aplikacja internetowa w stylu kontrolera widoku modelu w języku C #. Używa Entity Framework do mapowania relacyjnego obiektu. Istnieją dwa różne zestawy klas dla typów w modelu domeny. Jeden zestaw …

5
Najlepszy wzorzec projektowy OOP dla sekwencji operacji
Pracuję nad aplikacją, której moduł wykonuje kolejno następujące operacje finansowe: Gdy użytkownik poprosi o przelanie określonej kwoty na swoje konto bankowe: sprawdzić, czy jakaś transakcja może się teraz zdarzyć? (transakcja może być przeprowadzona tylko przez określony czas) sprawdź, czy użytkownik zażądał wypłaty minimalnej kwoty sprawdź, czy użytkownik ma jakieś domyślne …

4
Jak korzystać z wtrysku zależności w połączeniu ze wzorem fabrycznym
Rozważ moduł odpowiedzialny za parsowanie plików dowolnego typu. Zastanawiam się nad wykorzystaniem wzorca strategii do rozwiązania tego problemu, jak już tu wyjaśniłem . Przed przejściem do tego pytania zapoznaj się z połączonym postem. Rozważ klasę B, która potrzebuje zawartości pliku product.xml. Ta klasa będzie musiała utworzyć instancję odpowiedniego konkretnego implementatora …


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.