Czy istnieje jakiś wzorzec projektowy dla dowolnego programu obiektowego? Pytam o to, ponieważ ostatnio widziałem implementację Doorklasy z Lock. Było to częścią testu, a odpowiedź brzmiała, że kod jest zgodny ze wzorcem Null Object: class Lock { public: virtual void close() = 0; virtual void open() = 0; virtual bool …
Rozważ następujący projekt public class Person { public virtual string Name { get; } public Person (string name) { this.Name = name; } } public class Karl : Person { public override string Name { get { return "Karl"; } } } public class John : Person { public override …
Czytam kod znacznie częściej niż piszę kod i zakładam, że większość programistów pracujących nad oprogramowaniem przemysłowym to robi. Zakładam, że zaletą wnioskowania typu jest mniejsza szczegółowość i mniej napisany kod. Ale z drugiej strony, jeśli czytasz kod częściej, prawdopodobnie będziesz chciał kodu czytelnego. Kompilator określa typ; istnieją na to stare …
Możesz znaleźć nieskończoną listę blogów, artykułów i stron internetowych promujących zalety jednostkowego testowania kodu źródłowego. Jest prawie pewne, że programiści, którzy zaprogramowali kompilatory dla Java, C ++, C # i innych języków pisanych, używali testów jednostkowych do weryfikacji swojej pracy. Dlaczego więc pomimo popularności testowanie jest nieobecne w składni tych …
To pytanie dotyczy tego, czy uczynić zagnieżdżoną klasę w Javie klasą zagnieżdżoną statycznie czy wewnętrznie zagnieżdżoną. Szukałem tutaj i nad przepełnieniem stosu, ale tak naprawdę nie mogłem znaleźć żadnych pytań dotyczących konsekwencji projektowych tej decyzji. Znalezione przeze mnie pytania dotyczą różnicy między statycznymi i wewnętrznymi klasami zagnieżdżonymi, co jest dla …
Przeczytałem oryginalny tekst licencji Apache, wersja 2.0 i objaśnienie w prostym języku angielskim. OK, kopiuję klasę dystrybuowaną przez The Best Company na świecie , ich licencję i nieco modyfikuję kod. Oryginalny plik z moimi zmianami. /* * Copyright (C) 2011 The Best Company in the World * * Licensed under …
Zgodnie z dokumentacją Microsoft, artykułem Wikipedia SOLID lub większością architektów IT musimy upewnić się, że każda klasa ma tylko jedną odpowiedzialność. Chciałbym wiedzieć, dlaczego, ponieważ jeśli wszyscy wydają się zgadzać z tą zasadą, nikt nie wydaje się zgadzać co do przyczyn tej reguły. Niektórzy wskazują na lepszą konserwację, inni twierdzą, …
Właśnie czytałem niektóre białe księgi i przykłady z Microsoft „Roslyn” i koncepcja wydaje się bardzo interesująca. Z tego, co mogę powiedzieć, otwiera czarną skrzynkę, która jest kompilatorem i zapewnia interfejs, którego możemy użyć do uzyskania informacji i metryk dotyczących kodu napisanego w Visual Studio. Wydaje się, że Roslyn ma także …
Moje pytanie dotyczy bezpieczeństwa JavaScript. Wyobraź sobie system uwierzytelniania, w którym używasz środowiska JavaScript, takiego jak Backbone lub AngularJS , i potrzebujesz bezpiecznych punktów końcowych. To nie jest problem, ponieważ serwer zawsze ma ostatnie słowo i sprawdzi, czy masz uprawnienia do robienia tego, co chcesz. Ale co, jeśli potrzebujesz trochę …
Swoją karierę jako programista .NET rozpocząłem 3 miesiące temu i po długim planie szkoleniowym na temat różnych technologii, wzorców i koncepcji programiści, którzy mnie nadzorowali, zdecydowali, że jestem gotów dołączyć do jednego z wielu projektów obsługiwanych przez firmę. Jestem bardzo podekscytowany, że w końcu mogę zacząć kodować. Zespół, do którego …
Jeżeli przyjmuje się, że język musi być kompletny Turinga, aby był dobry, to czy rzeczywiście można mieć „użyteczny” język programowania, który nie jest kompletny? Powinienem wyjaśnić, że chodzi tu raczej o języki programowania w tradycyjnym znaczeniu, a nie o języki znaczników i zapytań.
Niedawno znalazłem framework o nazwie ecto . W tej strukturze podstawowy komponent o nazwie „plazm” , którym jest ekto-kierowany wykres acykliczny. W eecto plazmę można obsługiwać za pomocą harmonogramu ecto. Zastanawiam się, jakie są zalety tego mechanizmu iw jakich innych sytuacjach możemy wykorzystać koncepcję DAG?
Pytanie Nooba. Nie jestem w stanie odróżnić REPL od interaktywnej powłoki po prostu czytając definicje na Wikipedii. Wiki zauważa, że REPL jest szczególnym rodzajem interaktywnej powłoki językowej. Czy to jednak odpowiedni podzbiór? Definicja Wiki wydaje się ograniczać terminologię REPL do języków podobnych do Lisp, podczas gdy podane właściwości tak naprawdę …
Zastanawiam się, czy jedną z kluczowych cech języka programowania jest możliwość przeciążania funkcji argumentami. Myślę, że jest to niezbędne w kontekście programowania obiektowego. Czy jest to celowo pozostawione w tyle i niedozwolone? Czy przeciążanie nie jest dobrą praktyką?
Czasami, gdy sprawdzamy historię zatwierdzeń oprogramowania, możemy zauważyć, że istnieje kilka BITÓW, które są naprawdę DUŻE - mogą zmieniać 10 lub 20 plików setkami zmienionych linii kodu źródłowego (delta). Pamiętam, że istnieje taki termin na BIG, ale nie pamiętam dokładnie, co to jest. Czy ktoś może mi pomóc? Jakiego terminu …
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.