Inżynieria oprogramowania

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

11
Czy testy jednostkowe nie powinny wykorzystywać własnych metod?
Dzisiaj oglądałem wideo „Podstawy JUnit ”, a autor powiedział, że podczas testowania danej metody w twoim programie nie powinieneś używać innych własnych metod. Mówiąc ściślej, mówił o przetestowaniu jakiejś metody tworzenia rekordów, która wzięła nazwę i nazwisko dla argumentów i wykorzystała je do utworzenia rekordów w danej tabeli. Twierdził jednak, …

9
Komentarze do czystego kodu a dokumentacja klasy
Rozmawiam z moimi nowymi kolegami o komentarzach. Oboje lubimy Clean Code , i jestem całkowicie w porządku z faktem, że należy unikać komentarzy do kodu wbudowanego, a nazwy klas i metod powinny być używane do wyrażania tego, co robią. Jednak jestem wielkim fanem dodawania małych podsumowań klas, które próbują wyjaśnić …

11
Czy DRY jest wrogiem zarządzania projektami oprogramowania?
Jedną z najbardziej podstawowych i powszechnie akceptowanych zasad tworzenia oprogramowania jest OSUSZANIE (nie powtarzaj się). Oczywiste jest również, że większość projektów oprogramowania wymaga pewnego rodzaju zarządzania. Jakie są teraz łatwe do zarządzania zadania (ocena, harmonogram, kontrola)? Właściwe, powtarzalne zadania, dokładnie takie, których należy unikać zgodnie z DRY. Z punktu widzenia …

22
Jak programiści znajdują czas, by być na bieżąco z najnowszymi technologiami? [Zamknięte]
Byłem niezależnym programistą do ok. 2004 r., Kiedy zacząłem podążać ścieżką zarządzania, ale postanowiłem znów spróbować wrócić do programowania (szczególnie JavaScript i HTML5 aplikacje internetowe / mobilne) i mam wrażenie, że jestem naprawdę dobry w te i podobne szybko zmieniające się technologie wymagają poświęcenia stałej ilości czasu, aby zainwestować w …

15
Ile pomocy powinienem udzielić podczas wywiadów technicznych? [Zamknięte]
Podczas wielu wywiadów technicznych jestem proszony o występ lub zasiadanie. Zadajemy pytania logiczne i proste problemy programistyczne, które rozmówca ma rozwiązać na papierze. (Wolałbym, żeby mieli dostęp do klawiatury, ale to jest problem na inny czas.) Czasami czuję, że ludzie wiedzą, jak podejść do problemu, ale są rozłączeni przez zdenerwowanie …
83 interview 

1
Co jest nie tak z nielicencją?
Często słyszałem, że nie powinienem używać Nielicencji z powodu problemów z umieszczaniem rzeczy w domenie publicznej. Nie rozumiem jednak, dlaczego miałoby to stanowić problem dla nielicencji. Unlicense próbuje umieścić wszystko, co jest nielicencjonowane, w domenie publicznej, a jeśli to zadziała, to świetnie! Jednak autor Unlicense rozumie, że umieszczenie czegoś w …
83 licensing  legal 


8
Zwracać wartość magiczną, zgłaszać wyjątek lub zwracać wartość false w przypadku niepowodzenia?
Czasami czasami muszę napisać metodę lub właściwość dla biblioteki klas, dla której nie jest niczym wyjątkowym brak prawdziwej odpowiedzi, ale niepowodzenie. Coś nie może zostać określone, nie jest dostępne, nie znaleziono, nie jest obecnie możliwe lub nie ma już dostępnych danych. Myślę, że istnieją trzy możliwe rozwiązania dla tak stosunkowo …

7
Jak być dobrym obywatelem podczas indeksowania stron internetowych?
Mam zamiar opracować funkcjonalność, która będzie indeksować różne publiczne strony internetowe i przetwarzać / agregować na nich dane. Nic nie jest złowrogie jak poszukiwanie adresów e-mail - w rzeczywistości jest to coś, co może faktycznie zwiększyć ruch w ich witrynach. Ale dygresję. Poza honorowaniem robots.txt, czy istnieją jakieś zasady lub …

