Inżynieria oprogramowania

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

6
Jak uniknąć dużego i niezgrabnego UITableViewController na iOS?
Mam problem z implementacją wzorca MVC na iOS. Przeszukałem Internet, ale wydaje się, że nie znalazłem żadnego fajnego rozwiązania tego problemu. Wiele UITableViewControllerwdrożeń wydaje się być dość dużych. Większość przykładów, które widziałem, pozwala na UITableViewControllerwdrożenie <UITableViewDelegate>i <UITableViewDataSource>. Te wdrożenia są dużym powodem, dla którego UITableViewControllerrobi się duże. Jednym rozwiązaniem byłoby …

6
Czy należy unikać zmiennych sesji?
Kiedyś w dużej mierze polegałem na zmiennych sesji, ale ostatnio stwierdziłem, że wiele z nich jest niepotrzebnych, zamiast tego używam takich parametrów, jak parametry ciągu zapytania. Mój kolega nie chce używać zmiennych sesji. Czy jest to realistyczny cel i czy należy unikać zmiennych sesji z jakichkolwiek praktycznych powodów? Czy można …


6
Jak powinieneś TDD grać w Yahtzee?
Załóżmy, że piszesz grę TDD w stylu Yahtzee. Chcesz przetestować tę część kodu, która określa, czy zestaw pięciu rzutów matryc jest fularem, czy nie. O ile mi wiadomo, wykonując TDD, przestrzegasz następujących zasad: Najpierw napisz testy Napisz najprostszą możliwą rzecz, która działa Udoskonal i refaktoryzuj Tak więc początkowy test może …
36 unit-testing  tdd 

4
Etykieta podczas zadawania pytań na kanale IRC [zamknięte]
Wiele większych projektów OSS utrzymuje kanały IRC w celu omówienia ich wykorzystania lub rozwoju. Kiedy utknąłem przy korzystaniu z projektu, próbując znaleźć informacje w sieci, nie udało mi się znaleźć sposobu, aby dowiedzieć się, co zrobić, aby wejść na kanał IRC i zapytać. Ale moje pytania są niezmiennie całkowicie ignorowane …

7
Czy istnieją przestarzałe praktyki programowania wielowątkowego i wieloprocesorowego, których nie powinienem już stosować?
Na początku FORTRAN i BASIC zasadniczo wszystkie programy były pisane przy pomocy instrukcji GOTO. W rezultacie powstał kod spaghetti, a rozwiązaniem było ustrukturyzowane programowanie. Podobnie wskaźniki mogą mieć trudne do kontrolowania cechy w naszych programach. C ++ zaczęło się od wielu wskaźników, ale zalecane jest użycie referencji. Biblioteki takie jak …

4
Jakie ograniczenia JVM nakłada na optymalizację wezwania ogona
Clojure nie wykonuje optymalizacji ogona na własną rękę: jeśli masz funkcję rekurencji ogona i chcesz ją zoptymalizować, musisz użyć specjalnej formy recur. Podobnie, jeśli masz dwie wzajemnie rekurencyjne funkcje, możesz je zoptymalizować tylko za pomocą trampoline. Kompilator Scala jest w stanie wykonać TCO dla funkcji rekurencyjnej, ale nie dla dwóch …
36 scala  clojure  jvm  tail-call 

9
Czy programiści są złymi testerami?
Wiem, że to brzmi jak inne pytania, które już zostały zadane, ale w rzeczywistości jest nieco inne. Wydaje się, że ogólnie uważa się, że programiści nie są dobrzy w wykonywaniu roli testowania aplikacji. Na przykład: Joel on Software - Pięć najlepszych (błędnych) powodów, dla których nie masz testerów (moje wyróżnienie) …
36 testing  qa 



8
Czy OOP staje się łatwiejsze czy trudniejsze? [Zamknięte]
Kiedy koncepcje programowania obiektowego zostały wprowadzone do programistów wiele lat temu, wygląda to interesująco, a programowanie jest czystsze. OOP był taki Stock stock = new Stock(); stock.addItem(item); stock.removeItem(item); Łatwiej było to zrozumieć dzięki samoopisowej nazwie. Ale teraz OOP, ze wzorcem takim jak obiekty transferu danych, obiekty wartości, repozytorium, wstrzykiwanie zależności …

3
Wydałem oprogramowanie - jak zmaksymalizować ekspozycję, biorąc pod uwagę brak budżetu i ograniczony czas?
Chciałbym w tej sprawie skontaktować się ze społecznością. Jako programista nie jestem ekspertem od sprzedaży ani guru marketingu - myślę w kodzie i niewiele więcej. Większość programistów, z którymi się zetknęłam, jest podobna do tej, a także są poważnymi szczypcami. Powiedzmy, że jako programista niedawno wypuściłem nowy produkt programowy, który …
36 marketing 

2
Jaki jest właściwy sposób na REST?
Wszyscy obecnie korzystają z SOA , nawet jeśli niektórzy tak naprawdę nie rozumieją, o co w tym wszystkim chodzi. Więc robią to źle. Używając tego jako analogii, wiem, czym jest REST (a przynajmniej tak mi się wydaje) i chcę to zrobić. Ale chcę to zrobić dobrze. Więc moje pytanie brzmi: …

15
Czy powinienem kontynuować samodzielną praktykę kodowania lub nauczyć się profesjonalnego kodowania? [Zamknięte]
Ostatnio pracuję zawodowo, spotykam się z innymi programistami i nawiązuję znajomości w branży. Jedyną rzeczą jest to, że jestem w 100% samoukiem. Spowodowało to, że mój styl bardzo odbiega od stylu tych, którzy są odpowiednio wyszkoleni. Różne są techniki i organizacja mojego kodu. To mieszanka kilku rzeczy, które robię. Zwykle …

9
Kontrola wersji i osobisty plik konfiguracyjny
Nasz projekt wykorzystuje specyficzny dla użytkownika plik konfiguracyjny. Ten plik nie jest obecnie objęty kontrolą wersji, ponieważ jest różny dla każdego użytkownika. Problem polega na tym, że za każdym razem, gdy programista dodaje nowy moduł, który wymaga konfiguracji lub zmienia nazwę istniejących modułów, inni programiści otrzymują błędy, ponieważ ich prywatne …

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.