Inżynieria oprogramowania

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

2
Które dane powinny być przechowywane jako „Roszczenie”?
W ASP.Net Core uważam, że Claimsautoryzacja jest bardzo nieokreśloną metodą. Możemy dodać wszystko jako ClaimTypei ClaimValuesparować; grupy, imię, nazwisko, brithdate, canAccessThisURI, isEditor itp. Jednak to podejście (przechowywanie wszystkiego, co można przechowywać jako oświadczenia) spowoduje utworzenie ogromnej tabeli oświadczeń, która zawiera 50% moich danych aplikacji. Zastanawiam się, jako dobrą praktykę, jakie …

3
Czy ręczne pisanie testów jednostkowych jest dowodem na przykład?
Wiemy, że pisanie testów JUnit pokazuje jedną konkretną ścieżkę przez twój kod. Jeden z moich współpracowników skomentował: Ręczne pisanie testów jednostkowych jest dowodem na przykład . Pochodził z Haskell, który ma narzędzia takie jak Quickcheck i umiejętność rozumowania zachowania programu za pomocą typów . Jego implikacją było to, że istnieje …


4
Czy posiadanie funkcji języka generatora, takiego jak „fed”, to dobry pomysł?
PHP, C #, Python i prawdopodobnie kilka innych języków ma yieldsłowo kluczowe, które służy do tworzenia funkcji generatora. W PHP: http://php.net/manual/en/language.generators.syntax.php W języku Python: https://www.pythoncentral.io/python-generators-and-yield-keyword/ W języku C #: https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/ke words / yield Obawiam się, że jako funkcja / funkcja językowa yieldłamie niektóre konwencje. Jednym z nich jest „pewność”. Jest …


7
Czy sprawiam, że moje zajęcia są zbyt szczegółowe? Jak stosować zasadę pojedynczej odpowiedzialności?
Piszę dużo kodu, który obejmuje trzy podstawowe kroki. Zdobądź skądś dane. Przekształć te dane. Umieść te dane gdzieś. Zazwyczaj używam trzech rodzajów zajęć - zainspirowanych ich wzorami projektowymi. Fabryki - aby zbudować obiekt z jakiegoś zasobu. Mediatorzy - aby skorzystać z fabryki, przeprowadzić transformację, a następnie użyć dowódcy. Dowódcy - …

3
Wzorzec C # do czystego obchodzenia się z „darmowymi funkcjami”, unikając klas statycznych typu „torba narzędziowa” w stylu pomocnika
Niedawno przeglądałem kilka klas statycznych typu „torba narzędziowa” pomocnika unoszących się wokół dużych baz kodu C #, z którymi pracuję, w zasadzie takie jak ten bardzo skondensowany fragment kodu: // Helpers.cs public static class Helpers { public static void DoSomething() {} public static void DoSomethingElse() {} } Konkretne metody, które …

3
Zapisywanie na początku pliku czegoś, co znasz tylko na końcu
Tło: Piszę kod C mikrokontrolera, aby zapisać plik EBML. EBML jest jak binarny XML z zagnieżdżonymi elementami, ale zamiast znaczników początkowego i końcowego istnieje identyfikator początkowy, długość, a następnie dane. Piszę to w zewnętrznej pamięci Flash w aplikacji o niskiej mocy, więc chciałbym ograniczyć dostęp do lampy błyskowej do minimum. …

6
Jeżeli testy jednostkowe obejmują wyłącznie oprogramowanie „funkcjonalne”
Używamy StructureMap w nowym projekcie rozwoju oprogramowania. Jeden z członków zespołu wdrożył test jednostkowy, który zasadniczo testuje konfigurację kontenera StructureMap . Robi to, wykonując następujące czynności; Liczy liczbę wystąpień zestawów skonfigurowanych dla klas w naszej przestrzeni nazw aplikacji. Definiuje oczekiwane wystąpienia na poziomie klasy Zapewnia, że ​​oczekiwane wystąpienia są zgodne …

4
Podejście DDD do podstawowych operacji CRUD w złożonej aplikacji zorientowanej na domenę
Moja firma przepisuje naszą aplikację internetową od zera. Jest to aplikacja dla dużych przedsiębiorstw ze złożoną domeną w branży finansowej. Używamy ORM (Entity Framework) do utrwalania. Zasadniczo połowa naszych aplikacji skupia się na gromadzeniu nieprzetworzonych danych od użytkownika, przechowywaniu ich, a następnie druga połowa aplikacji, która zawiera większość naszej rzeczywistej …

3
W jaki sposób rozwój oparty na zachowaniach poprawia przejrzystość, gdy języki naturalne są niejednoznaczne?
Obecnie badam frameworki testowe BDD , takie jak ogórek, i ciekawe, kiedy ludzie mówią ponieważ pliki funkcji są w prostym języku naturalnym, poprawia to przejrzystość i daje wyraźną wizję ale czy język naturalny nie jest przyczyną większości problemów, jakie mamy w inżynierii oprogramowania? Język naturalny jest niejednoznaczny i dlatego wiele …
9 bdd  cucumber 


1
Jak zarządzać testami jednostkowymi w projekcie?
Mam w swoim projekcie kod, który osobiście nazywam tests, a nie testy jednostkowe. Mają być uruchamiane, a wynik musi być oceniony przez człowieka. Zrobiłem to, ponieważ tworzę silnik fizyki i podczas projektowania musiałem zobaczyć, co robię. Więc zrobiłem simulationpakiet w moim module testowym. Są to technicznie testy jednostkowe, ponieważ symulacje …


6
Na którym etapie Agile (SCRUM) powinniśmy zacząć tworzyć testy automatyzacji?
Trochę o mnie - jestem ręcznym testerem od prawie 2 lat w środowisku Agile, używając SCRUM (1-2 tygodniowe sprinty). Dlatego chcę wprowadzić testy automatyzacji w mojej pracy przy użyciu Selenium WebDriver (z Javą). Moje pytanie dotyczy tego, kiedy powinienem ręcznie przetestować funkcjonalność i kiedy powinienem przekonwertować je na testy automatyzacji? …

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.