Ostatnio natknąłem się na problem, który wymagał ode mnie programowego zdefiniowania logicznego operatora „OR”, ale bez użycia samego operatora. Wymyśliłem to: OR(arg1, arg2) if arg1 = True and arg2 = True return True else if arg1 = True and arg2 = False return True else if arg1 = False and …
Firma z solidnym projektem open source konkurującym z tradycyjnym produktem zamkniętym wydaje się niemożliwa do pokonania. Czytam ten artykuł, w którym autor przedstawia następujący scenariusz: Załóżmy, że można podzielić rynek oprogramowania - powiedzmy zarządzanie siecią - na dwa produkty. Jeden zrobił wszystko, co możliwe i kosztował 1 milion USD, a …
Czy wystarczy, aby metody można było rozróżnić tylko według nazwy argumentu (a nie typu), czy lepiej nazwać ją bardziej jednoznacznie? Na przykład T Find<T>(int id)vs T FindById<T>(int id). Czy jest jakiś dobry powód, aby nazwać go bardziej jawnie (tj. Dodając ById), zamiast utrzymywać tylko nazwę argumentu? Jednym z powodów, o …
Rozważmy na przykład, że mam klasę dla innych klas do rozszerzenia: public class LoginPage { public String userId; public String session; public boolean checkSessionValid() { } } i niektóre podklasy: public class HomePage extends LoginPage { } public class EditInfoPage extends LoginPage { } W rzeczywistości podklasa nie ma żadnych …
Na przykład System.IO.Path.Combinemetoda w .NET ma następujące przeciążenia: Combine(params String[]) Combine(String, String) Combine(String, String, String) Combine(String, String, String, String) Jaki jest sens ostatnich trzech? Pierwszy obejmowałby je wszystkie, ponieważ jeśli przyjrzysz się uważnie, użyje paramssłowa kluczowego. Argument zgodności wstecznej obejmowałby tylko Combine(String, String)wariant, ponieważ była to jedyna wersja do .NET …
Ponieważ często jest klasyfikowany na poziomie szkoły / uczelni, popularne języki programowania (C #, Java, C ++) są językami 3. generacji (z wyższym poziomem abstrakcji z części fizycznych maszyny). Ponadto języki asemblera są klasyfikowane jako 2., a języki maszynowe jako języki 1. generacji. Początkowo myślałem, że SQL powinien być uważany …
Rozważ to: public function polynominal($a, $b, $c, $d) { return $a * pow($x, 3) + $b * pow($x, 2) + $c * $x + $d; } Załóżmy, że piszesz różne testy dla powyższej funkcji i udowodnisz sobie i innym, że „to działa”. Dlaczego więc nie usunąć tych testów i żyć …
Od: http://www.artima.com/lejava/articles/designprinciples4.html Erich Gamma: Nadal uważam, że to prawda, nawet po dziesięciu latach. Dziedziczenie to fajny sposób na zmianę zachowania. Wiemy jednak, że jest kruchy, ponieważ podklasa może łatwo przyjmować założenia dotyczące kontekstu, w którym wywoływana jest metoda zastępowana. Istnieje ścisłe powiązanie między klasą podstawową a podklasą z powodu niejawnego …
Powiedzmy, że mam poniższą logikę. Jak to napisać w programowaniu funkcjonalnym? public int doSomeCalc(int[] array) { int answer = 0; if(array!=null) { for(int e: array) { answer += e; if(answer == 10) break; if(answer == 150) answer += 100; } } return answer; } Przykłady w większości blogów, artykułów ... …
W wiadomościach pojawiła się historia o mężczyźnie, którego konto Paypal przypadkowo zostało zasilone kwotą 92 233 720 368 587 8700 $. Skąd ten numer? Jaki błąd programowy prawdopodobnie spowoduje powstanie tego numeru?
Większość zadań w mojej szkole na początkowych zajęciach z programowania wymagała ode mnie używania tablic. Pracuję teraz na pełny etat i nigdy nie użyłem tablicy dla żadnego projektu, nad którym pracowałem. Nawet w istniejących projektach nigdzie nie widziałem zastosowania tablic. Moim zdaniem Lista jest łatwiejsza w użyciu i jest standardem. …
Mam 2 dni na podjęcie bardzo poważnej decyzji dotyczącej narzędzi i platform, z których moja firma zamierza korzystać, aby przenieść swoją aplikację WPF na system Linux / Android / iOS. Oczywiście mogę wskazać moim seniorom, że 2 dni to za mało, żeby przeczytać o wszystkich możliwych opcjach, a co z …
isOperator C # i operator Java instanceofpozwalają na rozgałęzienie w interfejsie (lub, co bardziej nieokiełznane, jego klasie bazowej) zaimplementowanej instancji obiektu. Czy właściwe jest używanie tej funkcji do rozgałęzień wysokiego poziomu w oparciu o możliwości interfejsu? A może klasa podstawowa powinna zapewniać zmienne boolowskie, aby zapewnić interfejs opisujący możliwości obiektu? …
Ostatnio robię dużo recenzji kodu i nie jestem pewien pozytywnych i negatywnych efektów oraz profesjonalizmu umieszczania pozytywnych i / lub śmiesznych komentarzy w recenzjach kodu. Używamy Github jako naszej platformy do sprawdzania kodu w moim zespole, więc komentarze są widoczne dla każdego. Ogólnie staram się korzystać z tej platformy, aby …
Próbuję przeprowadzić badanie tych preprocesorów css. Czy są jakieś zalety używania sassa w porównaniu do mniejszej liczby preprocesorów css? Czynniki, których szukam, to wielkość społeczności, dojrzałość projektów oprogramowania itp. Wiem, że było z tym związane inne pytanie , ale nie zostało ono konstruktywnie napisane i zamknięte. Aktualizacja Wygląda na to, …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.