Warsaw CodeCamp 2012 Każdego kto w najbliższą sobotę będzie w Warszawie zapraszam na wydarzenie organizowane przez Warsaw Official .Net User Group. Tematyka przewodnią wydarzenia będzie porównanie Windows Phone z Windows 8 ale również będzie o grach a także asynchroniczność wchodząca w Windows 8. Szczegóły wydarzenia znajdziecie na jego stronie. REJESTRACJA: Wydarzenie jest darmowe, ale wymagana jest rejestracja. Każdy zarejestrowany użytkownik to większe wsparcie dla organizat...
Na dobrą sprawę notka powinna kończyć się na krótkim stwierdzeniu: do zrzutów procesów należy używać tylko aplikacji o tej samej 'bitowości', co zrzucana aplikacja. Nie byłbym jednak sobą, gdybym nie postanowił przyjrzeć się nieco bliżej problemowi. W systemie 64-bitowym wszystkie procesy są 64-bitowe. Kropka. Aplikacje 32-bitowe uruchomione są w trybie emulacji w ramach WOW64, jednak dla systemu dalej są to procesy 64-bitowe, choć z pewnymi rozszerzeniami związanymi z architekturą - a więc dodatkowymi ...
Photo & Video Capture Dziś zajmiemy się dostępem do kamery aby móc robić zdjęcia i nagrywać filmy z poziomy naszej aplikacji. Po pierwsze potrzebujemy w naszym projekcie dwóch przestrzeni nazw z których będziemy korzystać.using Windows.Media.Capture; using Windows.Storage; Pierwsza przestrzeń zawiera między innymi klasy do obsługi kamery. Natomiast druga zawiera klasy odpowiedzialne za operowanie na plikach, strumieniach itd.. Sama obsługa kamery jest bardzo prosta i wygląda następująco.private...
Przechodząc na język C#, chcąc nie chcąc programuje się zgodnie z wyrobionych dotąd stylem i wg starych przyzwyczajeń. Niemniej, staram się weryfikować, czy obrana droga rzeczywiście jest tą, z której należy korzystać na nowym terenie, jakim jest C#. Dotąd często korzystałem z możliwości domyślnych parametrów, tak w konstruktorach, jak i w metodach (procedurach i funkcjach). Ostatnio mój kolega zauważył, że C# do konstrukcji klas nie używa konstruktorów z domyślnymi parametrami...
Sztuka programowania 4564 dni, 15 godzin, 31 minut temu 131 źrodło rozwiń
Ponad dwa lata temu, popełniłem wpis na temat operacji na kolekcjach w C#. Post ten ku mej uciesze, wciąż cieszy się sporą popularnością, dlatego też postanowiłem napisać niejako jego kontynuację. Gdy dwa lata temu pisałem tamten wpis, wciąż dominującą wersją frameworka .Net, była ta oznaczona wersją 2.0. Dziś sytuacja się trochę zmieniła i przynajmniej w moim odczuciu, coraz więcej osób korzysta z wersji 3.5 i 4.0, a na horyzoncie jest już .Net 4.5, który pojawi się w pełni wraz z Windowsem 8 i Visual ...
Architektura 4565 dni, 6 godzin, 37 minut temu 296 źrodło rozwiń
Kolejna niedzielna, kolejny prosty kawałek kodu który może się komuś przydać Zacznijmy od krótkiego ‘story’ – tworzymy grę w Silverlightcie i chcemy by miała ekran tytułowy w stylu gier np. z konsoli NES – tj. przez paręnaście sekund widzimy ekran menu, a potem odpala się ‘demo’. Sprawa jest banalna – wystarczy utworzyć nowy obiekt typu DispatcherTimer, zainicjować go, podać interwał oraz co ma wykonać po określonym czasie...
Sztuka programowania 4565 dni, 18 godzin, 26 minut temu 126 źrodło rozwiń
W ostatnich postach opisuje różne mechanizmy synchronizacji w c#. Jak widać, jest tego na prawdę wiele i sama znajomość słowa lock nie wystarcza jeśli poważnie myśli się o algorytmach współbieżnych. Dziś kolejna metoda synchronizacji a mianowicie klasa CountdownEvent. Ostatnie posty oprócz wprowadzenia do wspomnianych klas stanowią wstęp do kolekcji współbieżnych, które zamierzam omówić wkrótce. Konstruktor CountdownEvent przyjmuje liczbę całkowita (zwykle większą od 0), która stanowi wartość początkową...
Sztuka programowania 4565 dni, 18 godzin, 26 minut temu 113 źrodło rozwiń
Nie taki straszny ten nhibernate jak się początkowo wydaje. Wiem bo sam sprawdziłem, na początku myślałem, znowu wszystko w xml, nigdy nie wiadomo co i gdzie wpisać, ... Nie tym razem, wystarczy obejrzeć sobie ten prosty wstęp i okazuje się, że podłączenie nh do lokalnego pliku z sqlce jest proste. Chcesz korzystać z postgresql jako bazy danych, nic skomplikowanego. Zacznij od ściągnięcia paczki nhibernate. Następnie rozpakuj na dysk, a w środku znajdź katalog o nazwie "Configuration_Templates", w ni...
Bazy danych i XML 4566 dni, 13 godzin, 55 minut temu 222 źrodło rozwiń
Akcja O’Reilly i kalkulator zarobków O’Reilly Mam dla was dziś dwa niusy. Pierwszy to akcja wydawnictwa O’Reilly w ramach której można zakupić książkę “Programming Windows Sixth Edition” za jedyne 10$. Jednak najlepsze w tej akcji nie jest centa lecz fakt że jeśli kupi się książkę teraz dostanie się darmowy dostęp do dalszych wersji. Aktualnie książka ma status Consumer Preview a będą jeszcze Release Preview i Final. Cena 10$ obowiązuje do 31 maja więc costał tylko tydzień. Po tym ...
W najnowszej wersji SQL Server pojawił się mechanizm sekwencji. Sekwencje w swoim działaniu przypominają Identity z tą różnicą, że ich działanie nie ogranicza się do pojedynczej tabeli. Utworzona sekwencja jest globalnym obiektem bazy danych i może być wykorzystywana w wielu tabelach, ponadto można w łatwy sposób zarządzać nią z poziomu języka T-SQL.
Bazy danych i XML 4570 dni, 5 godzin, 22 minuty temu 198 źrodło rozwiń
Styl Metro–video tutorial W ubiegłym tyg. ukazał się pierwsze video z cyklu opisującego styl metro w formie video. Prowadzi je Grzegorz Róg właściciel portalu eduweb.pl, który jest autorem wielu publikacji na temat projektowania stron WWW jak również aplikacji na Windows Phone. Serdecznie zapraszam do obejrzenia filmiki są świetnie tu macie linka. Filmiki są króciutkie ale treściwe.Dodaj do ulubionych:LubięBądź pierwszą osobą, która doda ten wpis do listy ulubionych. Zamiesz...
Dziś krótki post o ciekawej konwersji, która ma miejsce podczas przekazywania delegat. Rozważmy kod
Spacje czy tab-y lub tabulatory do wciec. Nad tym pytaniem zmarnowano wiele energii. Sprawdźmy zatem jakie są wasze preferencje w tej materii. Zapraszam do ankiety a za kilka dni sprawdzimy co z tego wyszło
Zasada Common Reuse Principle mówi, że klasy w pakiecie/assembly są ponownie używane wspólnie. Jest to konsekwencja Reuse Release Equivalence Principle z której wynika, że klient posiada referencje do całej biblioteki a nie pojedynczej klasy. Z tego zaś wynika, że jeżeli polega na jednej klasie (wykorzystuje jedną klasę) to może wykorzystywać wszystkie. W końcu publikując bibliotekę nie jesteśmy wstanie określić z których klas będzie ktoś używał (chyba że umieścimy tam jedną publiczną klasę ). To wsz...
Architektura 4570 dni, 5 godzin, 22 minuty temu 143 źrodło rozwiń
Settings Wita w dzisiejszym poście dalej męczę temat charms bar (Win + C) czyli prawego wysuwanego paska. Dziś zajmiemy się ustawieniami naszej aplikacji. Co to znaczy? W przypadku aplikacji metro pisanych na Windows 8 Microsoft mocno zaleca używania jednego miejsca dla ustawień znajduje się właśnie na prawym wysuwanym pasku pod przyciskiem Settings. Jest to miejsce gdzie powinniśmy trzymać ustawienia ponieważ i tak użytkownik musi wejść w to miejsce jeśli będzie chciał zmienić ustawienia nadane p...
Dziś kolejny post o synchronizacji w c#. Semafor to bardzo popularna forma limitowania liczby wątków, które mogą mieć dostęp do danego kodu. Nie chcę omawiać tutaj podstaw semafora, ale myślę, że warto przypomnieć ogólną zasadę. Pseudokod (źródło Wikipedia):procedure V (S : Semaphore); begin (* Operacja atomowa: inkrementacja semafora *) S := S +1; end; (* Operacja atomowa: dekrementacja semafora ) procedure P (S : Semaphore); begin ( Cała operacja jest atomowa *) repeat Wait()...
Sztuka programowania 4572 dni, 16 godzin, 9 minut temu 266 źrodło rozwiń
Może nam się od czasu do czasu zdarzyć, że chcemy z kodu przełączać atrybut Visibility danego obiektu wyświetlanego na ekranie, np. na kliknięcie przycisku...
Silverlight 4572 dni, 16 godzin, 9 minut temu 155 źrodło rozwiń
Na platformie .NET od wersji 3.5 dostępna jest technologia LINQ oferująca uniwersalny mechanizm zadawania zapytań do obiektów. W tym wpisie pokażę w jaki sposób przy użyciu LINQ to XML przenieść dane z kolekcji obiektów do dokumentu XML, wczytać dane z pliku XML do kolekcji oraz zmodyfikować zawartość XML-a.
W .NET istnieje wiele sposobów synchronizacji pracy wątków. O dużej części z nich pisałem już na blogu (z ciekawszych np. klasa Barrier ). Najpopularniejszym i najłatwiejszym sposobem jest użycie słowa kluczowego lock. W wielu przypadkach jest to najlepszy i najbezpieczniejszy wybór. SpinLock to zupełnie inne podejście. W przypadku lock, wątek jest usypiany i budzony gdy przyjdzie na niego kolej. Ma to kilka poważnych wad. Wiążą się one z szeregowaniem oraz zmianą kontekstu. Zmiana kontekstu jest dość c...
Sporo czasu poświęciłem na elektronikę i mimo tego, że nie byłem i nie jestem przesadnie pedantyczny to tranzystory i rezystory zawsze miałem uporządkowane w klasterach z posklejanych pudełek po zapałkach lub woreczkach strunowych. Takie postępowanie powodowało, że zawsze wiedziałem gdzie szukać tego jednego rezystora, który właśnie potrzebowałem. Takie segregowanie nie ma znaczenia przy 10-20-50 elementach, można to jeszcze ogarnąć jednak przy 100 i więcej zaczyna być problemem. Dokładnie to samo dzieje...
Architektura 4575 dni, 12 godzin, 14 minut temu 85 źrodło rozwiń