Inżynieria oprogramowania

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

3
Ile szczegółów należy wprowadzić w pierwszej iteracji projektu?
Właśnie rozpocząłem nowy osobisty projekt (Python) i piszę, co stanowi „wstępny szkic” programu, minimum wymagane do zrobienia tego, co chcę. Nie wprowadzam jeszcze obszernej obsługi błędów / wyjątków ani estetycznych elementów interfejsu użytkownika (nawet w przypadkach, gdy wiem, że te rzeczy ostatecznie będą potrzebne), a dokumentacja jest wystarczająca, aby pomóc …

6
Jaki jest cel planowania pokera w sprincie?
Nasz analityk biznesowy i kierownicy projektu mówią nam o wymaganiach klienta dotyczących historii. Przy każdym planowaniu Sprint, my (programiści) prosimy o grę w pokera planistycznego. Poprosili nas wszystkich o rozważenie „złożoności”, a nie „wysiłku”. Jesteśmy naprawdę zdezorientowani i marnujemy czas na nasze spotkania. Jeden z programistów podniósł pytanie: „Co naprawdę …
15 agile  scrum  planning 

2
Czy nagłówek licencji w plikach źródłowych jest wymagany podczas stosowania licencji Apache Software License 2.0 na projekt? [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 5 miesięcy temu . Czytanie w dodatku Apache Software License 2.0 Nie jestem pewien, co dokładnie muszę teraz zrobić: DODATEK: Jak zastosować licencję …

2
Jaki jest najlepszy sposób na stworzenie modelu odpowiedzi na błąd REST API i systemu kodów błędów?
Moja implementacja REST zwróci błędy w JSON z następną strukturą: { "http_response":400, "dev_message":"There is a problem", "message_for_user":"Bad request", "some_internal_error_code":12345 } Sugeruję utworzenie specjalnego modelu odpowiedzi, w którym mogę przekazać potrzebne wartości właściwości (dev_message, message_for_user, some_internal_error_code) i zwrócić je. W kodzie byłoby to podobne do tego: $responseModel = new MyResponseModel(400,"Something is …
15 php  mvc  rest  api 


2
Oswajanie klas „funkcji narzędziowych”
W naszej bazie kodu Java wciąż widzę następujący wzorzec: /** This is a stateless utility class that groups useful foo-related operations, often with side effects. */ public class FooUtil { public int foo(...) {...} public void bar(...) {...} } /** This class does applied foo-related things. */ class FooSomething { …

3
Programowanie bez obiektowe w języku obiektowym [zamknięte]
Zamknięte . To pytanie jest oparte na opiniach . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby można było na nie odpowiedzieć faktami i cytatami, edytując ten post . Zamknięte 5 lat temu . Ostatnio przydzielono mi zadanie tworzenia kalkulatora z dodawaniem, odejmowaniem, mnożeniem, dzieleniem i mocą …

4
Jak wykonać programowanie oparte na testach
Mam ponad 2-letnie doświadczenie w tworzeniu aplikacji. W ciągu tych dwóch lat moje podejście do rozwoju było następujące Analizuj wymagania Tożsamość Główny komponent / Obiekty, Wymagane funkcje, Zachowanie, Proces i ich ograniczenia Twórz klasy, relacje między nimi, ograniczenia dotyczące zachowania i stanów obiektów Twórz funkcje, przetwarzaj z ograniczeniami behawioralnymi zgodnie …

3
Schemat bazy danych dla listy zadań do wykonania
Usiłuję stworzyć bardzo prostą aplikację listy zadań do wykonania z PHP, MySQL, szablonami Jquery i JSON ... Jednak mój schemat wydaje się komplikować rzeczy w JSON. Jak najlepiej to zrobić? Nowa tabela dla każdej listy, zawierająca elementy. lub tabela dla list i tabela dla elementów, które są jakoś połączone? Ponieważ …

9
Jakie byłyby dobre argumenty faktyczne, aby przekonać kierownictwo wysokiego szczebla do rozważenia programowania funkcjonalnego? [Zamknięte]
Zamknięte . To pytanie jest oparte na opiniach . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby można było na nie odpowiedzieć faktami i cytatami, edytując ten post . Zamknięte 5 lat temu . Istnieje mnóstwo „teoretycznych” argumentów przemawiających za tym, dlaczego programowanie funkcjonalne jest dobrym pomysłem …

2
Kto ponosi winę za ten zakres w oparciu o odniesienie do tymczasowości?
Poniższy kod wygląda na pierwszy rzut oka raczej nieszkodliwie. Użytkownik używa tej funkcji bar()do interakcji z niektórymi funkcjami biblioteki. (Mogło to nawet działać przez długi czas, odkąd bar()zwróciło odwołanie do wartości nietrwałej lub podobnej.) Teraz jednak zwraca po prostu nową instancję B. Bponownie ma funkcję, a()która zwraca odwołanie do obiektu …
15 c++11 

5
Dlaczego * deklaracja * danych i funkcji jest konieczna w języku C, skoro definicja jest zapisana na końcu kodu źródłowego?
Rozważ następujący kod „C”: #include<stdio.h> main() { printf("func:%d",Func_i()); } Func_i() { int i=3; return i; } Func_i()jest zdefiniowany na końcu kodu źródłowego i nie jest dostarczana żadna deklaracja przed użyciem w main(). Na samym czasie, gdy kompilator widzi Func_i()się main(), że wychodzi z main()i dowie Func_i(). Kompilator w jakiś sposób …

2
Czy to dobra struktura rozwiązania Visual Studio dla usługi internetowej RESTful opartej na domenie?
Buduję .NET 4.5 C # Web API RESTful rozwiązanie i chciałbym, aby ktoś mi powiedział, czy moje rozwiązanie projektu jest poprawne i / lub mądre (-wystarczy?) Dla rozwiązania zaprojektowanego przy użyciu Domain Driven Design, proszę. Rozwiązanie zostało podzielone na 6 projektów: /Baza (Niczego nie ma) Projekt internetowy stanowi interfejs między …

6
Metoda prywatna testu jednostkowego w c ++ przy użyciu klasy znajomego
Wiem, że jest to dyskusyjna praktyka, ale załóżmy, że jest to dla mnie najlepsza opcja. Zastanawiam się, jaka jest właściwa technika, aby to zrobić. Podejście, które widzę jest następujące: 1) Zrób klasę przyjaciela klasą, której metodę chcę przetestować. 2) W klasie przyjaciela utwórz metodę publiczną, która wywołuje metodę prywatną testowanej …

4
Czy przesada jest zawijanie kolekcji do prostej klasy tylko ze względu na lepszą czytelność?
Mam następującą mapę: Map<Double, List<SoundEvent>> soundEventCells = new HashMap<Double, List<SoundEvent>>(); Ten HashMapmapy doublewartości (które są punktami, w czasie) do odpowiadającej SoundEvent„komórki”: każdy z „komórek” może zawierać kilka SoundEventsekund. Dlatego jest zaimplementowany jako List<SoundEvent>, ponieważ właśnie tak jest. Ze względu na lepszą czytelność kodu pomyślałem o zaimplementowaniu bardzo prostej statycznej klasy …

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.