Kilka dni temu zainicjowałem cykl postów związanych z wielowątkowością. Rozpocząłem dość standardowo, bo od wyjaśnienia istoty tego zagadnienia i przedstawienia prostych wątków. Wiedza zawarta w tamtym wpisie, powinna w wielu przypadkach okazać się wystarczająca - szczególnie jeśli w naszej aplikacji mamy tylko jeden wątek dodatkowy, który stworzony jest tylko po to by odciążyć wątek główny. Takie proste rozwiązanie nie będzie jednak zawsze do końca wystarczające. Problemy pojawią się w sytuacji gdy wąt...
Strona głównaUżytkownik
Paweł Łukasik | użytkownik
Architektura 4491 dni, 15 godzin, 43 minuty temu 353 źrodło rozwiń
Dziś przytrafiła mi się bardzo nie miła niespodzianka podczas pracy. Kiedy na zakończenie dnia chciałem pchnąć zmiany do tfs za pomocą komendy git tfs rcheckin po uprzednim ściągnięciu wszystkiego za pomocą git tfs pull i rebase, nagle z niewiadomych przyczyn rcheckin zwrócił mi kod błędu 1 i wszedł w interaktywny rebase. Za nic nie wiedziałem co jest nie tak – brak też informacji o jaki pliki chodzi (albo ja ślepy tego nie zauważyłem). Tak czy siak, skończyło się na tym, że za pomocą: git tfs ch...
Tematyka uruchamiania i debugowania aplikacji Windows 8 na zdalnym urządzeniu nie jest nowa. Niemniej jednak postanowiłem zrobić małe podsumowanie na ten temat przy okazji ukazania się finalnej wersji Windows 8. How to Create Windows 8 Bootable USB Device from ISO Image using WinUSB Maker. Mając bootowalne USB, ustawiamy w BIOS-ie kolejność bootowania, tak by pierwszym urządzeniem był nasz pendrive (przez USB podłączamy wcześniej klawiaturę). Minimalna rozdzielczość dla aplikacji Metro w Windows 8 to ...
Od jakiegoś czasu dostępny jest dokument opublikowany przez Microsoft Patterns & Practices nad którym pracowała cała rzesza community w tym i nasz Szymon Pobiega – wielkie więc gratulacje! :) może ja ślepy albo głuchy ale dowiedziałem się o tym dopiero teraz :) Tak czy siak, cały dokument jest dostępny niestety jedynie w formacie stron HTML na stronach MSDN – nie ma żadnego docx, pdf czy innego formatu o ile mi wiadomo.
Architektura 4495 dni, 7 godzin, 18 minut temu 109 źrodło rozwiń
Stop me if you know this one. You find a library/framework that does something useful to you. You start using it and then realise it doesn’t work the way you want it in certain scenario or has a missing feature. What do you do then?Abandon the library and look for alternative that is more “feature rich”? Ask the author to support your scenario/submit a pull request with the feature? Those two, from my experience, a...
Dzisiaj przykład skryptu SQL, który pozwala na serwerze MSSQL 2008r2 odtworzyć kopię dowolnej bazy danych, umieszczoną w dowolnej, dostępnej dla serwera SQL lokalizacji, na dowolną bazę danych serwera. Skrypt wymaga podania dwóch parametrów (które należy wprowadzić do dwóch, zadeklarowanych jako pierwsze, zmiennych) tj. ścieżki do kopii bezpieczeństwa oraz nazwy bazy danych. Wszystkie pozostałe informacje skrypt pobiera sobie automatycznie, czyli ...
Bazy danych i XML 4503 dni, 2 godziny, 13 minut temu 92 źrodło rozwiń
W tym wpisie zajmę się omówieniem polecenia yield, udostępnionego w wersji 2.0 języka C#. Do czego służy ta instrukcja? Dzięki niej możemy tworzyć tzw. leniwe kolekcje, do których poszczególne elementy dodawane są dopiero w momencie zgłoszenia na nie zapotrzebowania. Żeby zaprezentować działanie polecenia yield, najpierw zobaczmy standardowy sposób tworzenia kolekcji.
Projektowanie dotyku Metro 3/3 Windows 8 jest systemem który będzie również dostępny na tabletach. Tymi urządzeniami sterujemy przy pomocy dotyku dlatego projektując aplikację metro trzeba wziąć pod uwagę iż nie zawsze będzie obsługiwana przy pomocy myszki a za pomocą dotyku. System Windows 8 posiada zwiększony zestaw interakcji dotykowych, który jest używany w całym systemie. stosując ten zestaw w swoich aplikacjach sprawimy że stanie się znajoma dla użytkownika. Przy projektowaniu interfejsu u...
Programując pod Sharepointa czy inne tego typu badziewie musimy podpisywać nasze assemblies i wrzucać je do GACa. Już dwa razy mnie to "ugryzło" i straciłem w sumie dobre kilka godzin na diagnostykę poniższego scenariusza: 1) piszę testy do funkcjonalności zawartej w podpisanej dllce 2) koduję implementację w tejże dllce 3) uruchamiam testy 4) dostaję wyjątek TypeLoadException czy coś innego w ten deseń mówiącego, że w testowanej dllce nie ma kodu który... przecież tam jest bo dopiero co go napisałem!
W dwóch poprzednich tematach poświęconych Integration Services przedstawiłem wykorzystanie Script Component do tworzenia własnego źródła danych oraz ich transformacji. W dzisiejszym wpisie omówię jego ostatnie zastosowanie – implementację własnego zapisu danych.
Uczepiłem się ostatnimi czasy tego wzorca. Uczepiłem się na tyle, że w trakcie przygotowań jest mój autorski framework (może trochę za dużo powiedziane). Jednak nie o tym będzie w tym artykule. W czasie prac nad nową aplikacją na Windows Phone napotkałem pewne kłopoty. Jak to w MVVM, wywoływanie określonych zachowań interfejsu we View-Model zawsze stawia pewne znaki zapytania. Tym razem miałem do wyświetlenia różne komunikat...
Silverlight 4510 dni, 11 godzin, 48 minut temu 387 źrodło rozwiń
W dzisiejszym temacie poruszę pewien problem na jaki można natknąć się podczas używania kolekcji obiektów typu wartościowego. Aby pokazać o co dokładnie chodzi zacznijmy od zdefiniowania przykładowej klasy opisującej prostokąt.
Sztuka programowania 4508 dni, 11 godzin, 45 minut temu 323 źrodło rozwiń
Żyjemy teraz w ciekawym momencie roku, kiedy to Windows 8 uzyskuje status RTM, a za nim inne produkty jak np. Visual Studio 2012, a dodatkowo mamy też SQL-a 2012, który status RTM osiągnął już na przełomie marca i kwietnia tego roku. Wielu developerów zapewne będzie robiło reinstalacje, będzie po kolei instalowało aplikacje niezbędne do pracy, a później np. mogą zobaczyć w SQL Server Configuration Manager coś takiego: Najprościej jest pamiętać aby podczas nowej instancji wykonywać ją wg poniższej kole...
W jednej z aplikacji pojawiło się wymaganie: dodać windows authentication. Nic prostszego! Zmiana na IIS, dodanie w web.config, i działa, prawda? Ano nieprawda, jeśli aplikacja stworzona jest w MVC 3.
Dostałem NDepend4 w zamian za jego opis :) Nie muszę o nim mówić w samych słodkich komentarzach, także można wpis czytać do końca. NDepend służy to statycznej analizy kodu napisanego w .NET. Potrafi ocenić kod po wieloma względami, np: ze względu na skomplikowanie, ilość linii kod czy instrukcji IL, ilość zmiennych, łatwość modyfikacji, może zasugerować zmian typów z referencyjnych na wartościowe (ref type --> value type). Sama instalacja jest banalnie prosta, ściągamy paczkę ze strony, rozpakowujemy ...
1 Sierpnia to bardzo ważny dzień dla firmy Microsoft. Dzisiaj, a właściwie godzinę temu, Windows 8 oraz Windows Server 2012 otrzymały status RTM czyli Release To Manufacture. RTM oznacza tyle, że produkty zostały ukończony. Do RTM-a nie dodaje się poprawek, nie wprowadza się zmian. RTM-a się tłoczy na płytach i wkłada do pudełek Windows 8 Jaki będzie żywot nowego systemu operacyjnego? Na pewno trudny, ponieważ jest bardzo rewolucyjny w swoim interfejsie użytkownika. Na pewno będzie wiele ...
Piszemy aplikację. Uruchamiamy. Działa. Wysyłamy do klienta. Uruchamia. Nie działa. Znamy to wszyscy, prawda? Powodów może być oczywiście bez liku, od specyficznej konfiguracji konkretnej maszyny po naszą głupotę. Niekiedy jednak problem jest prozaiczny - aplikacja nie może skorzystać z wymaganych dllek! Nie zawsze (a raczej: nigdy?) to co dodajemy bezpośrednio do referencji rozwiązania jest wystarczające do poprawnego działania aplikacji. Strasznie łamałem sobie kiedyś głowę nad takim scenariuszem
Często zachodzi potrzeba zaimplementowania w bazie danych struktury hierarchicznej, np. dla kategorii. Pierwszy sposób jaki od razu przychodzi do głowy to adjacency list (lista sąsiedztwa) i polega na dodaniu do tabeli kolumny ParentId na rodzica danej kategorii. Rozwiązanie to jest bardzo proste, jednak mało optymalne gdy mamy wiele zagnieżdżeń. Alternatywą dla tej metody jest nested set (zbiór zagnieżdżony), polega na dodaniu do tabeli dwóch dodatkowych kolumn na lewy i prawy numer każdego węzła. Neste...
Bazy danych i XML 4523 dni, 23 godziny, 54 minuty temu 264 źrodło rozwiń
Widoki są tworem dość często wykorzystywanym w bazach SQL – dobrze zaplanowane bardzo ułatwiają pracę z bazą. Widoki indeksowane zapewniają lepszą wydajność zapytań. Niestety nie zawsze nasz indeks będzie brany pod uwagę podczas wykonania zapytania.
Bazy danych i XML 4526 dni, 13 godzin, 47 minut temu 115 źrodło rozwiń
Nierzadko jest tak, że aplikacja zachowuje się nieprawidłowo, jednak wszystkie wyjątki są przechwycone i nie ma żadnej informacji (czy to wizualnej, czy tez w logach) o tym, że wydarzyło się coś niepokojącego, program po prostu dalej działa. Klasyczny przykład, to ‘połykanie’ wyjątków, czyli konstrukcja typu: try {...KOD...} catch(Exception) { } czyli blok obsługi wyjątku jest puściutki :) My jednak wyczuwamy jakąś zmyłkę i chcemy dowiedzieć się, co też poszło nie tak. Systemowy mechanizm obsługi wyj...