Inżynieria oprogramowania

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

8
Czy lepiej dokumentować funkcje w pliku nagłówkowym lub źródłowym?
Czy w językach, w których rozróżnia się pliki „źródłowe” i „nagłówkowe” (głównie C i C ++), lepiej udokumentować funkcje w pliku nagłówkowym: ( sprowadzony z CCAN ) /** * time_now - return the current time * * Example: * printf("Now is %lu seconds since epoch\n", (long)time_now().tv_sec); */ struct timeval time_now(void); …
86 c++  c  headers 

19
Dlaczego OCaml nie jest bardziej popularny?
Zawsze słyszałem, że C jest język z wyboru do wykorzystania dla systemów wbudowanych, lub czegokolwiek, co musi działać z maksymalną prędkością. Nigdy nie rozwinąłem zamiłowania do C, głównie dlatego, że nie lubię arytmetyki wskaźników, a język jest ledwie szczeblem ponad asemblerem. Z drugiej strony, języki ML są funkcjonalne, języki odśmiecane, …
86 c  ocaml 

22
Czy OOP jest trudne, ponieważ nie jest naturalne?
Często można usłyszeć, że OOP naturalnie odpowiada temu, jak ludzie myślą o świecie. Ale zdecydowanie nie zgodziłbym się z tym stwierdzeniem: my (lub przynajmniej ja) konceptualizujemy świat w kategoriach relacji między rzeczami, które napotykamy, ale OOP koncentruje się na projektowaniu poszczególnych klas i ich hierarchii. Zauważ, że w życiu codziennym …

3
Dlaczego baza danych Web SQL jest przestarzała?
Tworzę hybrydową aplikację na Androida. Na początku zdecydowałem się na użycie localStorage, po spędzeniu 2 dni zdałem sobie sprawę, że to bardzo dziwne i dlatego go porzuciłem. Następnie wziąłem indexedDB, po spędzeniu dzisiejszego dnia i uzyskaniu danych wyjściowych w Google Chrome, nie działa w WebView aplikacji na Androida. I nigdy …

4
Różnice między TypeScript a Dart [zamknięte]
Firma Microsoft niedawno zaprezentowała Typescript, nowy język programowania podobny do JavaScript. Jakiś czas temu słyszałem o Dart, nowym języku programowania stworzonym przez Google w celu rozwiązania problemów związanych z Javascriptem, takich jak wydajność, skalowalność itp. Cel obu nowych języków wydaje mi się taki sam. Co myślisz? Czy cele języków są …
85 dart  typescript 


10
Jak unikać getterów i seterów?
Mam trochę trudności z projektowaniem zajęć w sposób oo. Czytałem, że obiekty ujawniają swoje zachowanie, a nie dane; dlatego zamiast używać getter / setters do modyfikowania danych, metodami danej klasy powinny być „czasowniki” lub akcje działające na obiekcie. Na przykład, w „Konto” obiektu, musielibyśmy metody Withdraw()i Deposit()zamiast setAmount()itd. Patrz: Dlaczego …

4
Jaka jest różnica między programowaniem imperatywnym, proceduralnym a programowaniem strukturalnym?
Badając (książki, Wikipedię, podobne pytania dotyczące SE itp.) Zrozumiałem, że programowanie imperatywne jest jednym z głównych paradygmatów programistycznych, w którym opisuje się szereg poleceń (lub instrukcji) do wykonania przez komputer (więc jesteś ładna wiele nakazuje podejmować określone działania, stąd nazwa „imperatyw”). Na razie w porządku. Z drugiej strony programowanie proceduralne …

17
Czy moje negatywne doświadczenia z praktyk reprezentują rzeczywisty świat? [Zamknięte]
Jestem ciekawy, czy moje obecne doświadczenia jako stażysty są reprezentatywne dla rzeczywistej branży. Jako tło przeszedłem przez większą część dwóch kierunków komputerowych i matematyki na dużym uniwersytecie; Pokonałem wszystkie klasy i uwielbiałem wszystkie, więc chciałbym myśleć, że nie jestem okropny w programowaniu. Otrzymałem staż w jednej z największych firm programistycznych …


16
Jak radzić sobie z powolnym i niededykowanym kolegą w zespole? [Zamknięte]
Pracowałem nad nowym projektem. Projekt działa w ten sposób: użytkownik końcowy może uzyskać dostęp do aplikacji internetowej za pomocą linku, może dodać wiele systemów w swojej sieci i zarządzać szczegółami poszczególnych systemów. Moja część dotyczy interfejsu i serwera WWW, co odbywa się w Pythonie. Moje python faktycznie komunikuje się z …
85 teamwork 

15
Regulacja branży oprogramowania [zamknięty]
Co kilka lat ktoś proponuje ściślejsze regulacje dla branży oprogramowania. Ten artykuł IEEE zyskał ostatnio trochę uwagi na ten temat. Gdyby inżynierowie oprogramowania, którzy piszą programy dla systemów narażających społeczeństwo na ryzyko fizyczne lub finansowe, wiedzieli, że zostaną przetestowani pod kątem swoich kompetencji, myślimy, że ograniczy to wady i błędy …
85 legal  profession 

17
Jak powstrzymać się od sprowadzania pracy do domu? [Zamknięte]
Programowanie to bardzo mózgowa praca, a jednym z największych problemów, jakie mam, jest zabranie ze sobą pracy do domu. To takie proste: kiedy tylko mam okazję się zastanowić, mój umysł naturalnie błąka się po sprawach związanych z pracą. Uważam, że tak wiele innych rzeczy w moim życiu jest raczej niestymulowanych …

11
Czy statyczność jest ogólnie „zła” dla testów jednostkowych, a jeśli tak, to dlaczego Resharper to zaleca? [Zamknięte]
Odkryłem, że istnieją tylko 3 sposoby testowania jednostkowego zależności (makiety / kodu pośredniczącego), które są statyczne w języku C # .NET: Mole TypeMock JustMock Biorąc pod uwagę, że dwa z nich nie są darmowe, a jeden nie trafił w wersji 1.0, drwiny ze statycznych rzeczy nie są zbyt łatwe. Czy …


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.