Inżynieria oprogramowania

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

3
Dlaczego w aplikacjach internetowych powszechnie stosuje się REST zamiast mechanizmów podobnych do RPC?
Zacząłem bardzo niedawno w firmie, która używa dość niestandardowych ram dla swoich aplikacji internetowych, przynajmniej w porównaniu z typowymi platformami aplikacji internetowych, które znam. Zamiast usługi sieci web RESTful do komunikacji z serwerem wykorzystywany jest mechanizm RPC. Komunikacja z serwerem wygląda jak proste wywołanie funkcji, ale funkcja jest wykonywana na …

4
Jakie są korzyści z przejrzystości odniesienia dla programisty?
Jakie są korzyści z przejrzystości referencyjnej w programowaniu ? RT stanowi jedną z głównych różnic między paradygmatem funkcjonalnym a imperatywnym i jest często używany przez zwolenników paradygmatu funkcjonalnego jako wyraźną przewagę nad trybem imperatywnym; ale we wszystkich swoich wysiłkach ci zwolennicy nigdy nie wyjaśniają, dlaczego dla mnie jako programisty jest …

3
Dlaczego wyrażanie obliczeń jako mnożenie macierzy przyspiesza je?
W samouczku Google MNist z użyciem TensorFlow pokazano obliczenia, w których jeden krok jest równoważny pomnożeniu macierzy przez wektor. Google najpierw pokazuje obraz, w którym każde mnożenie i dodawanie liczbowe, które byłoby potrzebne do wykonania obliczenia, jest zapisywane w całości. Następnie pokazują obraz, na którym jest on wyrażony jako mnożenie …


5
Co powinienem zrobić jako recenzent, gdy kod „musi być” zły?
Pracuję w źle zaprojektowanym, nadinżynieryjnym projekcie, w którym kilka miesięcy temu wprowadzono obowiązkowe przeglądy kodu. Poproszono mnie o zapoznanie się z dużym fragmentem kodu, który implementuje nową funkcję. Ma te same wady, co reszta naszej bazy kodów. Rozumiem, że w dużym stopniu te wady wkradają się do nowego kodu, np. …


1
różni się między ES6 a JavaScript [zamknięte]
Zamknięte . To pytanie wymaga szczegółów lub jasności . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Dodaj szczegóły i wyjaśnij problem, edytując ten post . Zamknięte 3 lata temu . Co to jest ES6? Czy to JavaScript? A może zwolennik wielu języków? Szukałem tego, ale nie rozumiem, zwłaszcza strony …
18 javascript  es6 

3
Czy istnieją alternatywy dla typów dla analizy statycznej?
Pisanie statyczne w języku programowania może być pomocne w egzekwowaniu pewnych gwarancji w czasie kompilacji - ale czy typy są jedynym narzędziem do tego zadania? Czy istnieją inne sposoby określania niezmienników? Na przykład język lub środowisko może pomóc w egzekwowaniu gwarancji dotyczącej długości tablicy lub relacji między danymi wejściowymi do …


5
W której warstwie powinna znajdować się walidacja?
Tworzę Rest API za pomocą Spring Boot i używam Hibernate Validation do sprawdzania poprawności danych wejściowych. Ale potrzebuję również innych rodzajów sprawdzania poprawności, na przykład gdy trzeba zaktualizować dane, jeśli identyfikator firmy nie istnieje, chcę zgłosić niestandardowy wyjątek. Czy ta walidacja powinna znajdować się na warstwie usługowej czy kontrolującej? Warstwa …

7
DevOps oznacza, że ​​programiści biorą teraz odpowiedzialność za infrastrukturę i wydanie - ale jakie są przyczyny tej zmiany?
DevOps oznacza, że ​​programiści biorą teraz odpowiedzialność za infrastrukturę i wydanie - ale jakie są przyczyny tej zmiany? Odłożę moje karty na stół: jestem programistą i pracowałem zarówno w „DevOps”, jak i poza kulturami. Konieczność martwienia się infrastrukturą, wydaniami, kontrolą jakości i związaną z tym ceremonią to wielka odwaga od …
18 process  devops 

3
Czy w Pythonie można mieć wiele klas w tym samym pliku?
Świeżo przybywam do świata Python po latach Java i PHP. Chociaż sam język jest dość prosty, mam trudności z kilkoma „drobnymi” problemami, których nie potrafię rozwiązać - i na które nie mogłem znaleźć odpowiedzi w licznych dokumentach i samouczkach, które przeczytałem do tej pory . Dla doświadczonego praktyka Pythona to …

1
Czy nadal jest to antypattern, jeśli zarejestrujemy komunikat wyjątku i wyrzucimy inny wyjątek?
Nasza aplikacja internetowa używa ExceptionMapperdo mapowania niektórych wyjątków Response. Komunikaty o wyjątkach rejestrujemy przed zgłoszeniem nowego wyjątku w następujący sposób: catch (SomeException ex) { LOG.error(ex.getMessage()); throw new MyException(ex.getMessage()); } Nie rzucamy ponownie tego samego wyjątku , więc moje pytanie brzmi, czy byłoby to uważane za antypater . A zatem, czy …

6
Co to jest schemat URI?
Szukałem tego pytania, ale nie znalazłem dobrej odpowiedzi. Nawet artykuł w Wikipedii na temat URI nie wyjaśnia tego dokładnie. Myślałem, że to protokół dostępu do strony internetowej. np. HTTP / HTTPS / FTP, ale artykuł wiki mówi inaczej. Niektóre schematy URI nie są powiązane z żadnym konkretnym protokołem (np. „Plik”), …
18 protocol  internet  uri 

2
Czy dobrym pomysłem jest zdefiniowanie jednej dużej prywatnej funkcji w klasie w celu utrzymania prawidłowego stanu, czyli aktualizacji elementów danych obiektu?
Chociaż w poniższym kodzie użyto prostego zakupu pojedynczego elementu w witrynie e-commerce, moje ogólne pytanie dotyczy aktualizacji wszystkich członków danych, aby dane obiektu były zawsze aktualne. Znalazłem „spójność” i „stan jest zły” jako odpowiednie wyrażenia, omówione tutaj: https://en.wikibooks.org/wiki/Object_Oriented_Programming#.22State.22_is_Evil.21 <?php class CartItem { private $price = 0; private $shipping = 5; …

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.