Swoje pierwsze kroki stawiam na projektowanie oparte na domenie, kupiłem niebieską książkę i wszystko inne, i widzę trzy sposoby na wdrożenie określonego rozwiązania. Dla przypomnienia: nie używam CQRS ani Event Sourcing. Załóżmy, że żądanie użytkownika wchodzi do warstwy usługi aplikacji. Logika biznesowa dla tego żądania jest (z dowolnego powodu) podzielona …
Nie tak dawno temu rozmawiałem z moim kolegą i zdecydowanie był przeciwny stosowaniu masek bitowych, ponieważ trudno jest zrozumieć wszystkie wartości przechowywane w bazie danych. Moim zdaniem korzystanie z nich nie zawsze jest złym pomysłem, na przykład w celu określenia ról bieżącego użytkownika. W przeciwnym razie musisz przechowywać go w …
Często używam wzorca, w którym używam łączenia łańcuchowego do ustawiania obiektu, podobnego do wzoru Builderlub Prototype, ale nie tworzę nowych obiektów przy każdym wywołaniu metody, zamiast tego modyfikując oryginalny obiekt. Przykład: new Menu().withItem("Eggs").withItem("Hash Browns").withStyle("Diner"); Zastanawiam się tylko, czy istnieje nazwa tego wzorca i czy jest on uważany za anty-wzorzec, ponieważ …
Typową radą przed wdrożeniem produkcyjnym jest wykonanie kopii zapasowej bazy danych. W ten sposób, jeśli nowa aktualizacja ma jakiś problem, który może prowadzić do potencjalnej utraty lub logicznego uszkodzenia danych, nadal masz kopię zapasową do porównania i poprawienia starych rekordów. Może to jednak działać dobrze, dopóki rozmiar bazy danych nie …
Podoba mi się koncepcja System.Tuple, ponieważ pozwala mi zwracać wiele parametrów w jednym wywołaniu funkcji bez tworzenia nowej klasy, jednak nie podważa to żadnych dobrych praktyk programistycznych, takich jak Wzorce i praktyki Microsoft, Zasady SOLID itp. Próbuję tylko ocenić, jak swobodnie powinienem korzystać z tej funkcji lub czy powinienem jej …
Właśnie powierzono mi projekt kodu z problemami z utrzymaniem. Co mogę zrobić, aby projekt był stabilny? Znajduję się w miejscu, w którym pracujemy z bardzo dużym wielopoziomowym systemem .NET, w którym brakuje wielu ważnych rzeczy, takich jak testy jednostkowe, IOC, MEF, zbyt wiele klas statycznych, czyste zestawy danych itp. Jestem …
Widzę kilka postów, w których podkreślono znaczenie obsługi wyjątku w centralnej lokalizacji lub na granicy procesu jako dobrej praktyki zamiast zaśmiecania każdego bloku kodu wokół try / catch. Mocno wierzę, że większość z nas rozumie znaczenie tego, jednak widzę, że ludzie nadal kończą się anty-wzorcem catch-log-rethrow, głównie dlatego, że aby …
Zasadniczo, czy uważa się za złą praktykę zezwalanie na pola tworzone przez użytkowników w bazie danych dla aplikacji WWW? Na przykład robię dla mojej żony aplikację internetową do inwentaryzacji domu i będzie chciała zdefiniować własne pola dla różnych przedmiotów. Planowałem pozwolić jej na tworzenie kategorii przedmiotów i dodawanie „funkcji” do …
Biblioteki JavaScript, takie jak jQuery, łączą „getters” i „setters” w interfejsie programowania, na przykład: $('element').css({'color','blue'}); ustawi kolor lub $('element').css(); dostanie css dla elementu. Czy istnieje nazwa takiego wzorca i czy dobrą praktyką jest stosowanie go w aplikacjach?
Dlaczego warto stosować wzorzec strategii, jeśli można po prostu napisać kod w przypadkach „jeśli / to”? Na przykład: Mam klasę TaxPayer, a jedna z jej metod oblicza podatki przy użyciu różnych algorytmów. Dlaczego więc nie może mieć przypadków if / then i dowiedzieć się, jakiego algorytmu użyć w tej metodzie, …
Widziałem to często w naszym starszym systemie w pracy - funkcje, które wyglądają mniej więcej tak: bool todo = false; if(cond1) { ... // lots of code here if(cond2) todo = true; ... // some other code here } if(todo) { ... } Innymi słowy, funkcja składa się z dwóch …
W obecnej formie to pytanie nie pasuje do naszego formatu pytań i odpowiedzi. Oczekujemy, że odpowiedzi poparte będą faktami, referencjami lub wiedzą fachową, ale to pytanie prawdopodobnie będzie wymagało debaty, argumentów, ankiet lub rozszerzonej dyskusji. Jeśli uważasz, że to pytanie można poprawić i ewentualnie ponownie otworzyć, odwiedź centrum pomocy w …
Jestem doświadczonym programistą C ++, znam język bardzo szczegółowo i intensywnie korzystałem z niektórych jego specyficznych funkcji. Znam też zasady OOD i wzorce projektowe. Uczę się teraz C #, ale nie mogę przestać czuć, że nie mogę pozbyć się sposobu myślenia w C ++. Tak mocno związałem się z mocnymi …
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.