12
Jakie są wady elastycznych stoperów? [Zamknięte]
Spójrz tutaj: typowa święta wojna na kartach kontra spacje . Teraz spójrz tutaj: elastyczne tabstopsy . Wszystkie problemy rozwiązane i dodano kilka bardzo przydatnych nowych zachowań. Czy elastyczne tabstopy są nawet wspomniane w dyskusji o kartach i spacjach? Dlaczego nie? Czy wady elastycznego pomysłu tabstop są tak poważne, że nikt …

13
Czy skomentowany kod może być cenną dokumentacją?
Napisałem następujący kod: if (boutique == null) { boutique = new Boutique(); boutique.setSite(site); boutique.setUrlLogo(CmsProperties.URL_FLUX_BOUTIQUE+fluxBoutique.getLogo()); boutique.setUrlBoutique(CmsProperties.URL_FLUX_BOUTIQUE+fluxBoutique.getUrl()); boutique.setNom(fluxBoutique.getNom()); boutique.setSelected(false); boutique.setIdWebSC(fluxBoutique.getId()); boutique.setDateModification(new Date()); boutiqueDao.persist(boutique); } else { boutique.setSite(site); boutique.setUrlLogo(CmsProperties.URL_FLUX_BOUTIQUE+fluxBoutique.getLogo()); boutique.setUrlBoutique(CmsProperties.URL_FLUX_BOUTIQUE+fluxBoutique.getUrl()); boutique.setNom(fluxBoutique.getNom()); //boutique.setSelected(false); boutique.setIdWebSC(fluxBoutique.getId()); boutique.setDateModification(new Date()); boutiqueDao.merge(boutique); } Jest tutaj komentarz z komentarzem. Ale myślę, że dzięki temu kod staje się bardziej przejrzysty, ponieważ …

6
Trend branży „rozwijającej się” zanika
Zauważyłem ostatnio, że patrząc na niektóre popularne projekty na GitHub, nie ma żadnego developoddziału. W rzeczywistości przewodnik GitHub Flow też o tym nie wspomina. Z mojego zrozumienia, masterzawsze powinna być całkowicie stabilna i odzwierciedlać produkcję. Jeśli programiści pracują nad gałęziami funkcji, a następnie scalają je ze sobą masterpo zakończeniu, oznacza …
82 git  github 

4
Jakie umiejętności powinienem pielęgnować, aby zostać liderem rozwoju / techniki? [Zamknięte]
Obecnie jestem profesjonalnym programistą. Chcę poszerzyć swój zestaw umiejętności, ale chcę również, aby kariera skoczyła na bycie liderem programistów w zespole. Wiem, że trzeba się wiele nauczyć (i to nie będzie od razu), ale myślę, że jestem wystarczająco inteligentny, aby to zrobić i jestem gotów podjąć wyzwanie. Jestem pewien, że …

11
Jak mogę się upewnić, że faktycznie uczę się programowania, a nie tylko uczę się szczegółów języka? [Zamknięte]
Często słyszę, że prawdziwy programista może łatwo nauczyć się dowolnego języka w ciągu tygodnia. Mówiono mi, że języki to tylko narzędzia do wykonywania zadań. Programowanie to najwyższa umiejętność, której należy się nauczyć i opanować. Jak mogę się upewnić, że faktycznie uczę się programowania, a nie tylko uczę się szczegółów języka? …

13
Czy obiekty w OOP muszą reprezentować byt?
Czy obiekt musi reprezentować byt? Przez podmiot mam na myśli coś takiego jak Product, Motor, A ParkingLotitd, fizyczne, a nawet jednoznaczne niefizyczne koncepcyjne przedmiot - coś, co jest dobrze zdefiniowany, a niektóre podstawowe dane wyraźnie należący do obiektu, a niektóre funkcje / metody które wyraźnie działają na podstawowych danych. Na …

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.