Inżynieria oprogramowania

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

2
Czy ** kwargs jest antypoterem?
W naszej wewnętrznej bazie kodów znajduje się dużo kodu, który wywołuje nasze biblioteki wewnętrznie - biblioteki te często mają wiele argumentów (myśl matplotlib), a nasz kod często wykonuje tylko określone zadanie i po prostu przekazuje **kwargskolejną wywoływaną funkcję. Na przykład: def our_method(dataframe, **kwargs): result = do_something_with_data(dataframe) external_module.draw(result, **kwargs) Chociaż **kwargsuniemożliwia …
16 python 

2
Jaka jest różnica między przyrostowym a iteracyjnym podejściem do tworzenia oprogramowania?
Podejście przyrostowe jest sposób tworzenia oprogramowania, gdy model jest przeznaczony, wykonywane i testowane przyrostowo (trochę bardziej dodaje za każdym razem), aż produkt jest gotowy. Obejmuje zarówno rozwój, jak i utrzymanie. Produkt jest definiowany jako gotowy, gdy spełnia wszystkie swoje wymagania Iteracyjna projekt jest metodologia Konstrukcja oparta na cyklicznym procesie prototypów, …

6
Zrozumienie statycznego słowa kluczowego
Mam doświadczenie w programowaniu w Javie, JavaScript i PHP. Czytam Microsoft Visual C # 2010 krok po kroku, co moim zdaniem jest bardzo dobrą książką na temat zapoznania się z językiem C #. Wydaje mi się, że mam problemy ze zrozumieniem statycznego słowa kluczowego. Z tego, co rozumiem do tej …

3
Licencja na darmowe, ale zamknięte oprogramowanie źródłowe
Opracowałem prostą aplikację, którą chcę wypuścić za darmo, ale nie planuję wydać kodu źródłowego. Chcę, aby aplikacja była swobodnie dostępna, ale nie chcę, aby ktokolwiek ją sprzedawał lub inżynieria wsteczna. Licencja MIT wygląda na prostą i ładną, ale pozwala też każdemu ją sprzedać. Czy jest jakaś licencja dla mnie odpowiednia, …

2
Wdrażanie DDD: użytkownicy i uprawnienia
Pracuję nad małą aplikacją, próbując zrozumieć zasady projektowania opartego na domenie. Jeśli się powiedzie, może to być projekt pilotażowy dla większego projektu. Staram się podążać za książką „Implementing Domain-Driven Design” (autor: Vaughn Vernon) i próbuję wdrożyć podobne, proste forum dyskusyjne. Sprawdziłem również próbki IDDD na github. Mam pewne trudności z …

2
Migracje bazy danych i gniazda wdrażania platformy Azure
Planuję wypchnąć nową aplikację internetową do usługi Azure Web App Service (poprzednia witryna Azure). Chciałbym skorzystać ze szczelin wdrożeniowych, aby móc przetestować moje wdrożenie przed przekazaniem go do produkcji. Wszystko w porządku, o ile nie wymaga zmiany schematu DB. Ale jeśli nastąpi zmiana schematu, nie mogę mieć dwóch wersji oprogramowania …



2
Jak reprezentować zestaw w JSON?
JSON obsługuje następujące struktury danych (odpowiedniki Java): Skalarne, Tablica / Lista i Mapa. A Setnie jest obsługiwany po wyjęciu z pudełka w JSON. Pomyślałem o kilku sposobach przedstawienia zestawu w JSON: [1] - Jako lista Jednak lista ma własną kolejność, więc następujących dwóch list, ["a", "b"]a ["b", "a"]nie są równe …

3
Czym dokładnie jest aplikacja dla wielu dzierżawców?
Zgodnie z definicją dostępną w Internecie jest „ Wielodostępność to architektura, w której pojedyncze wystąpienie aplikacji obsługuje wielu klientów ”. To znaczy, że mam witrynę restauracji lub szkoły i zapewniam dostęp do innej restauracji lub szkoły, aby móc korzystać z mojej aplikacji z własnymi danymi, korzystając z danych uwierzytelniających, które …

4
Metodologie cyklu życia oprogramowania dla zespołów One Man [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 …

2
Jak radzisz sobie ze zrozumieniem abstrakcji w kodzie?
Przyglądając się nowej bazie kodu, chciałbym zacząć od podejścia oddolnego. Gdzie rozumiem jeden plik, a następnie przechodzę do następnej abstrakcji. Ale często zapominam, co robi abstrakcja niższego poziomu. Będę w tym momencie, w którym znajdę się w niemal nieskończonej pętli, wracając do plików, które wcześniej w pełni zrozumiałem, a następnie …

6
Jak zaimplementować haszowanie zmiennoprzecinkowe z przybliżoną równością
Powiedzmy, że mamy następującą klasę Python (problem istnieje w Javie tak samo z equalsi hashCode) class Temperature: def __init__(self, degrees): self.degrees = degrees gdzie degreesjest temperatura w kelwinach jako liczba zmiennoprzecinkowa. Teraz chciałbym wdrożyć testy równości i mieszanie Temperaturew taki sposób porównuje wartości zmienne do różnicy epsilon zamiast bezpośrednich testów …

5
Przekazać obiekt dwukrotnie do tej samej metody lub skonsolidować za pomocą połączonego interfejsu?
Mam metodę, która tworzy plik danych po rozmowie z tablicą cyfrową: CreateDataFile(IFileAccess boardFileAccess, IMeasurer boardMeasurer) Oto boardFileAccessi boardMeasurerta sama instancja Boardobiektu, który implementuje zarówno IFileAccessi IMeasurer. IMeasurerjest stosowany w tym przypadku do pojedynczej metody, która spowoduje, że jeden pin na płycie będzie aktywny, aby wykonać prosty pomiar. Dane z tego …

6
Jaki jest konkretny problem z dopuszczaniem osób pobierających?
Nie szukam opinii na temat semantyki, ale po prostu przypadek, w którym rozsądne użycie geterów jest prawdziwą przeszkodą. Może wpędza mnie to w niekończącą się spiralę polegania na nich, może alternatywą jest czystsze i automatycznie obsługuje getery itp. Coś konkretnego. Słyszałem wszystkie argumenty, słyszałem, że są złe, ponieważ zmuszają cię …

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.