Inżynieria oprogramowania

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


8
Dlaczego książki .Net mówią o alokacji pamięci stosu a sterty?
Wygląda na to, że każda książka .net mówi o typach wartości vs. typach referencyjnych i wskazuje na (często niepoprawnie) stan, w którym każdy typ jest przechowywany - sterty lub stosu. Zwykle znajduje się w kilku pierwszych rozdziałach i jest przedstawiany jako bardzo ważny fakt. Myślę, że jest nawet objęty egzaminami …
36 .net 

10
Czy powinienem używać instrukcji switch, czy długo, jeśli… jeszcze łańcuchy?
Często, gdy słyszę o instrukcji switch, jest ona odkładana jako sposób na zastąpienie długich, jeśli ... jeszcze łańcuchów. Ale wydaje się, że kiedy używam instrukcji switch, piszę więcej kodu, który napisałbym, gdyby ... inaczej. Masz również inne problemy, takie jak utrzymywanie wszystkich zmiennych dla wszystkich połączeń w tym samym zakresie …

8
Czy Linq ma oszałamiający wpływ na programistów .NET?
Wielu z nas zaczęło widzieć to zjawisko w jQuery około rok temu, kiedy ludzie zaczęli pytać, jak zrobić absolutnie szalone rzeczy, takie jak odzyskiwanie ciągu zapytania za pomocą jQuery . Różnica między biblioteką (jQuery) a językiem (JavaScript) jest najwyraźniej zatracona przez wielu programistów i skutkuje tym, że tam, gdzie nie …

11
Napisanie minimalnego kodu, aby przejść test jednostkowy - bez oszukiwania!
Jak robiąc TDD i pisząc test jednostkowy, jak oprzeć się pokusie „oszukiwania” podczas pisania pierwszej iteracji testowanego kodu „implementacyjnego”? Na przykład: muszę obliczyć silnię liczby. Zaczynam od testu jednostkowego (przy użyciu MSTest) czegoś takiego jak: [TestClass] public class CalculateFactorialTests { [TestMethod] public void CalculateFactorial_5_input_returns_120() { // Arrange var myMath = …
36 unit-testing  tdd 

30
Czy często drukuje się kod na papierze? [Zamknięte]
Lubię trzymać moje linie kodu poniżej 80 znaków, ponieważ: Nie muszę przewijać w poziomie; Wiem, że linia jest prawdopodobnie zbyt skomplikowana, jeśli przekroczy ten limit; i ładnie drukuje się na papierze. Jeśli chodzi o to drugie, spotkałem tylko kilka osób, które faktycznie drukują kod, aby na niego spojrzeć (jestem jednym …

3
Czy testy integracyjne mają na celu powtórzenie wszystkich testów jednostkowych?
Powiedzmy, że mam funkcję (napisaną w Ruby, ale powinna być zrozumiała dla wszystkich): def am_I_old_enough?(name = 'filip') person = Person::API.new(name) if person.male? return person.age > 21 else return person.age > 18 end end W testach jednostkowych stworzyłbym cztery testy, które obejmowałyby wszystkie scenariusze. Każdy będzie używał wyśmiewanego Person::APIobiektu metodami przerywanymi …

3
Czy to antipattern, aby użyć peek () do zmodyfikowania elementu strumienia?
Załóżmy, że mam strumień Rzeczy i chcę je „wzbogacić” w połowie strumienia, mogę peek()to zrobić, np .: streamOfThings.peek(this::thingMutator).forEach(this::someConsumer); Załóżmy, że mutowanie Rzeczy w tym punkcie kodu jest poprawnym zachowaniem - na przykład thingMutatormetoda może ustawić pole „lastProcessor” na bieżący czas. Jednak peek()w większości kontekstów oznacza „patrz, ale nie dotykaj”. Używa …

3
Ponowne użycie połączonego oddziału, dobra praktyka?
Obecnie tworzyłem nowy oddział za każdym razem, gdy muszę dodawać nową funkcję do mojej aplikacji. Kiedy moja funkcja jest skończona i funkcjonalna, łączę ją z gałęzią master. Ale później, kiedy muszę zaktualizować tę funkcję (jak ulepszenie), czy lepiej jest utworzyć nową gałąź, czy też muszę zmienić bazę poprzedniej wersji na …
36 git  branching 





1
Jaka jest różnica między indeksowaniem btree i rtree?
Zauważyłem na MySQLWorkbench, że możesz wybrać sposób przechowywania swoich indeksów, zanim opracujesz projekt. Rodzaje przechowywania to: BTREE RTREE HASZYSZ Badając to, znalazłem pewne informacje, które były prawie nad moją głową, więc szukam praktycznych informacji na temat różnicy między nimi i / lub dlaczego powinieneś wybierać między sobą. Ponadto nigdy wcześniej …

5
Czy istnieją jakieś studia przypadków dotyczące przepisywania wskaźników sukcesu / niepowodzenia oprogramowania?
Widziałem wiele postów o przepisywaniu aplikacji jako złych, doświadczenia ludzi na ten temat tutaj na temat programistów oraz artykuł, który przygotowałem Joel Spolsky na ten temat, ale nie ma twardych dowodów ani studiów przypadków. Poza dwoma przykładami podanymi przez Joela i kilkoma innymi postami tutaj, co robisz ze złym kodem …

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.