Inżynieria oprogramowania

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

5
Zgłaszanie i wyławianie wyjątków w tej samej funkcji / metodzie
Napisałem funkcję, która prosi użytkownika o wprowadzenie danych, dopóki użytkownik nie wprowadzi dodatniej liczby całkowitej (liczby naturalnej). Ktoś powiedział, że nie powinienem wyrzucać i wychwytywać wyjątków w mojej funkcji i pozwolić, aby wywołujący moją funkcję je obsługiwał. Zastanawiam się, co sądzą o tym inni programiści. Prawdopodobnie niewłaściwie wykorzystuję wyjątki w …
10 exceptions 

5
Czy komentarz do metody powinien zawierać zarówno podsumowanie, jak i zwrócony opis, gdy często są tak podobne?
Jestem zwolenniczką odpowiednio udokumentowanego kodu i doskonale zdaję sobie sprawę z jego wad . To nie wchodzi w zakres tego pytania. Lubię przestrzegać zasady dodawania komentarzy XML dla każdego członka publicznego, biorąc pod uwagę, jak bardzo lubię IntelliSense w Visual Studio. Jest jednak jedna forma redundancji, która przeszkadza nawet tak …

5
Analiza języka programowania
W SICP autorzy stwierdzają ( sekcja 1.1 ), że istnieją trzy podstawowe „mechanizmy” języków programowania: wyrażenia prymitywne , które reprezentują najprostsze byty, których dotyczy język środki kombinacji , dzięki którym elementy złożone są budowane z prostszych środki abstrakcji , za pomocą których elementy złożone mogą być nazywane i przetwarzane jako …


3
Czy istnieje znany algorytm planowania pojedynków turniejowych?
Zastanawiam się tylko, czy istnieje już algorytm planowania turniejów, którego mógłbym użyć, a nawet nieco dostosować. Oto moje wymagania: Każda zmienna liczba przeciwników należących do zmiennej liczby drużyn / klubów musi być sparowana z przeciwnikiem Dwóch przeciwników nie może pochodzić z tego samego klubu Jeśli jest nieparzysta liczba graczy, 1 …
10 algorithms 

2
kod umów / stwierdzeń: co ze zduplikowanymi czekami?
Jestem wielkim fanem pisania stwierdzeń, umów lub wszelkiego rodzaju czeków dostępnych w języku, którego używam. Jedną z rzeczy, która mnie trochę niepokoi, jest to, że nie jestem pewien, jaka jest powszechna praktyka postępowania z duplikatami kontroli. Przykładowa sytuacja: najpierw piszę następującą funkcję void DoSomething( object obj ) { Contract.Requires<ArgumentNullException>( obj …

4
LINQ a warstwa dostępu do danych
Nauczyłem się zawsze obsługiwać dowolny kod dostępu do danych w całkowicie oddzielnej „warstwie” od mojej logiki biznesowej i kodu interfejsu użytkownika. To zawsze była dla mnie bardzo dobra architektura, a wszelkie „zasady” i najlepsze praktyki, które widzę, wciąż pasują do tego stylu kodowania, szczególnie Zasada Jednej Odpowiedzialności . Do większości …

3
BitBucket - co jest haczykiem? (TANSTAAFL, prawda?)
Możliwości BitBucket i ceny (do 5 użytkowników za darmo) sprawiły, że zastanawiałem się, na czym polega haczyk ... w końcu nie ma czegoś takiego jak darmowy lunch. Co BitBucket wychodzi z mojego nieodpłatnego udziału, poza przystojnym mężczyzną, który może swobodnie zamieszczać w swoich materiałach promocyjnych (zgodnie z warunkami świadczenia usług)?

2
Jaki jest dobry sposób na zapoznanie się z PHP pochodzącym z ASP.NET? [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 4 lata temu . Obecnie bardzo dobrze czuję się w tworzeniu narzędzi / aplikacji internetowych w środowisku ASP.NET. Nie chcę opuszczać TBH, ponieważ …

5
Config Class / Struct: Pattern czy Anti-Pattern? Alternatywy?
Jeśli dodasz nowe opcje konfiguracji do programu, może on często wywoływać mnóstwo efektów falowania, jeśli chodzi o uzyskanie opcji tam, gdzie trzeba działać. Istnieją trzy podstawowe sposoby radzenia sobie z tym, o których jestem świadomy: Przekaż wszystkie ustawienia konfiguracji do części programu, które potrzebują ich jawnie jako prymitywów. Jest to …


6
Czy szacunek czasu jest równy obietnicy w Scrumie?
Jeśli oszacowanie nie jest obietnicą, to jako właściciel produktu, jak mogę dostarczyć moje projekty, nie wiedząc, jak długo to potrwa? Czy zespół Scrumowy działa wydajniej, jeśli traktujemy prognozy czasu jako obietnicę? Ile badań (przygotowanie, wysiłek, aby zrozumieć problem) w historii wystarczy, aby uzyskać właściwą ocenę? Co z nieoczekiwanymi problemami technicznymi …

1
Wiele organizacji kodu aplikacji Zend
Przez ostatni rok pracowałem nad serią aplikacji opartych na frameworku Zend i koncentrowałem się na złożonej logice biznesowej, do której wszystkie aplikacje muszą mieć dostęp, nawet jeśli nie używają wszystkich (łatwiej niż mieć wiele folderów bibliotecznych dla każdego aplikacji, ponieważ wszystkie są połączone ze wspólnym centrum). Nie wchodząc w szczegółowe …

1
Korzystanie z szablonu procesu kompilacji TFS (przepływ pracy) podczas wdrażania
Zastanawiam się nad wykorzystaniem przepływów pracy kompilacji TFS do złożonych wdrożeń. Niektóre z nich mogą wymagać wdrożenia: Aplikacje i usługi internetowe Baza danych Raporty SSRS Pakiety SSIS Kto wie co jeszcze Podoba mi się fakt, że mogę nadać przepływowi pracy kilka podstawowych parametrów, takich jak kompilacja do wdrożenia, a ona …

4
Czy logika biznesowa naprawdę należy do serwera?
Typowy stos dla aplikacji internetowej to baza danych, serwer z kodem po stronie serwera i użytkownik z przeglądarką z HTML / CSS / JavaScript. Przed rozbudowaną wersją AJAX, MVC, w którym kontroler był kodem po stronie serwera, został zepsuty. Serwer musiał kierować żądania odpowiedzi dotyczące dynamicznych stron internetowych (tj. Szablonowych …

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.