Inżynieria oprogramowania

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

7
Kiedy powinienem używać DBIx :: Class Perla?
DBIx :: Class to popularny interfejs Perla do dowolnej bazy danych, z którą można się połączyć za pośrednictwem DBI . Istnieje dobra dokumentacja zawierająca szczegółowe informacje techniczne, ale mało informacji na temat jego prawidłowego wykorzystania (w tym sytuacji, w których prawdopodobnie nie chcesz). W wielu sytuacjach ludzie sięgają po niego …
17 perl 

5
Czy funkcja jest natychmiast zanieczyszczona, jeśli przyjmuje funkcję jako parametr?
Ponieważ czystość parametru wejściowego jest nieznana do czasu działania, czy funkcja jest natychmiast uważana za nieczystą, jeśli przyjmuje funkcję jako parametr wejściowy? Powiązane: jeśli funkcja stosuje funkcję czystą, która jest zdefiniowana poza funkcją, ale nie jest przekazywana jako parametr, czy nadal jest czysta, jeśli spełnia kryteria braku efektów ubocznych, a …


4
Czy korzyść z wzorca monad IO w radzeniu sobie z efektami ubocznymi ma charakter wyłącznie naukowy?
Przepraszam za jeszcze jedno pytanie o efekty uboczne FP +, ale nie mogłem znaleźć już istniejącego, który całkiem mi na to odpowiedział. Moje (ograniczone) rozumienie programowania funkcjonalnego jest takie, że efekty stanu / uboczne powinny być zminimalizowane i oddzielone od logiki bezstanowej. Zbieram również podejście Haskella do tego, monady IO, …

3
Wprowadzenie zasady rozgałęziania kontroli wersji dla małego zespołu
Jestem kontrahentem, który niedawno rozpoczął działalność w firmie. Zespół składa się z 3 programistów składających się z 2 deweloperów poziomu średniego i średniego, wkrótce inny na tym samym poziomie i ja (6 lat doświadczenia). Dla obu obecnych programistów jest to ich pierwsza praca poza uniwersytetem / uczelnią i nigdy wcześniej …


5
Co sprawia, że ​​funkcjonalne języki programowania są deklaratywne, a nie imperatywne?
W wielu artykułach opisujących zalety programowania funkcjonalnego widziałem funkcjonalne języki programowania, takie jak Haskell, ML, Scala lub Clojure, nazywane „językami deklaratywnymi”, różniącymi się od języków imperatywnych, takich jak C / C ++ / C # / Java. Moje pytanie brzmi: co sprawia, że ​​funkcjonalne języki programowania są deklaratywne, a nie …

4
Czy zasada pojedynczej odpowiedzialności ma zastosowanie do funkcji?
Według Roberta C. Martina SRP stwierdza, że: Klasa nigdy nie powinna mieć więcej niż jednego powodu do zmiany. Jednak w swojej książce Clean Code , rozdział 3: Funkcje, pokazuje następujący blok kodu: public Money calculatePay(Employee e) throws InvalidEmployeeType { switch (e.type) { case COMMISSIONED: return calculateCommissionedPay(e); case HOURLY: return calculateHourlyPay(e); …

5
Czy wyliczenia tworzą kruche interfejsy?
Rozważ poniższy przykład. Każda zmiana wyliczenia ColorChoice wpływa na wszystkie podklasy IWindowColor. Czy wytryski powodują kruche interfejsy? Czy istnieje coś lepszego niż wyliczenie, które pozwala na większą elastyczność polimorficzną? enum class ColorChoice { Blue = 0, Red = 1 }; class IWindowColor { public: ColorChoice getColor() const=0; void setColor( const …

2
Pozyskiwanie zdarzeń i REST
Natrafiłem na projekt Event Sourcing i chciałbym użyć go w aplikacji, w której potrzebny jest klient REST (a dokładniej RESTful). Jednak nie udało mi się połączyć ich ze sobą, ponieważ REST jest dość podobny do CRUD, a pozyskiwanie zdarzeń jest oparte na zadaniach. Zastanawiałem się, jak zaprojektować tworzenie poleceń na …

1
Dlaczego PHP jest tak znienawidzony? [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 natrafiłem na kilka żartów i komiksów o tym, jak pozornie okropny jest …
17 php 

4
Czy programista front-end powinien kiedykolwiek określać format JSON dla programistów back-end?
Przejmuję frontendową rolę w projekcie. Czy powinienem określać dla moich kolegów z zespołu dokładny format JSON, który ich PHP zwraca do mojego JavaScript? Na przykład, czy powinienem im powiedzieć, że powinni użyć formatu podobnego do opisanego tutaj: Właściwy sposób na strukturyzację JSON na potrzeby konsumpcji A może powinienem zachować jak …

7
Dlaczego tworzenie instancji jest takie, jakie jest?
Nauczyłem się C # przez ostatnie sześć miesięcy i teraz zagłębiam się w Javę. Moje pytanie dotyczy tworzenia instancji (naprawdę w każdym języku), a więcej: zastanawiam się, dlaczego to zrobili w ten sposób. Weź ten przykład Person Bob = new Person(); Czy istnieje przyczyna dwukrotnego określenia obiektu? Czy kiedykolwiek będzie …

2
Po połączeniu sąsiednich literałów łańcuchowych
C i C ++ kompilują sąsiednie literały łańcuchowe jako jeden literał łańcuchowy. Na przykład to: "Some text..." "and more text" jest równa: "Some text...and more text" W innych językach rodziny C, takich jak C # lub Java, jest to błąd składniowy (co jest w porządku BTW). Jaki jest uzasadnienie / …

1
Skąd się wzięło pojęcie „wywołania” funkcji?
Zawsze zastanawiałem się, dlaczego wywołuje się funkcję, a nie na przykład ją wykonuje . Wyszukiwarka Google function call etymologyi podobne hasła nie okazują się przydatne, Wikipedia nie wspomina o tym, słowniki internetowe nie mają żadnego wpisu lub nie zawierają sekcji etymologii . Skąd się wzięło pojęcie „wywołania” funkcji?

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.