Każda bardziej skomplikowana (niż „hello word”) aplikacja posiada jakąś architekturę. Chyba najbardziej popularna wśród początkujących to spaghetti. Architektura spaghetti charakteryzuje się tym, że różne kawałki kodu są po prostu przemieszane ze sobą. Czasem tak dobrze, że w jednej procedurze i/lub funkcji znajdziemy wszystkie składniki. Na szczęście kilka programów później, prawie każdy zaczyna coraz bardziej myśleć o architekturze. O tym, jak poszczególne elementy aplikacji będą poskładane i jak będą ...
Strona głównaUżytkownik
paduda | użytkownik
Architektura 5172 dni, 19 godzin, 53 minuty temu 182 źrodło rozwiń
MCSE, MCP, CCNA i tym podobne trzy- i czteroliterowe skróty istnieją od dawna. Początkowo nie zaistniały w świadomości ludzi z branży IT, ale dzisiaj stały się nieodłącznym elementem naszego życia. Certyfikaty w IT zdobywamy na ogół po zdaniu jednego lub więcej egzaminów przy komputerze. Na ogół egzaminy te mają formę testu z ograniczoną liczbą gotowych odpowiedzi, a zadaniem zdającego jest wskazanie odpowiedzi poprawnych. Brzmi banalnie i czasem jest dość łatwo taki egzamin zdać. Z tego powodu i kilku j...
W jednym projekcie, w którym operujemy na mapie zaszła potrzeba efektywnego zarządzania warstwami, które są wyświetlane na mapie. Pod słowem efektywne rozumieliśmy sposób pobrania informacji o warstwach taki by: Nie pobierał 1MB danych na starcie – taki rozmiar ma wynik zapytania REST dot. wszystkich warstw i ich wartości; Nie odpytywał N razy serwera o dane – normalnie zabawa z 3 warstwami danych mogła w ciągu 5 min generować 20-30 requestów; Umożliwił dalszą zabawę warstwami w aplikacji w tym wyświet...
Autor: W ramach tego postu chciałbym się podzielić różnymi ciekawostkami i spostrzeżeniami. Z jednej strony w większości przypadków dotyczą one funkcjonalności dłużej znanych, ale spojrzymy tu czasem na nie od bardziej wysublimowanej strony. Znajdzie się też kilka całkowicie nowych wstawek z RTM. Poniżej udostępniam moje wcześniejsze materiały z Windows Phone 7 dotyczące funkcjonalności sprzed bety, zaktualizowane, by działały poprawnie w wersji finalnej. Po drodze zaktualizowałem je do bety, ale nie zd...
JSON jest lekkim i uniwersalnym format przesyłania danych. Pozwala on przekazywać informacje w szybki i sprawny sposób np. pomiędzy elementami strony WWW. Na tym blogu, pisałem już o nim wielokrotnie. Ostatnio np. we wpisach: Ajax, XML i JSON w jQuery i Widget Twitter w PHP i jQuery na stronie. W tych właśnie wpisach, ukazałem JSONa głównie pod kątem użycia w JavaScripcie. Dziś, mam zamiar pokazać jego użycie w środowisku .NET wykorzystując do tego język C#.
Architektura 5176 dni, 8 godzin, 29 minut temu 169 źrodło rozwiń
Jeżeli w Silverlight chcemy posortować sobie ListBox za pomocą przeciągania elementów – dosłownie mówiąc na liście mamy 10 elementów i chcemy zamienić element 1 z 6 – możemy to zrobić w bardzo prosty sposób z wykorzystaniem kontrolki ListBoxDragDropTarget dostępnej w Silverlight Toolkit. By to osiągnąć należy naszą kontrolkę ListBox opakować w ListBoxDragDropTarget, następnie ustawić ItemsPanelTemplate dla ListBox na StackPanel – jest to spowodowane tym, że ListBox używa VirtualizedStackPanel, przez co n...
Silverlight 5176 dni, 2 godziny, 49 minut temu 68 źrodło rozwiń
autor: Ostatnia odsłona konferencji Microsoft Technology Summit miała w moim kalendarzu znaczenie szczególne. W tym roku aktywniej byłem zaangażowany w organizację. W praktyce oznaczało to opiekę merytoryczną nad częścią deweloperską prezentacji.
Czasem zachodzi potrzeba, by element sceny 3D wiedział o swojej obecności w scenie, np. w celu odpowiedniego obrócenia się, by być przodem do kamery. Oczywiście przy jego dodawaniu do sceny można by było przekazać do niego odpowiednie informacje o scenie, ale okazuje się, że każdy element sceny może sam uzyskać odpowiednie informacje, gdyż wszystkie elementy sceny 3D w WPF (i nie tylko sceny 3D) tworzą drzewo wizualne (visual tree). Niniejszy wpis poza prezentacją różnych i niezależnych od konkretnego wy...
Autor: Ostatnimi dniami(ściślej: dniem ) pisałem serializacje/deserializację danych, do których ma dostęp użytkownik. Już od dłuższego czasu myślałem jak to zrobić, by było dobrze. Było to jednym z głównych czynników zaprojektowania gry tak, a nie inaczej. Na „pierwszy raz” postanowiłem napisać ładow...
Bazy danych i XML 5179 dni, 15 godzin temu 30 źrodło rozwiń
Po odpowiednim rozmieszczeniu elementów tworzących layout strony czas na właściwą część, czyli utworzenie menu z kategoriami produktów. Najpierw jednak trochę o samym zagadnieniu tworzenia menu. W toolboxie Visual Studio, w części Navigation, można odnaleźć gotową kontrolkę Menu. Kontrolka ta umożliwia utworzenie menu w oparciu o powiązane dane zawarte w pliku XML – Web.sitemap. Dzi...
Autor: W dzień premiery systemu WP7 … nadrabiam zaległości w pisaniu postów o platformie i narzędziach. W przeddzień MTS zapowiedziałem, że napiszę dokładniej o wybranych tematach dotyczących wersji finalnej. Miałem tu na myśli zmiany w API oraz nowe informacje w oficjalnej dokumentacji, które zwróciły moją uwagę. Sprawdziłem niemal wszystko, co zaowocowało umieszczeniem 2 plików zip. Teraz… opiszę ich zawartość, omawiając przy okazji różne zagadnienia. Może to stanowić też pewne uzupełnienie do moich wy...
No właśnie, Microsoft Technology Summit 2010 przeszedł już do historii, ale tym razem był to dla mnie zupełnie inny MTS niż poprzednie. Dlaczego? Podobnie jak Mariusz brałem w nim udział z zupełnie innej strony niż do tej pory. W poprzednich latach (2009, 2008) byłem sobie uczestnikiem konferencji, który chodził sobie i grzecznie słuchał sesji. Tym razem pełniłem dwie role: eksperta w strefie Ask The Expert (sekcja: Programowani...
Praca z danymi może kojarzyć się z wykonywaniem operacji na danych, lecz nie tylko. Ważnym elementem jest prezentacja, w której wykonaniu pomocnymi mechanizmami są wiązanie,walidacja i konwersja danych. Z tego artykułu nauczysz się, jak wykorzystywać Data Binding w swoich projektach.Data BindingCzym jest Data Binding? Binding umożliwia zarówno połączenie elementów interfejsu użytkownika z dużymi i często używanymi obiektami biznesowymi, jak i powiązani...
W świecie informatyki, zaprogramować można wszystko. Ponadto, każdy problem, czy zagadnienie ma tysiące rozwiązań (a może nawet tyle co programistów na świecie:)). Niektóre problemy - zagadnienia, powtarzają się na tyle często, że pewne mądre głowy opracowały gotowe sposoby, wzorce rozwiązań takich problemów. Kiedyś opisywałem już wzorzec projektowy Model View Controller. Dziś, chciałbym zaprezentować wzorzec projektowy Factory (z ang. fabryki), ułatwiający tworzenie nowych obiektów. Przykłady zaprezent...
Architektura 5179 dni, 3 godziny, 59 minut temu 297 źrodło rozwiń
W dobie postępującej globalizacji oraz otwarcia Polski na świat, warto rozpatrzyć możliwość tworzenia aplikacji w wielu wersjach językowych. Pozwoli to z pewnością na zwiększenie potencjalnego grona odbiorców. Kiedy mamy już takie ambitne plany, pozostaje jednak kwestia doboru języka/technologii, która to zadanie zrealizuje. Ja wybrałem do tego celu C# z frameworku .NET, który w banalny sposób umożliwia tworzenie zlokalizowanych aplikacji. Jeśli nie jesteście jednak koderami tworzącymi aplikacje okienko...
Architektura 5183 dni, 4 godziny, 16 minut temu 93 źrodło rozwiń
MTS 2010. I po MTS’ie. Pytania i odpowiedzi ze strefy ekspertów Październik 8, 2010- autor: Kuba SkałbaniaDodaj komentarz MTS 2010 minął. Jak wiecie, miałem przyjemność znów pełnić rolę eksperta w strefie Ask-the-Expert (razem z 3-ma kolegami z firmy). MTS 2010 był wyjątkowy, bo… mieliśmy okazję uczestniczyć w 3 sesjach pioświęconych Dynamics CRM. Wszystkie dotyczyły CRM 2011 i wypadły naprawdę fajnie (Sanjay, Piotrek – dobra robota / great job!). W strefie ekspertów większość pytań również dotyczyła CR...
„Object reference not set to an instance of an object„, czyli chyba najpopularniejszy z błędów w kodzie spotkał mnie tym razem w nowej i czystej instancji SharePoint podczas ewidencjonowania pliku w bibliotece dokumentów. Okazuje się po raz kolejny, że jeszcze nie jeden bug w SharePoincie mnie zaskoczy. Tym razem jednak szybo udało mi się rozwiązać problem, gdyż przy okazji tego jakże ładnego komunikatu w logach można było natrafić na następujący błąd w EventLogu: Event Type: Error Event Source: ...
Tegoroczna edycja konferencji Microsoft Technology Summit odbyła się 5 i 6 października 2010. Po sieci krąży już sporo wrażeń uczestników, więc i ja, jakom uczynił w roku ubiegłym i przedubiegłym, dorzucę swoje 12 groszy.
Od początku pracy nad DesktopInfo wiadome było, że będzie potrzebny mechanizm do ładowania pluginów, dodatkowych modułów, które rozszerzą możliwości aplikacji bez potrzeby jej rekompilacji. Pierwszy pomysł jaki przechodzi do głowy to refleksja. Jednak jakiś czas temu postała biblioteka MEF, która została włączona do .NET Framework 4.0 Ponieważ aplikacja DesktopInfo wykorzystuje właśnie tą wersję .NET, to dlaczego nie wykorzystać nowej funkcjonalności. Zatem zobaczmy krok po kroku co jest potrzebne aby ...
Architektura 5177 dni, 8 godzin, 12 minut temu 160 źrodło rozwiń
Wchodząc na stronę http://desktopinfo.codeplex.com/WorkItem/AdvancedList.aspx znajdziesz listę rzeczy i/lub błędów które zostały zapisane w ramach pracy nad projektem DesktopInfo. Pozwala to na wygodne administrowanie projektem. Możemy robić listę błędów oraz nowej funkcjonalności. Lista ta dostępna jest także w Visual Studio Wszystko to dzięki Team Explore-owi oraz TFS-owi. Mamy funkcjonalność, która pozwoli nam łatwiej zarządzać projektem w przypadku pracy wieloosobowej. Prawdziwa magia zaczyna ...