Po chwilowej przerwie w blogowaniu postanowiłem wrócić to tego niezwykle przyjemnego zajęcia. Dziś chciałbym przedstawić zagadnienie zdarzeń rozproszonych jakie można zastosować w aplikacjach klient/serwer pisanych w .NET Framework. W swojej karierze spotkałem się z produkcyjnym użyciem dwóch rodzajów zdarzeń, pierwsze polegało na użyciu Notification Services wysyłanych przez Microsoft SQL Server 2005, jednak...
Strona głównaUżytkownik
piotr_sowa | użytkownik
Programowanie rozproszone 5101 dni, 9 godzin, 6 minut temu 101 źrodło rozwiń
To jest kolejny wpis na przyszły tydzień ;-), albo jeśli ktoś woli niech tydzień blogowania zaczyna się od niedzieli ;-). Teraz napiszę o InteliGUI, nowym pomyśle na zastosowanie sieci Hopfielda. W całym przedsięwzięciu chodzi o to, żeby uzyskać inteligentne GUI tzn. takie które będzie się uczyć sekwencji jakich używamy i samo będzie proponować co chcemy zrobić na podstawie kilku kroków. Oczywiście to rozwiązani jakie opiszę...
W przyszłym tygodniu będę mocno zajęty dlatego już dziś opublikuję dwa posty jako konkursowe przyszłotygodniowe ;-). Mam nadzięję, że nie jest to wbrew zasadom. Dziś będzie krótki wpis na temat sposobu na zrobienie na zwykłym panelu FlowLayoutu. Bardzo użyteczna funkcja np. gdy nad Gridem chcemy mieć filtry i chcemy żeby filtry pływały w zależności od rozmiaru okna jeden za drugim. Albo np. do napisania p...
Autor: Do sprzątania użyłem StyleCop (http://stylecop.codeplex.com/), a do poprawy potencjalnych błędów analizatora FxCop (http://code.msdn.microsoft.com/codeanalysis/Release/ProjectReleases.aspx?ReleaseId=553). Po pobraniu z Internetu zainstalowaniu narzędzi, aby wykonać analizę tego, co jest do naprawy należy kliknąć prawym przyciskiem myszy na wybranym projekcie i wybrać opcję Style Analisis dla StyleCop, natomiast dla FxCop jest opcja Run Code Analysis. Narzędzia działają tak, że generują w oknie Er...
Architektura trójwarstwowa jest chyba najlepiej znaną implementacją wzorca warstw w architekturze aplikacji. Z mojego doświadczenia wynika jednak, że znajomość ta zwykle jest bardzo powierzchowna i nie sięga wgłąb (warstw;-)). Porzućmy więc na chwilę CQRS, DDD i inne fajne akronimy i wróćmy “do korzeni”. Co to jest architektura trójwarstwowa?Definicja Sama jej nazwa w języku polskim jest problematyczna. Angielska terminologia rozróżnia dwa ich rodzaje: tiers to wa...
Architektura 5173 dni, 6 godzin, 21 minut temu 164 źrodło rozwiń
HopfieldSimulator - Daj się poznać #11 - Hostowanie WinForms w WPF Dzisiaj napiszę o WPF. Przepisałem symulator w tej technologii i wygląda nieco inaczej. Wersję WPF można pobrać tutaj: http://hopfieldsimulator.codeplex.com/releases/view/50968 (zostawiłem wersję WinForms jako podstawową). Zasadnicze zmiany w stosunku do pisania w WinForms to podział okien na XAML i kod C# skojarzony z dokumentem XAML. Podstawowy podział przestrzeni w WPF z tego, co się dowiedziałem to Grid...
HopfieldSimulator – Daj się poznać #10 – wielowątkowość GUI Dziś kilka przykładów jak zrobiłem w symulatorze wielowątkowość (można pobrać go tutaj: http://hopfieldsimulator.codeplex.com/releases/view/50968). Będzie nieco przykładów kodu, nie wiem czy najlepszych jakie można zrobić, ale pokaże jak podszedłem do tematu aby symulator w trakcje nauki czy odtwarzania nie „zamrażał się”. Bo na początku było to nagminne. Jest kilka sposobów na uzyskanie wielowątkowości, ja podszedłem ...
Dzisiaj opiszę sposób na przewidywanie kursów walut. Kursy średnie NBP znajdują się na stronie http://rss.nbp.pl/kursy/TabelaA.xml. Na nowy symulator z kilkoma drobnymi poprawkami tutaj: http://hopfieldsimulator.codeplex.com/releases/view/50771. Po zainstalowaniu tej wersji możemy uruchomić symulator i przejść na zakładkę Predictor. Następnie możemy wprowadzić parametry pracy symulatora np. takie: d = 50000, eta = 0.7, n1 = 5, n2 =...
Dzisiaj opiszę sposób, jaki zastosowałem by przechwycić pierwszy wyjątek. Czasem w aplikacji czegoś nie przewidzimy i wyleci nam na wyjątku, dobrze wtedy zalogować ten fakt w jakimś pliku tekstowym lub e dzienniku systemu Windows. Należy też przekazać informację użytkownikowi, aby mógł w razie problemu skopiować komunikat z wyjątku i stos wywołań abyśmy wiedzieli gdzie aplikacja wyleciała. Nowy instalator z tą funkcjonalnoś...
Zastanawiałeś się kiedyś jak działa czat w gmail’u lub na facebook’u, wysyłanie i odbieranie wiadomości w czasie rzeczywistym, zmiany statusu znajomych widoczne niemalże od razu itd?. Zasada działania tego typu rozwiązań opiera się o technikę zwaną COMET, znaną też pod nazwami PUSH AJAX i REVERSE AJAX. Zacznijmy jednak od początku. Przyjrzymy się teraz jak wygląda in...
Witam, w zeszłym tygodniu dodałem do symulatora Predykator, w celu sprawdzenia jak działa należy przejść pobrać nowy instalator dostępny tutaj: http://hopfieldsimulator.codeplex.com/releases/view/50597 Po odinstalowaniu poprzedniej wersji należy zainstalować tą. Na pulpicie pojawi się skrót do aplikacji „Hopfield Simulator”. Trzeba ją uruchomić i przejść na zakładkę „Predictor” następnie możemy określić parametry dla przykładu niech będą takie: d = 30, eta = 0.7, n1 = 6 i n2 = 20.P...
Dziś chciałbym zaprezentować zastosowanie sieci Hopfielda do rozpoznawania polskich banknotów. Można zastosować takie rozwiązanie w automacie przyjmującym banknoty w celu odgadnięcia właściwego nominału banknotu. Oczywiście zapamiętanie obrazka całego banknotu nie jest dobrym pomysłem gdyż w przyzwoitej rozdzielczości obraz będzie zbyt duży do zapamiętania, poza tym, banknoty mają różną wielkość, postanowiłem pokazać przykład z zapamiętaniem prawego górnego rogu i rozpoznawaniem ...
Programowanie rozproszone 5194 dni, 22 godziny, 24 minuty temu 170 źrodło rozwiń
Bartłomiej Szafko: Nie wiem czy zauważyliście, ale przy domyślnie stworzony instalatorach w WiX okno postępu instalacji nigdy nie wyświetla dokładnie jakie pliki, klucze rejestru są zakładane i kopiowane, wyświetla się tylko dosyć ogólna informacja “Kopiowanie nowych plików”
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 5202 dni, 2 godziny, 39 minut temu 46 źrodło rozwiń
Ten wpis jest kontynuacją tematyki związanej z grafiką trójwymiarową opartej o WPF. Zostanie w nim pokazane jak przy pomocy kodu napisanego w C# narysować proste wielościany.Niniejszy wpis poza prezentacją różnych i niezależnych od konkretnego wykorzystania treści stanowi również opis pewnych zagadnień związanych z projektem Mesh Diagram 3D.Informacje dotyczące projektu oznaczone są etykietą MeshDiagram3D.Poprzedni wypis został zakończony na prezentacji najprostszego obiektu w scenie – czyli trójkąta. Tr...
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ś...
Podczas zapoznawania się z ASP.NET .oraz MVC2 trafiłem na coś, co jest bardzo denerwujące. Mianowicie strony aspx nie są kompilowane podczas kompilacji samego projektu. Jaki jest tego skutek? Dodatkowa robota w poszukiwaniu błędów wynikających z literówek. A zatem zobaczmy zmienić ten żmudny proces poprzez włączenie w visual studio sprawdzania widoków podczas build'a.
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 5197 dni, 6 godzin, 1 minutę temu 54 ź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 5197 dni, 7 godzin, 42 minuty temu 76 źrodło rozwiń
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 5202 dni, 22 godziny, 4 minuty temu 33 źrodło rozwiń