Pytania otagowane jako design

Pytania dotyczące rozwiązywania problemów i planowania rozwiązania poprzez projektowanie oprogramowania.

6
Ciągi kodujące na stałe, które nigdy się nie zmienią
Tak więc, starając się napisać program do koniugacji czasowników (algorytmicznie, nie poprzez zbiór danych) dla języka francuskiego, natknąłem się na niewielki problem. Algorytm koniugacji czasowników jest właściwie dość prosty w przypadku 17 lub więcej przypadków czasowników i działa według określonego wzorca dla każdego przypadku; dlatego sufiksy koniugacji dla tych 17 …
39 design  strings 

12
Dokumentacja w OOP powinna unikać określania, czy „osoba pobierająca” wykonuje jakieś obliczenia?
Program CS mojej szkoły unika jakiejkolwiek wzmianki o programowaniu obiektowym, więc czytam sam, aby go uzupełnić - w szczególności Object Oriented Software Construction autorstwa Bertrand Meyer. Meyer wielokrotnie podkreśla, że ​​klasy powinny ukrywać jak najwięcej informacji o ich implementacji, co ma sens. W szczególności wielokrotnie argumentuje, że atrybuty (tj. Statyczne, …


5
Zapisujesz obiekt własną metodą lub inną klasą?
Jeśli chcę zapisać i pobrać obiekt, czy powinienem utworzyć inną klasę do obsługi go, czy lepiej byłoby to zrobić w samej klasie? A może mieszanie obu? Które jest zalecane zgodnie z paradygmatem OOD? Na przykład Class Student { public string Name {set; get;} .... public bool Save() { SqlConnection con …

5
Przekazać identyfikator lub obiekt?
Czy przy podawaniu metody logiki biznesowej w celu uzyskania encji domeny parametr powinien akceptować obiekt lub identyfikator? Na przykład, czy powinniśmy to zrobić: public Foo GetItem(int id) {} albo to: public Foo GetItem(Foo foo) {} Wierzę w przekazywanie obiektów w całości, ale co z tym przypadkiem, w którym otrzymujemy przedmiot …

5
Najlepsze praktyki korzystania z przestrzeni nazw w C ++ [zamknięte]
Kilka miesięcy temu przeczytałem Czysty kod wuja Boba , który miał ogromny wpływ na sposób, w jaki piszę kod. Nawet jeśli wydawało się, że powtarza rzeczy, które każdy programista powinien wiedzieć, zebranie ich wszystkich razem i wdrożenie ich w praktyce skutkuje znacznie czystszym kodem. W szczególności odkryłem, że dzielenie dużych …
38 design  c++  namespace 

17
Projektowanie oprogramowania: Zbuduj to szybko czy dobrze?
Budując nietrywialną aplikację, najlepiej skupić się na szybkim działaniu i na skrótach w kodzie, takich jak mieszanie logiki modelu z widokami, łamanie enkapsulacji - typowy zapach kodu? Lub, czy lepiej jest poświęcić czas na zbudowanie większej architektury, zbudować ją poprawnie, ale ryzykując, że cały ten dodatkowy kod może nie zostać …

19
Nadużywane lub nadużywane techniki programowania [zamknięte]
Czy są jakieś techniki programowania, które okażą się nadużywane (IE są używane o wiele bardziej niż powinny) lub nadużywane, lub używane trochę do wszystkiego, nie będąc jednocześnie dobrym rozwiązaniem wielu problemów, które ludzie próbują rozwiązać z tym. Mogą to być wyrażenia regularne, jakiś wzorzec projektowy, a może algorytm lub coś …
38 design 


9
Jak radzić sobie z różnymi stylami programistycznymi (odgórne vs. oddolne) w zespole?
Załóżmy, że właśnie zacząłeś pracować w bardzo małym zespole przy {obecnie stosunkowo małym, ale mam nadzieję, że większym później} projekcie. Należy pamiętać, że jest to rzeczywisty projekt przeznaczony do wykorzystania przez innych programistów w prawdziwym świecie, a nie jakiś projekt akademicki, który ma zostać złomowany pod koniec semestru. Jednak kod …

9
Czy pisząc kod zorientowany obiektowo, powinienem zawsze kierować się wzorcem projektowym?
Czy istnieje jakiś wzorzec projektowy dla dowolnego programu obiektowego? Pytam o to, ponieważ ostatnio widziałem implementację Doorklasy z Lock. Było to częścią testu, a odpowiedź brzmiała, że ​​kod jest zgodny ze wzorcem Null Object: class Lock { public: virtual void close() = 0; virtual void open() = 0; virtual bool …

5
Co zrobić, gdy masz do czynienia z zadaniem programowania, którego nigdy nie wykonałeś?
Swoją karierę jako programista .NET rozpocząłem 3 miesiące temu i po długim planie szkoleniowym na temat różnych technologii, wzorców i koncepcji programiści, którzy mnie nadzorowali, zdecydowali, że jestem gotów dołączyć do jednego z wielu projektów obsługiwanych przez firmę. Jestem bardzo podekscytowany, że w końcu mogę zacząć kodować. Zespół, do którego …

11
Współbieżność: jak podchodzisz do projektu i debugujesz implementację?
Od kilku lat rozwijam systemy współbieżne i całkiem dobrze rozumiem ten temat, pomimo braku formalnego wykształcenia (tj. Bez dyplomu). Istnieje kilka nowych języków, o których ostatnio ostatnio mówi się, a które mają ułatwić współbieżność, takich jak Erlang i Go. Wygląda na to, że ich podejście do współbieżności odzwierciedla moje własne …

9
Projektuj przyszłe zmiany lub rozwiązuj problem [zamknięty]
Pisząc kod lub podczas projektowania, próbujesz uogólnić problem w pierwszej instancji lub rozwiązać bardzo specyficzny problem. Pytam o to, ponieważ próba uogólnienia problemu komplikuje rzeczy (co może nie być konieczne), az drugiej strony bardzo trudno będzie rozszerzyć konkretne rozwiązanie, jeśli nastąpi zmiana w wymaganiu. Myślę, że rozwiązaniem jest znalezienie środkowej …
37 design 

6
Czy należy unikać zmiennych sesji?
Kiedyś w dużej mierze polegałem na zmiennych sesji, ale ostatnio stwierdziłem, że wiele z nich jest niepotrzebnych, zamiast tego używam takich parametrów, jak parametry ciągu zapytania. Mój kolega nie chce używać zmiennych sesji. Czy jest to realistyczny cel i czy należy unikać zmiennych sesji z jakichkolwiek praktycznych powodów? Czy można …

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.