Inżynieria oprogramowania

14
Po co używać string.Empty nad „” podczas przypisywania do obiektu string

Uruchomiłem StyleCop na moim kodzie i jedną z rekomendacji SA1122 jest użycie łańcucha. Puste zamiast "" przy przypisywaniu pustego łańcucha do wartości. Moje pytanie brzmi: dlaczego jest to uważana za najlepszą praktykę. Czy jest to uważane za najlepszą praktykę? Zakładam, że nie ma różnicy...

14
Czy MVC dotyczy tylko Internetu?

Jest to niemal natychmiastowe, ilekroć rozmawiam z programistami na temat Model View Controller ( MVC ), mówią, że wysyłasz zapytanie do adresu URL, na którym serwer tworzy jednostkę (MODEL) i zapewnia wizualną reprezentację tego modelu. Czy to oznacza, że ​​MVC jest przeznaczony tylko do...

14
Znajdź „dziurę” na liście liczb

Jaki jest najszybszy sposób na znalezienie pierwszej (najmniejszej) liczby całkowitej, która nie istnieje na danej liście nieposortowanych liczb całkowitych (i która jest większa niż najmniejsza wartość na liście)? Moje prymitywne podejście polega na ich sortowaniu i przeglądaniu listy, czy jest...

14
Kiedy stosować typedef?

Jestem trochę zdezorientowany, czy i kiedy powinienem używać typedef w C ++. Uważam, że to balansuje pomiędzy czytelnością a klarownością. Oto przykładowy kod bez żadnych typedefs: int sum(std::vector<int>::const_iterator first, std::vector<int>::const_iterator last) { static...

14
TDD: Czy robię to dobrze?

Jestem nowym programistą (uczę się tylko od około roku), a moim celem, aby być w tym lepszym, niedawno dowiedziałem się o TDD. Chciałem przyzwyczaić się do używania go, ponieważ wydaje się to bardzo pomocne. Chciałem to sprawdzić i upewnić się, że używam go poprawnie. Co ja robię: Pomyśl o nowej...

14
Dlaczego C ++ pisać kompilator?

Zastanawiałem się, dlaczego C ++ jest dobrym wyborem do napisania kompilatora. Oczywiście, C jest również dobry do tego celu, ponieważ wiele kompilatorów jest napisanych w C lub C ++, ale tym razem bardziej interesuję się C ++. Jakieś dobre powody? Szukałem tego w Internecie, ale nie mogę znaleźć...

14
Historyczne pochodzenie implikacji Scali

Scala została nazwana złożona przez wielu moich kolegów z jej bogatych funkcji, a niektórzy nawet obwinili wszystkie jej nowe funkcje. Podczas gdy większość programistów zna funkcje OO, a przynajmniej przyzwoici wiedzą także o programowaniu funkcjonalnym, w Scali jest jedna cecha, dla której nie...

14
decydująca różnica między LGPL i AGPL

Jaka jest decydująca różnica między LGPL (v3) a AGPL (v3)? Oba mogą być stosowane w produkcji komercyjnej, oba mogą być również pakowane w płatny produkt. Dopóki nie zmieniam ich kodu źródłowego, nie jestem zmuszony dołączać kodu źródłowego do mojego produktu. Więc gdzie leży ta znacząca...

14
Niezdefiniowane zachowanie w Javie

Czytałem to pytanie w SO, które omawia niektóre typowe niezdefiniowane zachowania w C ++ i zastanawiałem się: czy Java ma również niezdefiniowane zachowanie? Jeśli tak, to jakie są najczęstsze przyczyny nieokreślonego zachowania w Javie? Jeśli nie, to jakie funkcje Javy uwalniają go od takich...