Inżynieria oprogramowania

Pytania i odpowiedzi dla profesjonalistów, nauczycieli akademickich i studentów pracujących w cyklu życia systemów



6
Jak ustalić, co powinien otrzymać własny kontroler?
Używam wzorca MVC w mojej aplikacji internetowej zbudowanej z PHP. Zawsze staram się ustalić, czy potrzebuję nowego dedykowanego kontrolera do zestawu działań, czy też powinienem umieścić je w już istniejącym kontrolerze. Czy podczas tworzenia kontrolerów obowiązują dobre zasady? Na przykład mogę mieć: AuthenticationController z działaniami: index() aby wyświetlić formularz logowania. …
10 mvc 

2
Czy powinienem używać repozytorium w obiekcie domeny, czy też zepchnąć obiekt domeny z powrotem do warstwy usług?
Pochodzę ze świata skryptów transakcyjnych i dopiero zaczynam patrzeć na DDD. Nie jestem pewien prawidłowego sposobu zintegrowania projektu DDD z trwałością bazy danych. Oto co mam: Klasa usługi o nazwie OrganisationService, której interfejs zawiera metody pobierania i zapisywania instancji obiektów domeny Organizacji. Organizacja jest zagregowanym katalogiem głównym i ma z …

5
Czy istnieją ograniczenia techniczne lub funkcje językowe, które uniemożliwiają działanie mojego skryptu Python tak szybko, jak równoważnego programu w C ++?
Jestem długoletnim użytkownikiem Pythona. Kilka lat temu zacząłem uczyć się C ++, aby zobaczyć, co może zaoferować pod względem szybkości. W tym czasie nadal używałbym Pythona jako narzędzia do prototypowania. Wydawało się, że był to dobry system: zwinne programowanie w Pythonie, szybkie wykonanie w C ++. Ostatnio coraz częściej używam …

5
Wydrukuj następny najmniejszy z 2 ^ i * 5 ^ j gdzie i, j> = 0
Zadano mi to pytanie podczas technicznego przeglądu telefonu i nie zrobiłem tego dobrze. Pytanie zostało zawarte dosłownie poniżej. Generuj {2^i * 5^j | i,j >= 0}posortowaną kolekcję. Ciągłe drukowanie następnej najmniejszej wartości. Przykład: { 1, 2, 4, 5, 8, 10...} „Następny najmniejszy” sprawia, że ​​myślę, że wiąże się to z …
10 algorithms 

6
Projektowanie metod związanych z bazą danych, które lepiej zwrócić: prawda / fałsz czy wpływ na wiersz?
Mam kilka metod, które wykonują pewne zmiany danych w bazie danych (wstawianie, aktualizowanie i usuwanie). ORM używam powrót wiersz dotknięte wartości int dla tych rodzaju metody. Co powinienem zwrócić po „mojej metodzie”, aby wskazać stan powodzenia / niepowodzenia operacji? Rozważ kod, który zwraca int: A.1 public int myLowerLevelMethod(int id) { …

2
Używanie pakietów (klejnotów, jajek itp.) Do tworzenia oddzielnych architektur
Główny problem Widząc dobre wsparcie większość nowoczesnych platform programowania ma do zarządzania pakietami (myślę gem, npm, pipitp), to ma sens, aby zaprojektować aplikację lub system składający się z wewnętrznie opracowanych pakietów, tak aby promować i tworzyć luźno architekturę? Przykład Przykładem może być tworzenie pakietów dostępu do bazy danych, a także …

5
Czy opłaca się uczyć się podstaw języka podstawowego, gdy podstawowym celem jest poleganie na jego ramach? [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 5 lat temu . Pamiętaj, że to nie jest kolejna „Ile [ wstaw tutaj język programowania ] powinienem wiedzieć przed przejściem do [ …


5
Quadtree z duplikatami
Wdrażam quadtree. Dla tych, którzy nie znają tej struktury danych, dołączam następujący mały opis: QuadTree jest strukturą danych i jest w płaszczyźnie euklidesowej co za Octree jest w 3-wymiarowej przestrzeni. Częstym zastosowaniem czworokątów jest indeksowanie przestrzenne. Podsumowując, jak działają, quadtree to kolekcja - powiedzmy tutaj o prostokątach - o maksymalnej …


2
Metody bez parametrów i puste-Paren w Scali
W tej chwili uczę się Scali poprzez Skalę programistyczną Odersky'ego (2. miejsce). Przechodzę do rozdziału 10, w którym zaczyna wprowadzać metody bez parametrów i puste pareny. Po prostu nie mogę tego obejść. Jak dotąd rozumiem tylko, że powinienem używać pustych parens, jeśli metoda ma skutki uboczne i metody bez parametrów. …
10 scala 

4
Celowe zgłaszanie wyjątków w połowach
Czy w typowym if...elsepakiecie z obsługą wyjątków coś w rodzaju poniższego przykładu jest zalecaną praktyką pozwalającą uniknąć powielania kodu? try { if (GetDataFromServer()) { return ProcessData(); } else { throw new Exception(); } catch(Exception ex) { return null; } zamiast... try { if (GetDataFromServer()) { return ProcessData(); } else { …

3
Dziedziczenie: czy kod z nadklasy jest praktycznie * kopiowany * do podklasy, czy też jest * określany przez podklasę *?
Klasa Subjest podklasą klasy Sup. Co to znaczy praktycznie? Lub innymi słowy, jakie jest praktyczne znaczenie „dziedzictwa”? Opcja 1: Kod z Sup jest praktycznie kopiowany do Sub. (jak w „kopiuj-wklej”, ale bez skopiowanego kodu widocznego wizualnie w podklasie). Przykład: methodA()jest metodą pierwotnie w Sup. Sub rozszerza Sup, więc methodA()jest (praktycznie) …

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.