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.


9
Wzory projektowe: czy powinienem się ich nauczyć? [Zamknięte]
Zamknięte. To pytanie jest nie na temat . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby było tematem dotyczącym wymiany stosów inżynierii oprogramowania. Zamknięte 4 lata temu . To trochę dziwne, zadając dwa pytania jeden po drugim, ale nie są one zbyt powiązane i nie chciałem ich …

1
Jaką procedurę stosuje się podczas pisania leksykonu opartego na gramatyce?
Podczas czytania odpowiedzi na pytanie Wyjaśnienie dotyczące gramatyk, leksyk i parserów odpowiedź brzmiała: [...] gramatyka BNF zawiera wszystkie reguły potrzebne do analizy leksykalnej i analizy. Wydawało mi się to nieco dziwne, ponieważ do tej pory zawsze myślałem, że leksyk nie jest w ogóle oparty na gramatyce, podczas gdy parser był …

6
Jaki jest najprostszy format pliku konfiguracyjnego czytelnego dla człowieka? [Zamknięte]
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 5 lat temu . Aktualny plik konfiguracyjny wygląda następująco: mainwindow.title = 'test' mainwindow.position.x = 100 mainwindow.position.y = …

1
Używanie klas znajomych do enkapsulacji funkcji prywatnych członków w C ++ - dobra praktyka czy nadużycie?
Zauważyłem więc, że można uniknąć umieszczania funkcji prywatnych w nagłówkach, wykonując coś takiego: // In file pred_list.h: class PredicateList { int somePrivateField; friend class PredicateList_HelperFunctions; public: bool match(); } // In file pred_list.cpp: class PredicateList_HelperFunctions { static bool fullMatch(PredicateList& p) { return p.somePrivateField == 5; // or whatever } } …

6
DDD spełnia OOP: jak zaimplementować repozytorium obiektowe?
Typowa implementacja repozytorium DDD nie wygląda zbyt dobrze, na przykład save()metoda: package com.example.domain; public class Product { /* public attributes for brevity */ public String name; public Double price; } public interface ProductRepo { void save(Product product); } Część infrastruktury: package com.example.infrastructure; // imports... public class JdbcProductRepo implements ProductRepo { …


4
W jaki sposób klasa powinna komunikować się z użytkownikami, który podzbiór metod wdraża?
Scenariusz Aplikacja internetowa definiuje interfejs zaplecza użytkownika IUserBackendza pomocą metod getUser (uid) createUser (uid) deleteUser (identyfikator użytkownika) setPassword (identyfikator użytkownika, hasło) ... Różne interfejsy użytkownika (np. LDAP, SQL, ...) implementują ten interfejs, ale nie każdy backend może zrobić wszystko. Na przykład konkretny serwer LDAP nie pozwala tej aplikacji internetowej na …




3
Zrozumienie wzoru strumienia
Właściwie badam wzór strumienia i jest coś, czego nie rozumiem na temat sklepów . Czym one są dokładnie? Przeczytałem wiele artykułów i wydaje się, że dotyczy to domeny. Czy to oznacza, że ​​jest to „abstrakcyjna” część związana z wywołaniami interfejsu API lub wywołaniami backendowymi? To nie jest dla mnie bardzo …

2
Dlaczego „zip” ignoruje zwisający ogon kolekcji?
C # , Scala, Haskell, Lisp i Pythonzip zachowują się tak samo : jeśli jedna kolekcja jest dłuższa, ogon jest cicho ignorowany. Może to być również wyjątek, ale nie słyszałem o żadnym języku używającym takiego podejścia. To mnie zastanawia. Czy ktoś wie, dlaczego zipjest tak zaprojektowany? Sądzę, że w przypadku …



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.