Znak plus +służy do dodawania i konkatenacji łańcuchów, ale jego towarzysz: znak minus -, na ogół nie jest widoczny do przycinania łańcuchów lub w innych przypadkach innych niż odejmowanie. Jaki może być tego powód lub ograniczenia? Rozważ następujący przykład w JavaScript: var a = "abcdefg"; var b = "efg"; a-b …
Niedawno zacząłem pracować w miejscu z kilkoma znacznie starszymi programistami (około 50+). Pracowali nad krytycznymi aplikacjami dotyczącymi lotnictwa, w których system nie mógł ulec awarii. W rezultacie starszy programista ma tendencję do kodowania w ten sposób. Zwykle umieszcza w obiektach wartość logiczną, aby wskazać, czy wyjątek powinien zostać zgłoszony, czy …
Jeśli testowana jest każda ścieżka przez program, czy gwarantuje to znalezienie wszystkich błędów? Jeśli nie, dlaczego nie? Jak można przejść przez każdą możliwą kombinację przebiegu programu i nie znaleźć problemu, jeśli taki istnieje? Waham się z sugestią, że można znaleźć „wszystkie błędy”, ale może dlatego, że pokrycie ścieżki nie jest …
Pracuję w C # i MSSQL i, jak można się spodziewać, przechowuję moje hasła solone i mieszane. Kiedy patrzę na hash przechowywany w kolumnie nvarchar (na przykład out of box dostawca członkostwa aspnet). Zawsze byłem ciekawy, dlaczego generowane wartości Salt i Hash zawsze wydają się kończyć jednym lub dwoma znakami …
Go znam stosunkowo dobrze, ponieważ napisałem w nim wiele małych programów. Rdza, oczywiście, jestem mniej obeznana, ale pilnuje. Po niedawnym przeczytaniu http://yager.io/programming/go.html pomyślałem, że osobiście zbadam dwa sposoby postępowania z lekami generycznymi, ponieważ artykuł wydawał się niesłusznie krytykować Go, gdy w praktyce niewiele było interfejsów nie udało się osiągnąć elegancko. …
Niedawno przeczytałem ten znakomity artykuł na temat architektury mikrousług: http://www.infoq.com/articles/microservices-intro Stwierdza, że po załadowaniu strony internetowej na Amazon, ponad 100 mikrousług współpracuje w celu obsługi tej strony. W tym artykule opisano, że cała komunikacja między mikrousługami może odbywać się wyłącznie za pośrednictwem interfejsu API. Moje pytanie brzmi: dlaczego tak źle …
Zaczynam projekt oprogramowania, który zostanie opracowany przez zespół AND społeczność. Wcześniej sprzedawano mnie na Gerrit, ale teraz model widelca i żądania ściągania Githuba wydaje się zapewniać prawie więcej narzędzi, sposobów wizualizacji zatwierdzeń i łatwości użycia. Dla kogoś, kto ma przynajmniej trochę doświadczenia z oboma, jakie są zalety / wady każdego …
Pracowałem z SpringMVC, Hibernate i niektórymi bazami danych na przykładzie aplikacji internetowej Java. Jest kilka różnych, które to robią, ale ten samouczek integracji Spring 3 i hibernacji z przykładem ma klasę modelu, widok (w jsp) oraz klasy usługi i dao dla kontrolera. Moje pytanie brzmi: czy zarówno usługa, jak i …
Java 8 ma zupełnie nową bibliotekę dat i godzin w pakiecie java.time, co jest bardzo mile widziane dla każdego, kto musiał wcześniej używać JodaTime lub miał problemy z tworzeniem własnych metod pomocniczych przetwarzania daty. Wiele klas w tym pakiecie reprezentuje znaczniki czasu i mają metody pomocnicze, takie jak getHour()uzyskiwanie godzin …
Jestem nowy w StackExchange, ale pomyślałem, że będziesz w stanie mi pomóc. Tworzymy nową aplikację Java Enterprise, zastępującą starsze rozwiązanie JSP. Z powodu wielu wielu zmian interfejs użytkownika i elementy logiki biznesowej zostaną całkowicie przemyślane i ponownie wdrożone. Naszą pierwszą myślą było JSF, ponieważ jest to standard Java EE. Na …
Załóżmy, że piszesz aplikację, którą może skonfigurować użytkownik. Do przechowywania tych „danych konfiguracyjnych” w bazie danych powszechnie stosuje się dwa wzorce. Tabeli jednorzędowy CompanyName | StartFullScreen | RefreshSeconds | ... ---------------+-------------------+------------------+-------- ACME Inc. | true | 20 | ... Nazwa-wartość-pair stół ConfigOption | Value -----------------+------------- CompanyName | ACME Inc. StartFullScreen …
Kilka miesięcy temu zaczęliśmy opracowywać aplikację do kontroli opracowanego przez nas sprzętu testowego i rejestrować zestaw pomiarów. Powinien mieć prosty interfejs użytkownika i prawdopodobnie wymagałby wątków ze względu na ciągłe nagrywanie, które musi mieć miejsce. Ta aplikacja będzie używana przez kilka lat i będzie utrzymywana przez wielu studentów informatyki w …
W Visual Studio mogę kliknąć interfejs prawym przyciskiem myszy i wybrać opcję Implementuj interfejs lub Implementuj interfejs jawnie. public class Test : ITest { public string Id // Generated by Implement Interface { get { throw new NotImplementedException(); } } string ITest.Id // Generated by Implement Interface Explicitly { get …
Rozglądając się wcześniej, zauważyłem kilka uwag na temat złych praktyk będących długimi metodami. Nie jestem pewien, czy zawsze zgadzam się, że długie metody są złe (i chcieliby opinii innych). Na przykład mam kilka widoków Django, które przetwarzają obiekty przed wysłaniem ich do widoku, przy czym długa metoda to 350 linii …
Kiedyś bardzo ważne były krótkie nazwy instrukcji / rejestru. Te powody już nie obowiązują, ale krótkie tajemnicze nazwy są nadal bardzo powszechne w programowaniu niskiego poziomu. Dlaczego to? Czy tylko dlatego, że stare nawyki trudno przełamać, czy są lepsze powody? Na przykład: Atmel ATMEGA32U2 (2010): TIFR1(zamiast TimerCounter1InterruptFlag), ICR1H(zamiast InputCapture1High), DDRB(zamiast …
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.