Inżynieria oprogramowania

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

30
Jak obchodzić się z ludźmi, którzy leżą na swoim CV [zamknięte]
Przeprowadzam wywiady techniczne, aby obsadzić kilka pozycji .NET. Wiele osób, z którymi przeprowadzam wywiad, naprawdę dobrze zna platformę .NET, ale uważam, że co najmniej 90% upiększa swój zestaw umiejętności od „trochę” do „dość drastycznie”. Czasami wytwarzają umiejętności odpowiednie do stanowiska, o które się ubiegają, a czasem nie. Większość ludzi, z …

5
Co powinno, a czego nie powinno być w pliku nagłówkowym? [Zamknięte]
Jakie rzeczy absolutnie nigdy nie powinny być zawarte w pliku nagłówkowym? Jeśli na przykład pracuję z udokumentowanym standardowym formatem przemysłowym, który ma wiele stałych, czy dobrą praktyką jest ich definiowanie w pliku nagłówkowym (jeśli piszę parser dla tego formatu)? Jakie funkcje powinny przejść do pliku nagłówka? Jakie funkcje nie powinny?
71 c  headers 

7
W jaki sposób nazwisko Null powoduje problemy w wielu bazach danych?
Przeczytałem artykuł o BBC. Jednym z podanych przez nich przykładów jest to, że osoby o nazwisku „Null” mają problemy z wprowadzeniem swoich danych na niektórych stronach internetowych. Nie podano wyjaśnienia dotyczącego napotkanego błędu. Ale o ile wiem, ciąg „Null” i faktyczna wartość Null jest zupełnie inna (z punktu widzenia bazy …
71 database  null 

9
Czy możemy założyć podczas testowania oprogramowania, że ​​użytkownik nie wykonałby tak głupich działań na oprogramowaniu?
Na przykład: Podczas przeprowadzania testów funkcjonalnych formularza w aplikacji internetowej przetestujemy pola, wprowadzając różnego rodzaju losowe wartości wejściowe. Zasadniczo my jako użytkownicy aplikacji internetowej nie wprowadzamy losowo wartości w polach. Po co więc uwzględniać wszystkie te przypadki testowe, które mogą / mogą nie prowadzić do błędów, gdy prawdopodobieństwo pojawienia się …

4
Dlaczego git pull domyślnie wykonuje scalanie zamiast rebase?
Rozważ następującą sytuację: Masz klon repozytorium git Masz kilka lokalnych zatwierdzeń (które nie zostały jeszcze nigdzie wypchnięte) W zdalnym repozytorium znajdują się nowe zatwierdzenia, których jeszcze nie uzgodniono Więc coś takiego: Jeśli wykonasz git pullustawienia domyślne, otrzymasz coś takiego: Jest tak, ponieważ git wykonał scalenie. Istnieje jednak alternatywa. Możesz zamiast …
71 git 

5
Dlaczego nie używałbyś dyrektywy „using” w C #?
Istniejące standardy kodowania w dużym projekcie C # zawierają zasadę, że wszystkie nazwy typów są w pełni kwalifikowane, co zabrania stosowania dyrektywy „używającej”. Więc zamiast tego, co znajome: using System.Collections.Generic; .... other stuff .... List<string> myList = new List<string>(); (Prawdopodobnie nie jest to zaskoczeniem, że varjest również zabronione). Kończę z: …

7
Jak wziąć odpowiedzialność za kod, gdy kolega wprowadza niepotrzebne poprawki bez uprzedzenia?
Jeden z moich kolegów z zespołu jest specjalistą od wszystkich transakcji w naszym sklepie IT i szanuję jego wgląd. Czasami jednak przegląda mój kod (jest szefem naszego zespołu, więc się tego spodziewałem) bez uprzedzeń. Czasami więc przegląda moje zmiany, zanim osiągną cel końcowy i wprowadzają zmiany od razu ... a …

15
Czy jest możliwe osiągnięcie bezwzględnego stanu zerowego błędu dla oprogramowania na dużą skalę?
Mówię na przykład o ponad 20-30 milionach linii kodu, na przykład oprogramowania w skali i złożoności programu Autodesk Maya. Jeśli zamrozisz programowanie tak długo, jak to konieczne, czy rzeczywiście możesz naprawić wszystkie błędy, dopóki po prostu nie będzie ani jednego błędu, jeśli coś takiego można zweryfikować komputerowo? Jakie są argumenty …

19
Przejrzyj przed lub po zatwierdzeniu kodu, co jest lepsze?
Tradycyjnie sprawdzaliśmy kod przed zatwierdzeniem, miałem dzisiaj kłótnię z moim kolegą, który wolał przegląd kodu po zatwierdzeniu. Po pierwsze, oto trochę tła, Mamy doświadczonych programistów, a także nowych pracowników z niemal zerowym doświadczeniem w programowaniu. Chcielibyśmy wykonać szybkie i krótkie iteracje, aby wypuścić nasz produkt. Wszyscy członkowie zespołu znajdują się …

13
Dobre, proste powody posiadania wielu środowisk
Przez całą moją karierę pracowałem w firmach, które miały zbiór różnych środowisk do różnych celów. Zawsze mieliśmy mniej więcej nasze środowisko pulpitu, środowisko testowe, środowisko kontroli jakości, środowisko pomostowe i środowisko produkcyjne. Dotyczyło to zarówno serwerów / aplikacji, jak i wszelkich używanych przez nas źródeł danych. Kiedy zaczynałem w mojej …

15
Przestałem kodować dla zabawy, czy to zły znak? [Zamknięte]
W pewnym momencie po prostu przestałem kodować dla zabawy. Chodziłem do pracy, kończyłem swoje zadania, a po powrocie do domu pisałem rzeczy dla zabawy. Jednak teraz idę do domu i staram się unikać komputera. Wolę czytać gazetę, oglądać telewizję, wychodzić do baru itp. Czy to zły znak? Mam na myśli, …
71 coding 



9
Co oznacza XXX w komentarzu? [Zamknięte]
Co ludzie zazwyczaj oznaczają, gdy widzisz XXXw komentarzu. Czasami zobaczę taki komentarz: # XXX - This widget really should frobulate the whatsit Oczywiście mogę powiedzieć, co oznacza komentarz, ale co ogólnie oznacza XXX? Czy to mówi „To jest hack”, a może „Może powinniśmy wrócić do tego później”? A może mówi …

3
Jaki jest powód nieużywania [[nodiscard]] C ++ 17 prawie wszędzie w nowym kodzie?
C ++ 17 wprowadza [[nodiscard]]atrybut, który pozwala programistom oznaczać funkcje w taki sposób, że kompilator generuje ostrzeżenie, jeśli zwracany obiekt zostanie odrzucony przez program wywołujący; ten sam atrybut można dodać do całego typu klasy. Przeczytałem o motywacji tej funkcji w oryginalnej propozycji i wiem, że C ++ 20 doda atrybut …
70 c++ 

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.