Inżynieria oprogramowania

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

3
Uwagi dotyczące obsługi błędów
Problem: Od dłuższego czasu martwię się o exceptionsmechanizm, ponieważ uważam, że tak naprawdę nie rozwiązuje tego, co powinien. ROSZCZENIE: Na ten temat toczą się długie debaty i większość z nich ma trudności z porównywaniem exceptionsi zwracaniem kodu błędu. To zdecydowanie nie jest tutaj temat. Próbując zdefiniować błąd, zgodziłbym się z …

6
Czy zgłaszanie nowych wyjątków RuntimeException w nieosiągalnym kodzie jest złym stylem?
Zostałem przydzielony do prowadzenia aplikacji napisanej jakiś czas temu przez bardziej wykwalifikowanych programistów. Natknąłem się na ten fragment kodu: public Configuration retrieveUserMailConfiguration(Long id) throws MailException { try { return translate(mailManagementService.retrieveUserMailConfiguration(id)); } catch (Exception e) { rethrow(e); } throw new RuntimeException("cannot reach here"); } Jestem ciekawy, czy rzucanie RuntimeException("cannot reach here")jest …


6
Czy musimy testować oprogramowanie 32-bitowe w 64-bitowym systemie Windows?
Pracuję w zespole programistów jako programista. Pracuję nad tym samym projektem od trzech lat. Oprogramowanie to 32-bitowa aplikacja C # na platformie .NET 4. Nasza platforma docelowa w systemie Windows 7 (do ubiegłego roku musieliśmy obsługiwać system Windows XP). Oprogramowanie komunikuje się z różnymi niestandardowymi urządzeniami, dla których zostały napisane …

3
Początki wcięć kodu
Chciałbym dowiedzieć się, kto wprowadził wcięcia kodu, a także kiedy i gdzie został wprowadzony. Wydaje się to bardzo ważne dla zrozumienia kodu, ale nie było uniwersalne. Większość kodów Fortran i Basic była (jest?) Niewzruszona, to samo dotyczy Cobola. Jestem prawie pewien, że widziałem nawet stary kod Lisp napisany jako ciągły …

5
Brak centralnej bazy danych
Mam klienta, który chce zbudować stronę internetową / aplikacje mobilne / aplikacje komputerowe, które zajmują się bardzo wrażliwymi danymi (bardziej wrażliwymi niż dane bankowe / karty). Ze względu na wrażliwy charakter danych nie chcą zapisywać ich w centralnej bazie danych, ale nadal chcą, aby ich aplikacje synchronizowały się (powiedzmy, że …

7
Czy logika biznesowa może nie wkradać się do widoku?
Przez ostatnie 3 lata opracowywałem kilka projektów aplikacji internetowych, zarówno osobistych, jak i zawodowych, i wydaje mi się, że nie mogę zrozumieć, czy możliwe jest, że przynajmniej część logiki biznesowej nie znajdzie się w warstwie widoku aplikacji. W większości przypadków wystąpią problemy, takie jak: „Jeśli użytkownik wybrał opcję x, to …


10
Czy uzasadnione jest założenie, że dowolna wielkość fizyczna może być reprezentowana przez 64-bitową liczbę całkowitą bez przepełnienia lub niedopełnienia?
Oryginalny algorytm wyszukiwania binarnego w JDK używał 32-bitowych liczb całkowitych i miał błąd przepełnienia, jeśli (low + high) > INT_MAX( http://googleresearch.blogspot.com/2006/06/extra-extra-read-all-about-it-nearly.html ) . Jeśli przepisujemy ten sam algorytm wyszukiwania binarnego przy użyciu (podpisanych) liczb całkowitych 64-bitowych, czy możemy założyć, że low + highnigdy nie przekroczy INT64_MAX, ponieważ fizycznie niemożliwe jest …

9
Wyjaśnij MVC nie-programistom [zamknięte]
Muszę wyjaśnić MVC nie-programistom. Mianowicie dla kierowników innych działów, w kontekście raportu z postępów. Jedną z rzeczy, które robię, jest zmiana naszej bazy kodu w kierunku separacji MVC. Jaka może być separacja MVC? Dlaczego jest to konieczne, mogą zapytać? Po przeczytaniu dość technicznej odpowiedzi takiej: Co to jest MVC, naprawdę? …
31 mvc 

4
Jak zapobiec warunkom wyścigowym w aplikacji internetowej?
Zastanów się nad witryną e-commerce, w której Alice i Bob edytują listę produktów. Alice poprawia opisy, a Bob aktualizuje ceny. Jednocześnie rozpoczynają edycję widgetu Acme Wonder. Bob kończy jako pierwszy i zapisuje produkt w nowej cenie. Alice potrzebuje nieco więcej czasu na aktualizację opisu, a kiedy skończy, zapisuje produkt z …


3
Czy GCC umiera bez obsługi wątków w systemie Windows? [Zamknięte]
Potrzebuję opinii. GCC zawsze był bardzo dobrym kompilatorem, ale ostatnio traci „atrakcyjność”. Właśnie odkryłem, że w Windows GCC nie ma std::threadwsparcia, zmuszając użytkowników Windows do korzystania z innego kompilatora, ponieważ najbardziej ekscytująca funkcja wciąż jest niedostępna. Ale dlaczego tak naprawdę GCC nadal nie obsługuje wątków w systemie Windows? Problemy z …

10
Jak mogę ukryć swój podpis w programie? [Zamknięte]
Mamy uniwersytecki kurs programowania, a inni studenci zadają pytania dotyczące programowania w naszej grupie na Facebooku. Nie jestem pewien, czy mogę udostępnić wszystkie moje programy, zwłaszcza jeśli jest to coś fajnego do jednego z zadań, ponieważ są one rozpatrywane przez pracowników pomocy technicznej i mogą zauważyć, że ktoś ma ten …
31 copyright 

2
Jak automatycznie generowane są testy jednostkowe Guava?
Guava ma automatycznie wygenerowane przypadki testowe : Guawa ma zdumiewającą liczbę testów jednostkowych: od lipca 2012 r. Pakiet testów guawa obejmuje ponad 286 000 indywidualnych przypadków testowych. Większość z nich jest generowana automatycznie , a nie ręcznie, ale zakres testów Guava jest wyjątkowo dokładny, szczególnie w przypadku com.google.common.collect. Jak zostały …

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.