Inżynieria oprogramowania

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

4
Czy mogę (w uzasadniony sposób) odmówić podpisania NDA w celu pracy pro bono? [Zamknięte]
Zamknięte. To pytanie jest nie na temat . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby było tematem dotyczącym wymiany stosów inżynierii oprogramowania. Zamknięte 7 lat temu . Mój przyjaciel (nazwijmy go Joe ) pracuje nad obiecującym projektem i poprosił mnie o pomoc. W ramach przyjaźni zgodziłem …

5
Czy mogę sprzedawać rozwidlony kod GPL?
Wiem, że można sprzedawać kod GPL, ale chciałem wiedzieć, czy można sprzedawać kod GPL, który został rozwidlony i zmodyfikowany. Rozwidlony i zmodyfikowany kod będzie nadal dostępny do używania, modyfikowania i redystrybucji.
9 licensing  gpl 

5
Jakie są zalety wzorca delegowania w porównaniu do wzorca obserwatora?
We wzorze delegowanym tylko jeden obiekt może bezpośrednio nasłuchiwać zdarzeń innego obiektu. We wzorcu obserwatora dowolna liczba obiektów może nasłuchiwać zdarzenia określonego obiektu. Kiedy projektując klasę, która musi powiadamiać inne obiekty o zdarzeniach, dlaczego miałbyś kiedykolwiek używać wzorca delegowanego zamiast wzorca obserwatora? Widzę wzorzec obserwatora jako bardziej elastyczny. Możesz mieć …



2
Jak zorganizować repozytoria git dla projektu?
Pracuję nad modułem synchronizacji treści dla Drupala. Istnieje moduł serwera, który znajduje się na stronie internetowej i udostępnia treści za pośrednictwem usługi internetowej. Istnieje również moduł klienta, który znajduje się w innej witrynie i pobiera i importuje zawartość w regularnych odstępach czasu. Serwer jest tworzony na Drupal 6. Klient jest …

7
Jak utrzymać stabilność pnia, gdy testy trwają długo?
Mamy trzy zestawy pakietów testowych: „Mały” apartament, którego uruchomienie zajmuje tylko kilka godzin „Średni” apartament, który zajmuje wiele godzin, zwykle jest uruchamiany co noc (co noc) „Duży” pakiet, którego uruchomienie zajmuje tydzień + Mamy też kilka krótszych pakietów testowych, ale nie skupiam się na nich tutaj. Obecna metodologia polega na …

5
Wyjątki dotyczące „błędu programowania” - Czy moje podejście jest prawidłowe?
Obecnie próbuję ulepszyć sposób korzystania z wyjątków i znalazłem ważne rozróżnienie między wyjątkami, które oznaczają błędy programowania (np. Ktoś przekazał wartość NULL jako argument lub wywołał metodę na obiekcie po jego usunięciu), a tymi, które oznaczają błąd w operacja, która nie jest błędem osoby dzwoniącej (np. wyjątek We / Wy). …
9 java  c#  c++  exceptions 

3
Czy zamknięcia z efektami ubocznymi są uważane za „funkcjonalny styl”?
Wiele współczesnych języków programowania obsługuje pewne pojęcia zamknięcia , np. Fragmentu kodu (bloku lub funkcji) Może być traktowany jako wartość, a zatem przechowywany w zmiennej, przekazywany do różnych części kodu, definiowany w jednej części programu i wywoływany w zupełnie innej części tego samego programu. Może przechwytywać zmienne z kontekstu, w …

5
Jak odnieść sukces na warsztatach specyfikacji BDD?
Dzisiaj próbowaliśmy wprowadzić BDD w naszym procesie tworzenia oprogramowania, prowadząc warsztat specyfikacji. Na te warsztaty mieliśmy 2 programistów, 1 tester i 1 analityk biznesowy. Warsztaty trwały 1:30 i pod koniec udało nam się wymyślić kilka scenariuszy BDD dla naszej nowej funkcji. Staraliśmy się skoncentrować na znalezieniu scenariuszy, które moglibyśmy przeoczyć, …
9 bdd 

3
Jak mogę uzasadnić „zarządzanie zależnościami”?
Obecnie próbuję uzasadnić przyjęcie zarządzania zależnościami dla kompilacji (ala Maven, Ivy, NuGet) i utworzenie wewnętrznego repozytorium dla modułów współdzielonych, z których mamy kilkanaście przedsiębiorstw. Jakie są główne zalety tej techniki budowy? Te, które do tej pory mam: Ułatwia proces dystrybucji i importowania współdzielonych modułów, zwłaszcza aktualizacji wersji. Wymaga dokładnego udokumentowania …

2
Wersja Bump przed rozpoczęciem nowego rozwoju lub tagowaniem wydania, co jest lepsze?
Niektóre projekty wypaczają wersję przed rozpoczęciem nowego rozwoju, podczas gdy inne projekty wypaczają wersję podczas oznaczania wydania. Które podejście jest lepsze? Jeśli numer wersji nie zostanie zmieniony na początku nowej fazy, programiści mogą zapomnieć o jego zmianie i po prostu wypuścić program. Jeśli numer wersji zmienił się przed oznaczeniem wydania, …

4
Jak wdrożyć aplikację do przetwarzania poleceń?
Chcę stworzyć prostą, sprawdzoną koncepcję aplikacji (REPL), która pobiera liczbę, a następnie przetwarza polecenia na tym numerze. Przykład: zaczynam od 1. Następnie piszę „ add 2”, daje mi 3. Następnie piszę „ multiply 7”, daje mi 21. Następnie chcę wiedzieć, czy jest liczbą pierwszą, więc piszę „ is prime” (na …

1
Co należy zrobić z nazwami klas, które są sprzeczne (wspólne) z nazwami ram
Co należy zrobić, gdy najbardziej oczywistą nazwą klasy dla komponentu jest struktura? W moim przypadku muszę stworzyć klasę opisującą żądanie HTTP. Oczywiście najczęstszą nazwą jest „wzięty” jako System.Web.HttpRequest. Co powinienem zrobić? Ten projekt będzie używany w kontekście internetowym, więc naprawdę nie wolę zmusić ludzi do nie importowania przestrzeni nazw System.Web …
9 c#  .net  naming  namespace 

5
Czy klasy zagnieżdżone są niedoceniane?
Nie próbuję powiedzieć, że wiem coś, czego wszyscy inni nie wiedzą, ale rozwiązuję coraz więcej projektów za pomocą klas zagnieżdżonych, więc jestem ciekawy, czy mam poczucie akceptowalności korzystania z tego pozornie rzadko używanego mechanizm projektowania. To prowadzi mnie do pytania: czy schodzę z natury złą drogą z powodów, które odkryję, …
9 c#  design 

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.