Często zdarza mi się pisać funkcje, które wyglądają tak, ponieważ pozwalają mi łatwo kpić z dostępu do danych i nadal dostarczają podpis, który akceptuje parametry określające, do których danych mam dostęp. public static string GetFormattedRate( Func<string, RateType>> getRate, string rateKey) { var rate = getRate(rateKey); var formattedRate = rate.DollarsPerMonth.ToString("C0"); return …
Mamy wiele bibliotek wewnętrznych, które chcielibyśmy udostępniać między projektami wewnątrz firmy. Oto niektóre z wymagań: źródła biblioteki są przechowywane w repozytoriach oddzielonych od projektów końcowych projekty końcowe obejmują biblioteki za pośrednictwem NuGet musi istnieć możliwość łatwego sprawdzenia kodu źródłowego dowolnej biblioteki podczas pracy nad projektem końcowym Konfigurowanie naszego prywatnego repozytorium …
Bardzo często pracuję nad niektórymi cechami mojego projektu, że muszę zrobić sobie przerwę, zanim będzie wystarczająca do zatwierdzenia. Jednak używam codziennie dwóch różnych komputerów do kodowania (mój laptop i pulpit mojego laboratorium badawczego). Np .: pracuję nad funkcją w domu, a potem zatrzymuję się i idę do laboratorium. Nie chcę …
Większość, jeśli nie wszyscy informatycy, których znam, uważają, że przed kodowaniem korzystne jest modelowanie oprogramowania za pomocą UML lub innych typów diagramów. (Moje pytanie nie dotyczy konkretnie UML, może to być dowolny graficzny lub tekstowy opis projektu oprogramowania). Nie jestem tego taki pewien. Głównym powodem jest: Kod nie kłamie. Jest …
W przeszłości dużo czytałem na ten temat i oglądałem ciekawe rozmowy, takie jak ta wuja Boba . Mimo to zawsze trudno mi właściwie zaprojektować aplikacje komputerowe i rozróżnić, które powinny być obowiązki po stronie interfejsu użytkownika, a które po stronie logiki . Bardzo krótkie podsumowanie dobrych praktyk jest coś takiego. …
W tekstach o TDD często czytam o „usunięciu duplikacji” lub „poprawie czytelności” podczas etapu refaktoryzacji. Ale co sprawia, że usuwam nieużywaną funkcję? Powiedzmy na przykład, że istnieje klasa Cz metodami a()i b(). Teraz myślę, że byłoby miło mieć metodę, w f()którą się zaangażuje C. W rzeczywistości f()zastępuje wszystkie wywołania do, …
Czy powielanie danych między testami a prawdziwym kodem jest dobre czy złe? Załóżmy na przykład, że mam klasę Python, FooSaverktóra zapisuje pliki o określonych nazwach w danym katalogu: class FooSaver(object): def __init__(self, out_dir): self.out_dir = out_dir def _save_foo_named(self, type_, name): to_save = None if type_ == FOOTYPE_A: to_save = make_footype_a() …
Moja domena składa się z wielu prostych niezmiennych klas takich jak to: public class Person { public string FullName { get; } public string NameAtBirth { get; } public string TaxId { get; } public PhoneNumber PhoneNumber { get; } public Address Address { get; } public Person( string fullName, …
Postanowiłem podjąć się nauki programowania funkcjonalnego. Do tej pory to był świetny wybuch, a ja „widziałem światło”. Niestety, tak naprawdę nie znam funkcjonalnego programisty, z którego mógłbym odrzucić pytania. Przedstawiamy Stack Exchange. Biorę udział w kursie tworzenia aplikacji internetowych, ale mój instruktor nie zna programowania funkcjonalnego. Nie przeszkadza mi, że …
Niedawno usunąłem moją odpowiedź Java w Code Review , która zaczęła się tak: private Person(PersonBuilder builder) { Zatrzymać. Czerwona flaga. Osoba budująca osobę zbuduje osobę; wie o Osobie. Klasa Person nie powinna wiedzieć nic o PersonBuilder - to tylko niezmienny typ. Utworzyłeś tutaj sprzęgło kołowe, w którym A zależy od …
Mam aplikację, która wywołała dość gorącą dyskusję między kilkoma programistami. Zasadniczo jest podzielony na warstwę internetową i warstwę zaplecza. Warstwa internetowa zbiera informacje za pomocą prostego formularza internetowego, przechowuje te dane jako dokument JSON (dosłownie plik .json) w folderze obserwacyjnym używanym przez zaplecze. Zaplecze sonduje ten folder co kilka sekund, …
Zamknięte . To pytanie jest oparte na opiniach . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby można było na nie odpowiedzieć faktami i cytatami, edytując ten post . Zamknięte 3 lata temu . Czy podczas kodowania oprogramowania architektura powinna zawsze stanowić najlepsze praktyki lub praktyczne praktyki …
Wydaje mi się, że mam nieporozumienie na temat różnicy między <Foo>i <? extends Foo>. Z mojego zrozumienia, gdybyśmy mieli ArrayList<Foo> foos = new ArrayList<>(); Oznacza to, że Foodo tej listy tablic można dodać obiekty typu . Ponieważ podklasy Foosą również typu Foo, można je również dodawać bezbłędnie, jak pokazano za …
Załóżmy, że mam interfejs FooInterfacez następującą sygnaturą: interface FooInterface { public function doSomething(SomethingInterface something); } I konkretna klasa, ConcreteFooktóra implementuje ten interfejs: class ConcreteFoo implements FooInterface { public function doSomething(SomethingInterface something) { } } Chciałbym ConcreteFoo::doSomething()zrobić coś wyjątkowego, jeśli przejdzie on przez specjalny typ SomethingInterfaceobiektu (powiedzmy, że się nazywa SpecialSomething). …
Często słyszałem, jak programiści wspominali, że Java nie może „ robić w czasie rzeczywistym ”, co oznacza, że aplikacja Java działająca w systemie Linux nie może spełniać wymagań deterministycznego systemu czasu rzeczywistego, takiego jak coś działającego w systemie RIOT-OS itp. Próbuję zrozumieć, dlaczego . Mój SWAG powiedział mi, że jest …
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.