Inżynieria oprogramowania

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

2
Pierwszy język programowania bankomatów
Pierwsze bankomaty wykonywały zadania takie jak bankomat, były to maszyny offline, które współpracowały z kartami dziurkowanymi impregnowanymi węglem i 6-cyfrowym kodem PIN. Maksymalna wypłata kartą wynosiła 10 funtów, a każda z nich była kartą jednorazowego użytku - karty połknięte z bankomatu! Pierwszy bankomat został zainstalowany w Londynie w 1967 roku, …

9
Czy rozsądne jest nie pisanie testów jednostkowych, ponieważ mają one tendencję do komentowania w późniejszym terminie lub ponieważ testy integracyjne są bardziej wartościowe?
Rozmawiałem o testach jednostkowych / integracji z kolegą, a on przedstawił interesujący argument przeciwko pisaniu testów jednostkowych. Jestem wielkim zwolennikiem testów jednostkowych (przede wszystkim JUnit), ale jestem zainteresowany, aby usłyszeć opinie innych, ponieważ przedstawił kilka interesujących uwag. Podsumowując swoje punkty: Gdy wystąpią poważne zmiany w kodzie (nowy zestaw POJO, refaktoryzacja …


7
Czy częste, skomplikowane konflikty scalania są oznaką problemów?
W naszym zespole używamy Git jako naszej kontroli źródła. Mamy kilka obszarów kodu, które są prawie niezależne, ale nakładają się na siebie. Ostatnio dyskutowaliśmy o przepływach pracy i podejściach do korzystania z kontroli źródła. Jedną skargą, która pojawia się, gdy promuję użycie przepływu pracy gałęzi funkcji, jest to, że ludzie …

6
Jaki jest najlepszy sposób na zainicjowanie odniesienia dziecka do jego rodzica?
Tworzę model obiektowy, który ma wiele różnych klas nadrzędnych / podrzędnych. Każdy obiekt podrzędny ma odniesienie do swojego obiektu nadrzędnego. Mogę wymyślić (i próbowałem) kilka sposobów na zainicjowanie referencji nadrzędnej, ale uważam, że każde podejście ma znaczące wady. Biorąc pod uwagę opisane poniżej podejścia, które są najlepsze ... lub jeszcze …

2
MVCS - Model View Store Store
Niedawno postanowiłem zacząć uczyć się programowania na iOS i w tym celu czytam Programowanie na iOS: The Big Nerd Ranch Guide . W książce autorzy opisują wzorzec projektowy MVCS - Model-View-Controller-Store , podstawową ideą jest to, że ponieważ wiele aplikacji korzysta z wielu zewnętrznych źródeł danych, utrzymywanie logiki żądań w …

6
Czy Lisp nadal ma jakąś specjalną funkcję, która NIE została przyjęta przez inne języki programowania?
Czy Lisp nadal ma jakąś specjalną funkcję, która NIE została przyjęta przez inne języki programowania? Przez Lisp mam na myśli wszystkie języki programowania Lisp jako całość. Powiedziano mi, jak niesamowite jest Lisp i wiem, że wiele języków zostało zainspirowanych przez Lisp. Ale czy Lisp nadal ma jakąś ekskluzywną funkcję projektową, …


6
Format arkusza kalkulacyjnego przyjazny dla Gita? [Zamknięte]
Staramy się przenieść proces dokumentacji projektu z Dokumentów Google do zestawu hostowanych przez siebie repozytoriów Git. Dokumenty tekstowe są wystarczająco przyjazne dla Gita, ponieważ zwykle nie potrzebujemy żadnego fantazyjnego formatowania, po prostu przekonwertujemy wszystko na, powiedzmy, multimarkdown z opcją osadzenia LaTeXa w skomplikowanych przypadkach. Ale arkusze kalkulacyjne to zupełnie inna …

9
Rozwijanie na serwerze produkcyjnym
Dzisiaj zostałem wykrzyczany za opracowanie aplikacji na serwerze produkcyjnym. Cytat: „ rozwój na serwerze produkcyjnym jest niedopuszczalny - nigdy! ” Oto sytuacja. Skonfigurowałem wystąpienie programistyczne: http://example.com:3000 Instancja produkcyjna to: http://example.com Kończę wszystkie prace programistyczne http://example.com:3000i kiedy klient jest zadowolony ze zmian, przenoszę je do http://example.com. Aplikacja, z którą pracuję, jest …

9
Czy algorytm jest ważniejszy niż język programowania?
Podczas bieżącego (2013) konkursu Google Code Jam wystąpił problem polegający na tym, że C ++ i Java mieli ponad 200 linii kodu w porównaniu do osób w Pythonie, które rozwiązały ten sam problem przy użyciu tylko 40 linii kodu. Python nie jest bezpośrednio porównywalny z C ++ i Javą, ale …
35 java  c++  algorithms  python 

12
Czy stopniowa zmiana metodologii pisania kodu wpłynęła na wydajność systemu? I czy powinno mnie to obchodzić?
TD; DR: Było trochę zamieszania co do tego, o co pytałem, więc oto najważniejszy pomysł na pytanie: Zawsze chciałem, aby pytanie było takie, jakie jest. Być może początkowo nie wyraziłem tego dobrze. Ale intencja zawsze była „ modułowa, oddzielona, ​​luźno sprzężona, odsprzężona, zrefaktoryzowany kod ” znacznie wolniejszy z samej swojej …

2
Licencja Unicode
Warunki korzystania z Unicode stanowią, że każde oprogramowanie korzystające z ich plików danych (lub ich modyfikacji) powinno zawierać odniesienia do licencji Unicode. Wydaje mi się, że większość bibliotek Unicode ma funkcje sprawdzania, czy znak jest cyfrą, literą, symbolem itp., A zatem będzie zawierał modyfikację plików danych Unicode (zwykle w postaci …

4
Jak przejść na C ++ 11?
Od jakiegoś czasu programuję w C ++, ale przede wszystkim koncentruję się wokół niskopoziomowych funkcji C ++. Rozumiem przez to głównie pracę ze wskaźnikami i surowymi tablicami. Myślę, że takie zachowanie jest znane jako używanie C ++ jako C z klasami. Mimo to wypróbowałem C dopiero niedawno. Byłem mile zaskoczony, …
35 c++  c++11 


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.