Inżynieria oprogramowania

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


8
Jeden czy wiele plików do testowania jednostkowego jednej klasy?
Badając najlepsze praktyki testowania jednostek, aby pomóc w opracowaniu wytycznych dla mojej organizacji, natknąłem się na pytanie, czy lepiej lub przydatniej jest oddzielić urządzenia testowe (klasy testowe) czy zachować wszystkie testy dla jednej klasy w jednym pliku. Fwiw, mam na myśli „testy jednostkowe” w czystym sensie, że są to testy …


4
dlaczego wszystkie samouczki programowania funkcjonalnego są takie matematyczne?
Próbowałem nauczyć się programowania funkcjonalnego i większość samouczków wykorzystuję matematykę jako przykłady bardziej skomplikowanych konstrukcji (nawet prostych w niektórych przypadkach). Dlaczego to? Wyobrażam sobie, że można użyć czegoś łatwiejszego. To utrudnia naukę. Informacje podstawowe: Piszę oprogramowanie od 12 lat. Rozumiem niektóre pojęcia, takie jak zamknięcia, funkcje obywateli pierwszej klasy i …


6
Jakie znaki specjalne należy zezwolić na numer telefonu?
Projektuję więc stronę internetową, która będzie używana dla użytkowników globalnych, w tym użytkowników z Kanady, USA, Indii, Wielkiej Brytanii itp. Muszę zastosować weryfikację tego pola numeru telefonu, ale nie jestem pewien, jak najlepiej to zrobić . Niektóre z ważnych formatów mogę myśleć o to: 1800123456 (Indie) Zastosowanie „-” w amerykańskich …


9
Czy „if password == XXXXXXX” wystarcza dla minimalnego bezpieczeństwa?
Jeśli utworzę login dla aplikacji o średnim lub niskim ryzyku bezpieczeństwa (innymi słowy, nie jest to aplikacja bankowa ani nic takiego), czy mogę zweryfikować hasło wprowadzone przez użytkownika, mówiąc tylko: if(enteredPassword == verifiedPassword) SendToRestrictedArea(); else DisplayPasswordUnknownMessage(); Wydaje się, że łatwo jest być skutecznym, ale z pewnością nie miałbym nic przeciwko, …

11
Jak wyglądają pierwsze książki? [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 …
20 books 


3
Jak mam podać dodatkowe informacje na temat wyjątku?
Za każdym razem, gdy muszę podać dodatkowe informacje na temat wyjątku, zastanawiam się, który sposób jest właściwy . Na potrzeby tego pytania napisałem przykład. Załóżmy, że istnieje klasa, w której chcemy zaktualizować Abbreviationwłaściwość. Z SOLIDOWEGO punktu widzenia może to nie być idealne, ale nawet gdybyśmy przeszli metodę roboczą za pośrednictwem …
20 c#  exceptions 

2
Czy w git nie jest dobrym pomysłem utworzenie tagu o takiej samej nazwie jak usunięta gałąź?
Mam projekt z modelem rozgałęzień git, który z grubsza odpowiada modelowi git-flow nvie . Nasze gałęzie wydania mają nazwy SemVer , npv1.5.2 Kiedy gałąź wydania otrzyma zielone światło do produkcji, zamykamy gałąź, łącząc ją w master, stosując tag, a następnie usuwając gałąź. Ponieważ natychmiast usuwamy gałąź wydania, używamy tego samego …

1
Czy powielanie dokumentacji dotyczącej implementacji / zastąpień interfejsu jest dobre czy złe?
Mamy więc taki interfejs /// <summary> /// Interface for classes capable of creating foos /// </summary> public interface ICreatesFoo { /// <summary> /// Creates foos /// </summary> void Create(Foo foo); /// <summary> /// Does Bar stuff /// </summary> void Bar(); } Niedawno odtworzyliśmy historię dokumentacji, która polegała na wygenerowaniu i …


5
Czy przekazywanie argumentów jako stałych odwołań do przedwczesnej optymalizacji?
„Przedwczesna optymalizacja jest źródłem wszelkiego zła” Myślę, że wszyscy możemy się zgodzić. I bardzo się staram tego uniknąć. Ale ostatnio zastanawiałem się nad praktyką przekazywania parametrów przez const Reference zamiast Value . Zostałem nauczony / nauczony, że nietrywialne argumenty funkcji (tj. Większość typów nieprymitywnych) powinny być przekazywane przez odniesienie do …

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.