Inżynieria oprogramowania

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

3
Jaki jest prawidłowy sposób postępowania przy znajdowaniu projektów wolnego oprogramowania, których pliki wykonywalne rozprzestrzeniają wirusa?
Dzisiaj znalazłem projekt GPLed na SourceForge, którego pliki wykonywalne rozprzestrzeniają wirusa. Fakt ten został kilkakrotnie podkreślony w recenzjach projektu, a zainfekowany plik wykonywalny jest nadal dostępny do pobrania. Najwyraźniej starsze pliki wykonywalne nie są zainfekowane, więc sam projekt nie wydaje się być stworzony z myślą o złośliwym celu. Nie ma …

3
Jaka jest idealna mieszanka starszych i młodszych programistów w zespole?
W każdym zespole będziesz potrzebować więcej siwych i szarych programistów oraz kilku młodych szczeniąt. Niektóre przyczyny to: Pieniądze. Są to często zadania, które nie wymagają takiego samego poziomu doświadczenia do dostarczenia, więc ma to sens, aby nie płacić górę dolara, aby te zadania spełnione. Energia. Jest energia i entuzjazm, że …


8
Jeśli ktoś ma się uczyć nowego języka programowania każdego roku, jaka powinna być ta lista? [Zamknięte]
W obecnej formie to pytanie nie pasuje do naszego formatu pytań i odpowiedzi. Oczekujemy, że odpowiedzi poparte będą faktami, referencjami lub wiedzą fachową, ale to pytanie prawdopodobnie będzie wymagało debaty, argumentów, ankiet lub rozszerzonej dyskusji. Jeśli uważasz, że to pytanie można poprawić i ewentualnie ponownie otworzyć, odwiedź centrum pomocy w …

6
Czy ktoś używał Sproutcore?
Czy ktoś używał Sproutcore do aplikacji internetowej? Jeśli tak, czy możesz podać mi opis swojego doświadczenia? Obecnie rozważam to, ale mam kilka obaw. Po pierwsze, dokumentacja jest zła / niekompletna i obawiam się, że poświęcę dużo czasu na rozwiązywanie problemów lub przeglądanie kodu źródłowego. Poza tym nieco waham się przed …
19 javascript 



1
Dlaczego (/ czy) Bertrand Meyer uważa, że ​​podklasa jest jedynym sposobem na rozszerzenie „zamkniętego” modułu?
W Meyer Object-Oriented Software Construction (1988) definiuje zasadę otwartego / zamkniętego w następujący sposób: Mówi się, że moduł jest otwarty, jeśli jest nadal dostępny do rozszerzenia. Na przykład powinna istnieć możliwość dodawania pól do zawartych w nim struktur danych lub nowych elementów do zestawu funkcji, które wykonuje. Moduł zostanie uznany …

3
Wzory do przekazywania kontekstu przez łańcuch metod
Jest to decyzja projektowa, która wydaje się często pojawiać: jak przekazać kontekst za pomocą metody, która jej nie potrzebuje, do metody, która to robi. Czy istnieje poprawna odpowiedź, czy zależy to od kontekstu. Przykładowy kod, który wymaga rozwiązania // needs the dependency function baz(session) { session('baz'); } // doesn't care …


6
Czy logowanie obok implementacji stanowi naruszenie zasad SRP?
Myśląc o zwinnym tworzeniu oprogramowania i wszystkich zasadach (SRP, OCP, ...) zadaję sobie pytanie, jak traktować rejestrowanie. Czy logowanie obok implementacji stanowi naruszenie zasad SRP? Powiedziałbym, yesponieważ wdrożenie powinno być również w stanie działać bez logowania. Jak więc lepiej wdrożyć rejestrowanie? Sprawdziłem niektóre wzory i doszedłem do wniosku, że najlepszym …

7
Problem ze stylem kodowania: czy powinniśmy mieć funkcje, które pobierają parametr, modyfikują go, a następnie POWRÓT ten parametr?
Mam trochę dyskusji z przyjacielem, czy te dwie praktyki są tylko dwiema stronami tej samej monety, czy też jedna z nich jest naprawdę lepsza. Mamy funkcję, która pobiera parametr, wypełnia jego element członkowski, a następnie zwraca go: Item predictPrice(Item item) Uważam, że ponieważ działa na tym samym przekazywanym obiekcie, nie …


3
Jak przemierzać drzewo bez korzystania z rekurencji?
Mam bardzo duże drzewo węzłów pamięci i muszę je przechodzić. Przekazywanie zwróconych wartości każdego węzła podrzędnego do ich węzła nadrzędnego. Należy to zrobić, dopóki wszystkie węzły nie będą miały bąbelków danych aż do węzła głównego. Traversal działa w ten sposób. private Data Execute(Node pNode) { Data[] values = new Data[pNode.Children.Count]; …
19 c#  optimization  trees 


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.