Ostatnio dyskutowano o problemach z używaniem (i nadużywaniem) Singletonów. Byłem także jedną z tych osób wcześniej w mojej karierze. Widzę, na czym polega teraz problem, a jednak wciąż jest wiele przypadków, w których nie widzę fajnej alternatywy - i niewiele dyskusji na temat Singleton naprawdę ją oferuje. Oto prawdziwy przykład …
Sytuacja Wcześniej tego wieczora udzieliłem odpowiedzi na pytanie dotyczące StackOverflow. Pytanie: Edycja istniejącego obiektu powinna odbywać się w warstwie repozytorium czy w serwisie? Na przykład, jeśli mam Użytkownika, który ma dług. Chcę zmienić jego dług. Czy powinienem to zrobić w UserRepository lub w serwisie, na przykład BuyingService, uzyskując obiekt, edytując …
Zanim zaczniemy, pozwól mi powiedzieć, że jestem w pełni świadomy koncepcji abstrakcji i wstrzykiwania zależności. Nie potrzebuję tutaj otwierać oczu. Cóż, większość z nas mówi (zbyt) wiele razy, naprawdę nie rozumiejąc: „Nie używaj zmiennych globalnych” lub „Singletony są złe, ponieważ są globalne”. Ale co tak naprawdę jest złego w złowieszczym …
Zastanawiam się nad stworzeniem aplikacji, która w swej istocie składałaby się z tysięcy instrukcji if ... then ... else. Celem aplikacji jest przewidzenie, w jaki sposób krowy poruszają się w dowolnym krajobrazie. Wpływają na nie takie rzeczy jak słońce, wiatr, źródło pożywienia, nagłe wydarzenia itp. Jak można zarządzać taką aplikacją? …
Przeczytałem książkę Robert C. Martin o nazwie Clean Code . W tej książce widziałem wiele metod czyszczenia kodu, takich jak pisanie małych funkcji, ostrożne wybieranie nazw itp. Wydaje się, że jest to najbardziej interesująca książka o czystym kodzie, którą przeczytałem. Jednak dzisiaj mój szef nie polubił sposobu, w jaki napisałem …
Próbowałem znaleźć alternatywy dla użycia zmiennej globalnej w jakimś starszym kodzie. Ale to pytanie nie dotyczy alternatyw technicznych, martwię się głównie terminologią . Oczywistym rozwiązaniem jest przekazanie parametru do funkcji zamiast użycia globalnego. W tej starej bazie kodu oznaczałoby to, że muszę zmienić wszystkie funkcje w długim łańcuchu wywołań między …
Jestem młodszym programistą wśród seniorów i mam duże problemy ze zrozumieniem ich sposobu myślenia i rozumowania. Czytam DDD ( Domain-Driven Design ) i nie rozumiem, dlaczego musimy tworzyć tak wiele klas. Jeśli zastosujemy tę metodę projektowania oprogramowania, otrzymamy 20-30 klas, które można zastąpić maksymalnie dwoma plikami i 3-4 funkcjami. Tak, …
To pomysł, który słyszałem wielokrotnie w kilku miejscach. Niektórzy mniej lub bardziej uznają, że gdy próba rozwiązania problemu czysto w języku SQL przekracza pewien poziom złożoności, rzeczywiście powinieneś poradzić sobie z nim w kodzie. Logika leżąca u podstaw tego pomysłu polega na tym, że w większości przypadków silnik bazy danych …
Jako poważny programista, jak odpowiesz na pytanie Co to jest MVC? Moim zdaniem, MVC jest dość mglistym tematem - dlatego też, jeśli twoja publiczność jest uczniem, możesz opisać go w kategoriach ogólnych, które raczej nie będą kontrowersyjne. Jeśli jednak rozmawiasz ze znającą się na rzeczy publicznością, a zwłaszcza z ankieterem, …
Widziałem historię kilku projektów bibliotek klas С # i Java na GitHub i CodePlex, i widzę trend przechodzenia do klas fabrycznych w przeciwieństwie do bezpośredniego tworzenia instancji obiektów. Dlaczego powinienem intensywnie korzystać z klas fabrycznych? Mam całkiem niezłą bibliotekę, w której obiekty są tworzone w staromodny sposób - przy użyciu …
Próbuję dowiedzieć się, co tak naprawdę oznacza warstwa antykorupcyjna. Wiem, że to sposób na przejście / obejście starszego kodu lub złych interfejsów API. Nie rozumiem, jak to działa i co sprawia, że jest to czyste oddzielenie od niepożądanej warstwy. Przeprowadziłem pewne wyszukiwanie, ale nie mogę znaleźć żadnych prostych przykładów ani …
Odkąd po raz pierwszy dowiedziałem się o wzorach projektowych Gang of Four (GoF) , co najmniej 10 lat temu, mam wrażenie, że te 23 wzory powinny być tylko małą próbką czegoś znacznie większego, co lubię nazywać Przestrzenią Wzorów . Ta hipotetyczna przestrzeń wzorów składa się ze wszystkich godnych polecenia rozwiązań …
Rozmawiałem z jednym z naszych starszych programistów, który działa w branży od 20 lat. Jest dość dobrze znany w Ontario z bloga, który pisze. Dziwne jest to, co mi powiedział: powiedział, że istnieje kawałek kodu, który jest koszmarem do pracy, ponieważ został napisany z podręcznika i nie uwzględnia prawdziwego świata. …
Szukam rekomendacji tutaj. Mam problem z tym, czy lepiej zwrócić NULL, czy pustą wartość z metody, gdy zwracana wartość nie jest obecna lub nie można jej ustalić. Jako przykład weź następujące dwie metody: string ReverseString(string stringToReverse) // takes a string and reverses it. Person FindPerson(int personID) // finds a Person …
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.