Inżynieria oprogramowania

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

4
Śledzenie wszystkich obiektów klasy
Jestem nowy w programowaniu obiektowym i ciągle napotyka ten problem. (Programuję w Javie) Byłem trochę niechętny, aby o to zapytać, ponieważ wydaje się to tak podstawowym problemem, ale nie mogę znaleźć tutaj żadnych informacji ani pytań na ten temat, a żadne z nich nie podręczniki, które przeczytałem (na dość podstawowym …

6
Jeśli model sprawdza poprawność danych, czy nie powinien generować wyjątków w przypadku złych danych wejściowych?
Czytając to pytanie SO , wydaje się, że odrzucanie wyjątków w celu sprawdzania poprawności danych wejściowych użytkownika jest niezadowolone. Ale kto powinien zweryfikować te dane? W moich aplikacjach wszystkie walidacje są wykonywane w warstwie biznesowej, ponieważ tylko sama klasa naprawdę wie, które wartości są prawidłowe dla każdej z jej właściwości. …

7
Zagwarantowanie, że nagłówki są wyraźnie zawarte w pliku CPP
Myślę, że ogólnie dobrą praktyką jest #includestosowanie nagłówka dla wszystkich typów używanych w pliku CPP, niezależnie od tego, co jest już zawarte w pliku HPP. Więc mogę na przykład #include <string>zarówno w HPP, jak i CPP, mimo że nadal mógłbym kompilować, jeśli pominąłem go w CPP. W ten sposób nie …

7
Dlaczego istnieje tak wiele typów liczbowych (bit, int, float, double, long)?
Nauczyłem się PHP, Java i C. Teraz jestem ciekawy, dlaczego istnieje tak wiele rodzajów liczbowych typów danych, takich jak bit, int, float, double i long. Dlaczego nie zrobić tylko jednego typu dla liczb? Czy ma to jakąś korzyść? Może jeśli użyjemy liczb całkowitych do przechowywania tak małych liczb, możemy zaoszczędzić …
9 numbers 

5
Agile MVP (najcenniejszy gracz / programista)
Ostatnio byłem zaangażowany w zwinny projekt (wykorzystujący scrum), w którym kierownictwo wpadło na pomysł, aby zespół mianował programistę „MVP”, a także QA „MVP” na końcu każdego sprintu, pod głosowaniem zespół. Następnie MVP otrzymuje niewielką nagrodę pieniężną i bezpłatny lunch, a także trofeum do wystawienia na biurku. Do tej pory mieliśmy …

3
Tworzenie relacji encji w REST: Czy mogę utworzyć element nadrzędny, publikując w identyfikatorze podrzędnym?
Obecnie projektujemy interfejs API REST w celu uzyskania dostępu do klasycznych danych klientów. Jednym z elementów interfejsu API są zasoby użytkownika. Aktywa są dodawane w ramach danej usługi. Interfejs API zaplecza doda zasób tylko do użytkownika w ramach danej usługi. Zatem nie ma relacji użytkownik - zasób, ale relacja użytkownik …

1
Nazewnictwo powiązanych klas i interfejsów
Stworzyłem ObjectParserklasę, która analizuje dane w silnie typowane obiekty, używając IObjectParserDataSourcejako źródła danych (dane mogą być plikiem Excel, plikiem tekstowym, tablicą, ciągiem zapytania itp.). Przykłady moich wdrożeń IObjectParserDataSourceto: TextFileObjectParserDataSource ExcelFileObjectParserDataSource Te nazwy klas są dla mnie naprawdę długie i skomplikowane. Mógłbym je wymienić: TextFileDataSource ExcelFileDataSource Wprowadza to jednak pewien poziom …


6
Pobieranie maksymalnej wartości z zakresu w nieposortowanej tablicy
Mam nieposortowaną tablicę . Mam zapytania, w których podaję zakres, a następnie zwracana jest maksymalna wartość z tego zakresu. Na przykład: array[]={23,17,9,45,78,2,4,6,90,1}; query(both inclusive): 2 6 answer: 78 Jaki algorytm lub strukturę danych tworzę, aby szybko uzyskać maksymalną wartość z dowolnego zakresu. (Istnieje wiele zapytań) EDYCJA: To jest rzeczywiście prosta …


2
Jak obudować zmienne „globalne” w języku C #? /najlepsze praktyki
Chcesz poprawić ten post? Podaj szczegółowe odpowiedzi na to pytanie, w tym cytaty i wyjaśnienie, dlaczego Twoja odpowiedź jest poprawna. Odpowiedzi bez wystarczającej ilości szczegółów mogą być edytowane lub usuwane. W języku C # jaka jest najlepsza praktyka w zakresie enkapsulacji zmiennych, których muszę używać na wiele metod? Czy wystarczy …

1
Informacja o prawach autorskich do licencji MIT na dzieła pochodne
Myślimy o użyciu oprogramowania na licencji MIT typu open source w jednym z naszych projektów internetowych ( wtyczka jQuery datetime ). Pierwsza linia licencji MIT to: Prawa autorskie (c) [rok] [właściciele praw autorskich] Jeśli dołączymy wtyczkę taką, jaka jest (bez dokonywania jakichkolwiek zmian), rozumiem, że musimy zawrzeć licencję tylko z …


6
Czy jest jakaś różnica między interfejsami a klasami abstrakcyjnymi, które mają tylko metody abstrakcyjne?
Powiedzmy, że mamy klasę abstrakcyjną i niech ta klasa ma tylko abstrakcyjne metody. Czy ta klasa abstrakcyjna różni się od interfejsu, który ma tylko te same metody? Chcę wiedzieć, czy istnieją jakieś różnice zarówno filozoficzne, obiektywne, jak i podstawowe w implementacji języka programowania między klasą abstrakcyjną zawierającą tylko elementy abstrakcyjne …

4
Wiosna - zamieszanie związane z konfiguracją?
Gdzieś czytałem, że Spring oferuje wygodę w porównaniu z konfiguracją. Ale ludzie z Spring wprowadzają tak wiele zmian w konfiguracji, że teraz jestem naprawdę zdezorientowany, jeśli chodzi o użycie konfiguracji xml lub adnotacji. Chciałbym, aby ktokolwiek zasugerował pewną metodologię lub praktyczną zasadę przy użyciu XML i adnotacji. Przykłady w SO …
9 java  spring 

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.