Inżynieria oprogramowania

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

2
Czy istnieje zasada interfejsu „pytaj tylko o to, czego potrzebujesz”?
Zacząłem używać zasady projektowania i korzystania z interfejsów, która mówi w zasadzie: „proś tylko o to, czego potrzebujesz”. Na przykład, jeśli mam kilka typów, które można usunąć, utworzę Deletableinterfejs: interface Deletable { void delete(); } Następnie mogę napisać ogólną klasę: class Deleter<T extends Deletable> { void delete(T t) { t.delete(); …


2
Jakość danych w testach regresji relacyjnych baz danych
Pracowałem nad aplikacją internetową do zarządzania kolekcjami muzealnymi typu open source, która ma być używana do śledzenia artefaktów, które muzeum przystąpiło, podarowało, pożyczyło lub w inny sposób nabyło. Obejmowało to zaprojektowanie i utworzenie dość dużej bazy danych (w odniesieniu do moich wcześniejszych doświadczeń), która przechowuje wszelkiego rodzaju różnorodne informacje (informacje …

11
Czy obraz powinien mieć możliwość zmiany rozmiaru w OOP?
Piszę aplikację, która będzie miała Imageencję, i już mam problemy z ustaleniem, za kogo powinno być każde zadanie. Najpierw mam Imageklasę. Ma ścieżkę, szerokość i inne atrybuty. Następnie stworzyłem ImageRepositoryklasę do wyszukiwania obrazów za pomocą jednej i przetestowanej metody, np findAllImagesWithoutThumbnail(). : Ale teraz muszę też móc createThumbnail(). Kto powinien …

4
Jak wyglądałby nowy język, gdyby został zaprojektowany od podstaw, aby był łatwy w TDD?
W przypadku niektórych najpopularniejszych języków (Java, C #, Java itp.) Czasami wydaje się, że pracujesz w sprzeczności z językiem, gdy chcesz w pełni TDD kodu. Na przykład w Javie i języku C # będziesz chciał wyśmiewać wszelkie zależności swoich klas, a większość frameworkowców zaleci, byś wyśmiewał interfejsy, a nie klasy. …

4
Jak wygląda dobra „definicja wykonania” dla dojrzałego zespołu?
Patrząc na przykłady definicji wykonanych w różnych źródłach, zwykle zawierają one punkty podobne kod ukończony uruchamiane testy jednostkowe kod sprawdzony lub sparowany kod zalogowany zaktualizowana dokumentacja … W naszym zespole mamy podobną listę, ale nikt nigdy na nią nie patrzy, ponieważ te punkty wydają się tak rażąco oczywiste, że nikt …

6
Jak mogę uzyskać więcej doświadczenia w programowaniu [zamknięte]
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 …
9 c++  experience  qt 


4
Analizowanie użycia pamięci: Java vs C ++ Znikoma?
W jaki sposób wykorzystanie pamięci przez obiekt całkowity napisany w Javie porównuje \ wykorzystanie pamięci przez obiekt całkowity napisany w C ++? Czy różnica jest znikoma? Bez różnicy? Duża różnica? Zgaduję, że jest tak samo, ponieważ int jest int niezależnie od języka (?) Powodem, dla którego o to zapytałem, jest …

4
Zwraca interfejs lub klasę
Załóżmy, że mam metodę public List<User> GetBatchOfUsers(IEnumerable<int> userIDs) { List<User> users = new List<User>(); // some database stuff return users; } Przeczytałem, że lepiej byłoby zwrócić interfejs (albo IListalbo IEnumerable), niż zwrócić a List. Niektóre argumenty, które słyszałem, to to, że ukrywa dane i daje programistom API elastyczność zmiany wewnętrznej …
9 c#  interfaces  class 


3
Jakieś powody, by nie używać wielu systemów kontroli wersji?
Pracuję nad projektem, który wykorzystuje GIT jako główny system kontroli wersji dla pnia, oficjalnych oddziałów i większości podprojektów / nieoficjalnych gałęzi. Jako taki, chcę, aby mój własny oddział używał GIT, aby umożliwić pozostałej społeczności dostęp do mojego oddziału przy użyciu systemu, który znają. Pracuję jednak nad częścią projektu, która nakłada …


9
printf - źródło błędów? [Zamknięte]
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 …
9 c++ 

2
Czy właściwe jest stworzenie historii użytkownika do usuwania niewielkich elementów istniejącej funkcjonalności?
W przypadku obszaru aplikacji, który został opracowany, pojawiło się żądanie usunięcia elementu z menu. Wiem, że to drobiazg, ale jak traktujesz to w Scrumie? Jestem przyzwyczajony do używania historii użytkowników do dodawania funkcjonalności, a nie usuwania. Więc moje pytanie brzmi: czy powinienem stworzyć w tym celu historię użytkownika, w jakiś …
9 agile  scrum 

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.