Metoda w obiekcie GetHashCode() służy do generowania prostego (Int32) skrótu danego obiektu. We własnych klasach powinniśmy ją nadpisać, szczególnie jeśli dane obiekty będą wykorzystywane w kolekcjach typu Dictionary i HashSet. Jednak powinniśmy zrobić to prawidłowo, przestrzegając 3 prostych zasad...
OpenMP - źródło, które zainspirowało mnie do zmian w HopfieldSymulatorze znajduje się tudaj. Dzisiaj napiszę o C++ w wykorzystanym projekcie. Cała warstwa obliczeniowa jest napisana w tym języku. Oczywiście po napisaniu dobrze jest program zoptymalizować, można jeśli używamy C# i kodu zarządzalnego użyć Parallel.For(...), no ale w czystym natywnym C++ nie ma takij możliwości, pozostaje użycie OpenMP lub wzorców wielowątkowości, które są dostępne w Visual C++ 2010. Niestety nie mam ...
Programowanie rozproszone 3816 dni, 15 godzin, 47 minut temu 49 źrodło rozwiń
August 07Daj się poznać #3 Dzisiaj postanowiłem usprawnić symulator sieci Hopfielda o zapamiętywanie kolorów. Jak pewnie wiecie z poprzednich wpisów na wyjściu sieci Hopfielda są wartości od -1 do +1 aby zapisać obraz kolorowy można – taki był mój pierwszy zamysł – podzielić ten przedział na wszystkie dostępne kolory RGB bez przezroczystości Alpha wychodzi 256x256x256 przedziałów, trochę dużo. Eksperymenty pokazały, że jest z tym kłopot obrazy co prawda zapamiętywały się ale pokazywały się przekłamania…
Programowanie rozproszone 3816 dni, 17 godzin, 29 minut temu 72 źrodło rozwiń
Jeszcze przed założeniem własnej działalności i przeniesieniem wszelkich operacji związanych z programowaniem na własną maszynę, do własnego gniazda, nieśmiało i powoli badałem przydatność wirtualizacji dla programisty. Z badań owych wyniknął wniosek bardzo jasny - wirtualizacja to dla mnie rozwiązanie IDEALNE i bez niego nie bardzo wyobrażam sobie pracę. Szczególnie jako pseudo-freelancer jakim jestem teraz, gdy zdarza mi się pracować nad więcej niż jednym projektem jednocześnie.
Autor: Chciałbym napisać dziś słów kilka o WCF RIA Services. Dokładnego przeglądu standardowych scenariuszy wersji pierwszej finalnej dokonałem niejako publikując zaktualizowane przykłady w dwóch częściach (patrz cz.I i cz.II). I chociaż jest tam wiele fajnych funkcjonalności, to dziś napiszę o trochę mniej standardowych, rzadziej spotykanych rzeczach. Mam tu na myśli takie zagadnienia jak korzystanie z NHibernate, MVVM (jest to typowe podejście dla Silverlight, ale nie zawsze przykłady czy prezentacje...
Programowanie rozproszone 3821 dni, 12 godzin, 25 minut temu 214 źrodło rozwiń
W sytuacji, gdy nad danym projektem pracuje większa grupa programistów czasami trudno jest się wystrzec oczywistych błędów. Takim błędem jest zapominanie o domyślnej inicjalizacji zmiennych w przypadku enum-a.
Jak w wielu miejscach można przeczytać, Microsoft ogłosił nową edycję swojego środowiska programistycznego – Visual Studio LightSwitch. Jak można określić nową wersję? W przeciwieństwie do wersji Professsional, Premium, gdzie jest coraz więcej lub mniej opcji, nowa wersja LightSwitch skupia się na jednym konkretnym zadaniu – budowaniu aplikacji biznesowych. Budowaniu tych aplikacji w konwencji RAD (Rapid Application ...
W niniejszym post'cie chciałbym zaprezentować podstawowe elementy niezbędne do rozpoczęcia przygody z grafiką trójwymiarową opartą o Windows Presentation Foundation (WPF). Niniejszy wpis poza prezentacją różnych i niezależnych od konkretnego wykorzystania treści stanowi również opis pewnych zagadnień związanych z projektem MeshDiagram3D. Przed przystąpieniem do pisania jakiejkolwiek aplikacji wykorzystującej WPF 3D należy zrozumieć pewne podstawy: potrzebujemy kontrolkę, która zapewni nam możliwość wyś...
Dziś przedstawiam nowe GUI do Hopfield Symulatora 0.2.1. Źródła projektu można pobrać tutaj: http://hopfieldsimulator.codeplex.com/SourceControl/list/changesets Instalator w wersji 0.2.1 x86 tutaj: http://hopfieldsimulator.codeplex.com/releases/view/49956
Programowanie rozproszone 3821 dni, 12 godzin, 25 minut temu 74 źrodło rozwiń
Niedawno miałem przyjemność uczestniczyć w pierwszym spotkaniu Krakowskim spotkaniu inicjatywy NoSQL Summer. Zainteresowała mnie, przede wszystkim, forma spotkań — dyskusje dotyczące przeczytanych “lektur obowiązkowych”. Skojarzyło mi się bardziej z dyskusyjnym klubem filmowym, niż typową technologiczną juzergrupą. Postanowiłem się więc wybrać. Nie żałowałem. Organizacji krakowskich spotkań podjął się Adam Pohorecki. Dzięki temu org...
Bazy danych i XML 3821 dni, 12 godzin, 25 minut temu 99 źrodło rozwiń
W grach komputerowych pisanych w XNA następuje wcześniejsze przetwarzanie danych takich jak: tekstury, modele czy dane muzyczne w celu weryfikacji ich poprawności i optymalizacji wykorzystania ich w kodzie (można ustawiać nawet poziom ich kompresji). Otóż, za wszystko odpowiada tzw. Content Pipeline, będący swojego rodzaju pośrednikiem pomiędzy danymi zewnętrznymi, a tymi wykorzystywanymi bezpośrednio w grach. Jak się okazuje bowiem, oprócz kodu… kompilowane są też dane, za co odpowiada tzw. Content Mana...
STM (z ang. Software Transactional Memory) to podejście zaczerpnięte od kolegów z baz danych. Idea jest bardzo prosta: albo wszystkie instrukcje w danej transakcji wykonają się poprawnie, albo żadna z nich nie powinna się wykonać. Cecha ta określana jest jako niepodzielność. Głównych cech jest w sumie 4...
Programowanie rozproszone 3821 dni, 12 godzin, 25 minut temu 44 źrodło rozwiń
Sposób debugowania zmienił się diametralnie w najnowszej wersji SharePointa głównie za przyczyną tego, że w końcu wystarczy wcisnąć F5 i patrzeć jak się wykonuje kod. To jednak nie wszystko co jest do dyspozycji w temacie kontroli kodu w trakcie wykonywania.
Dobry artykuł w skrócie opisujący użycie Sketchflow. Jeżeli ktoś jeszcze go nie używał, to jest to świetna okazja, aby poznać podstawy. Sketchflow to technologia bazująca na Silverlight, która pozwala na pokazanie klientowi koncepcji planowanego produktu za pomocą kilku okienek łączonych linkami, bądź kilkoma linijkami kodu.
Silverlight 3821 dni, 12 godzin, 25 minut temu 147 źrodło rozwiń
11 rozdziałów książki "Programming Windows Phone 7" autorstwa Charlesa Petzolda do pobrania zupełnie za darmo.
Mobile development 3821 dni, 17 godzin temu 108 źrodło rozwiń
Prowadząc dzisiaj małe rozpoznanie do czego zdolne są narzędzia Dynamic Data napotkałem pewien problem, którego nie mogę zrozumieć. Z jakiegoś powodu dla tabel, których klucze główne składają się z więcej niż jednej kolumny w tabeli dzieją się dziwne rzeczy związane z kluczami obcymi. Dlatego postanowiłem podzielić się tym doświadczeniem w nadziei, że może ktoś czytający ten artykuł będzie w stanie wskazać mi „właściwą ścieżkę” :)
Dziś zgodnie z obietnicą na dziś rozpracowałem kontrolkę MsChart. Dodam, że na CodePlex dodałem nową wersję symulatora z formatką wykresów. Źródła: http://hopfieldsimulator.codeplex.com/SourceControl/list/changeses Instalator: http://hopfieldsimulator.codeplex.com/releases/view/50075
Programowanie rozproszone 3822 dni, 7 godzin, 50 minut temu 29 źrodło rozwiń
Autor: Kolejny "kliento-walidacyjno-mvcowy post". Tym razem zmagałem się z niedziałającą walidacją po wpięciu w DOM HTMLa zwróconego z serwera. Akcja kontrolera kończyła się instrukcją: 1: return PartialView(viewName, model) , a wstawianie w odpowiednie miejsce po stronie klienta odbywało się poprzez wywołanie jQuery.html(). Zdziwienie moje było o tyle duże, że kawałek DOMu uzyskiwany przez przeglądarkę najwyraźniej zawierał skrypt odpowiedzialny za walidację (inspected by Firebug).
Jest jedna magiczna i zupełnie kluczowa rzecz w działaniu Internetu na której codziennie polegasz. Dzieje się to w protokole TCP, jednym z podstawowych elementów składających się na Internet. TCP to metoda przesyłania danych, która jest niezawodna. Rozumiem przez to, że kiedy wysyłasz wiadomość przez sieć z wykorzystaniem TCP dotrze ona na miejsce w formie niezmienionej i nieuszkodzonej. Używamy TCP do wielu rzeczy, takich jak przeglądanie...
Short Tip #10: modyfikacja domyślnych szablonów plików VS2008 Każdy programista to leń, już kiedyś o tym pisałem Kiedy dodajemy do projektu nową klasę/interfejs/ogólnie plik z kodem* zawiera on określone z góry rzeczy (nazwa klasy, domyślną sekcję using itp.) Można zmodyfikować istniejący szablon plików, aby wygenerowany kod był od razu bardziej dostosowany do naszych potrzeb. W moim przypadku jest to wydzielenie regionów na pola, właściwości i metody (z podregionami publiczne/prywatne) oraz wygenerowani...