Widok modelu View-Model został opracowany przez Microsoft w celu ukierunkowania platform programistycznych interfejsu użytkownika, które obsługują programowanie oparte na zdarzeniach, w szczególności Windows Presentation Foundation (WPF) i Silverlight na platformach .NET przy użyciu języków XAML i .NET. Przez lata wiele frameworków Javascript, takich jak Angular, Knockout i ExtJS, przyjęło ten …
Przeglądałem dokumenty phpunit i natrafiłem na następujący cytat: Zawsze możesz napisać więcej testów. Jednak szybko przekonasz się, że tylko ułamek testów, które możesz sobie wyobrazić, są w rzeczywistości przydatne. To, co chcesz, to pisać testy, które zawiodą, nawet jeśli uważasz, że powinny one działać, lub testy, które zakończą się powodzeniem, …
Czytam projektowanie oparte na domenie autorstwa Evansa i jestem w części, omawiając architekturę warstwową. Właśnie zdałem sobie sprawę, że warstwy aplikacji i domeny są różne i powinny być oddzielne. W projekcie, nad którym pracuję, są one mieszane i nie mogę powiedzieć różnicy, dopóki nie przeczytam książki (i nie mogę powiedzieć, …
Co oznaczają słowa asynchroniczne i synchroniczne w informatyce? Jeśli użyjesz w Google znaczenia tych słów, otrzymasz: Asynchroniczny: nie istnieje lub nie występuje w tym samym czasie . Synchroniczny: istniejący lub występujący w tym samym czasie . Wygląda jednak na to, że są używane do przekazywania przeciwnego znaczenia w programowaniu lub …
Podczas kompilowania kodu C i patrzenia na asembler wszystkie stosy rosną do tyłu w następujący sposób: _main: pushq %rbp movl $5, -4(%rbp) popq %rbp ret -4(%rbp)- Czy to oznacza, że wskaźnik bazowy lub wskaźnik stosu przesuwają się w dół po adresach pamięci zamiast w górę? Dlaczego? Zmieniłem $5, -4(%rbp)się $5, …
Pracując z kilkoma językami programowania, zawsze zastanawiałem się, dlaczego stos wątków ma predefiniowany maksymalny rozmiar, zamiast rozszerzać się automatycznie w razie potrzeby. Dla porównania, niektóre bardzo popularne struktury wysokiego poziomu (listy, mapy itp.), Które można znaleźć w większości języków programowania, są zaprojektowane tak, aby rosły w miarę potrzeb, podczas gdy …
Po dyskusji z kilkoma moimi kolegami mam „filozoficzne” pytanie o to, jak traktować typ danych char w Javie, zgodnie z najlepszymi praktykami. Załóżmy, że jest to prosty scenariusz (oczywiście jest to tylko bardzo prosty przykład, aby nadać praktyce znaczenie moje pytanie), w którym biorąc pod uwagę ciąg znaków jako dane …
Tworzę stronę internetową przy użyciu ASP.NET MVC 5. Czy Microsoft wydał jakąkolwiek technologię zastępującą FormsAuthentication, czy nadal zaleca uwierzytelnianie użytkownika za pomocą FormsAuthentication dla MVC 5?
Kiedy przeglądam modele baz danych dla RDBMS, zwykle jestem zaskoczony, że nie znam żadnych ograniczeń (oprócz PK / FK). Na przykład wartość procentowa jest często przechowywana w kolumnie typu int(choć tinyintbyłoby bardziej odpowiednie) i nie ma CHECKograniczenia, aby ograniczyć wartość do zakresu 0..100. Podobnie w przypadku SE.SE odpowiedzi sugerujące ograniczenia …
Zaimplementowanie tworzenia łańcuchów na fasoli jest bardzo przydatne: nie trzeba przeciążać konstruktorów, mega konstruktorów, fabryk i zapewnia większą czytelność. Nie mogę wymyślić żadnych wad, chyba że chcesz, aby twój obiekt był niezmienny , w którym to przypadku i tak nie miałby żadnych ustawień. Czy jest więc powód, dla którego nie …
Jestem bardzo solidnym facetem z relacyjnymi bazami danych i rozumiem aż do trzeciej normalnej postaci, doceniam algebraiczne podstawy teorii SQL i mogę prawdopodobnie powiązać złamane serce (lub nie). Nie opracowałem struktury relacyjnej bazy danych NA randki z żoną, ale myślałem o projektach relacyjnej bazy danych na randkach z żoną. Teraz …
Ostatnio miałem zwyczaj „maskowania” kolekcji Java za pomocą przyjaznych dla ludzi nazw klas. Kilka prostych przykładów: // Facade class that makes code more readable and understandable. public class WidgetCache extends Map<String, Widget> { } Lub: // If you saw a ArrayList<ArrayList<?>> being passed around in the code, would you // …
W poście na blogu na F # dla zabawy i zysku napisano: W funkcjonalnym projekcie bardzo ważne jest oddzielenie zachowania od danych. Typy danych są proste i „głupie”. A następnie osobno masz wiele funkcji, które działają na te typy danych. Jest to dokładne przeciwieństwo projektowania obiektowego, w którym zachowanie i …
Załóżmy, że interfejs API REST w odpowiedzi na GETżądanie HTTP zwraca dodatkowe dane w podobiektie owner: { id: 'xyz', ... some other data ... owner: { name: 'Jo Bloggs', role: 'Programmer' } } Oczywiście nie chcemy, aby ktokolwiek mógł się PUTcofnąć { id: 'xyz', ... some other data ... owner: …
Jak w wiarygodny sposób oszacować lub zmierzyć korzyści wynikające z refaktoryzacji kodu w starym, dużym projekcie z zadłużeniem technicznym? Załóżmy na przykład, że masz niektóre komponenty w stosie oprogramowania napisane w starszym języku, a niektóre późniejsze komponenty w nowszym języku. Zespół programistów stale dodaje do tego rozwiązania nowe funkcje i …
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.