Inżynieria oprogramowania

28
Dlaczego musimy czekać na We / Wy?

Zawsze wiadomo, że operacje na dyskach są powolne i znamy powody ich powolności. Pytanie brzmi więc, dlaczego musimy czekać na We / Wy lub dlaczego istnieje coś takiego jak IOWait itp.? Mam na myśli, że zauważyłem, że kiedy wykonujesz jakieś zadania we / wy w tle, twój komputer zasadniczo działa...

28
Deklarowanie wielu licencji w projekcie GitHub

Od lat jestem wielkim fanem umieszczania licencji na rzeczy udostępniane online, aby ułatwić innym ustalenie, czy i jak mogą ponownie wykorzystać te rzeczy. Zanim GitHub zaczął delikatnie „wypychać” swoich użytkowników do dołączania plików LICENSE do ich repozytoriów, tak naprawdę nie wiedziałem,...

28
Dlaczego nie mogę sprawdzić, czy muteks jest zablokowany?

Wydaje się, że w C ++ 14 pominięto mechanizm sprawdzania, czy std::mutexblokada jest zablokowana, czy nie. Zobacz to SO pytanie: /programming/21892934/how-to-assert-if-a-stdmutex-is-locked Jest na to kilka sposobów, np. Przy użyciu; std::mutex::try_lock() std::unique_lock::owns_lock() Ale...

28
C # Generics - Jak uniknąć zbędnej metody?

Załóżmy, że mam dwie klasy, które wyglądają tak (pierwszy blok kodu i ogólny problem są związane z C #): class A { public int IntProperty { get; set; } } class B { public int IntProperty { get; set; } } Klasy te nie mogą być w żaden sposób zmieniane (są częścią zespołu zewnętrznego). Dlatego...

28
Czy wartość stałej może być zmieniana w czasie?

Na etapie programowania istnieją pewne zmienne, które muszą być ustalone w tym samym przebiegu, ale z czasem mogą wymagać modyfikacji. Na przykład, booleanaby zasygnalizować tryb debugowania, więc robimy rzeczy w programie, których normalnie byśmy nie zrobili. Czy źle jest przechowywać te wartości...

28
Czy moja firma łączy oddziały w niewłaściwy sposób?

Ostatnio natknąłem się na artykuł MSDN na temat rozgałęziania i łączenia oraz SCM: Rozgałęzianie i łączenie podkładu - Chris Birmele . W artykule mówią, że „połączenie wielkiego wybuchu” to łączący się antypattern: Big Bang Merge - odroczenie połączenia gałęzi do końca prac rozwojowych i próba...