Projektujesz urządzenia elektroniczne? Piszesz aplikacje komunikujące się z zaprojektowanym urządzeniem z komputera? Jeśli tak, to wiesz, że dedykowana aplikacja daje najwięcej możliwości, a jej potencjał zależy tylko od Twojej pomysłowości...
W poprzednim artykule z serii opsiującej sposób instalacji i przygotowania środowiska do pracy z .NET Micro Framework opisany został proces instalacji Visual C# 2008 Express Edition. Jest to punkt wyjścia do kolejnego etapu, opisującego intsalację .NET Micro Framework SDK 3.0, które jest niezbędne do pracy z .NET MF...
Na oficjalnym blogu zespołu pracującego nad .NET Micro Framework znalazła się wzmianka na temat .NET MF w wersji 4.0. W chwili obecnej wersja beta została udostępniona dostawcom sprzętu pracującego pod kontrolą MF (między innymi GHI Electronics). Upublicznienie wersji beta ma nastąpić w sierpniu, natomiast wersja finalna ma być gotowa jesienią bierzącego roku....
Metody rozszerzające ("extension methods") pozwalają na dodanie metod do istniejących typów bez korzystania z dziedziczenia lub uciekania się modyfikacji definicji orginalnego typu. Metody te są zawsze statyczne, ale..
W miarę jak staję się starszy i mądrzejszy jeszcze starszy jako programista, zauważyłem, że mój osobisty styl pisania kodu podąża mocno w stronę minimalizmu. Byłem zadowolony, dowiedziawszy się, iż wiele z konwencji kodowania, na które się zdecydowałem w ciągu ostatnich 20 lat zostało usystematyzowanych w Spartańskim programowaniu. Nie, nie w tym sensie spartańskie, aczkolwiek istnieje historyczne powiązanie. Konkretne znaczenie słow...
Podczas tworzenia oprogramowania jedną z częściej wykonywanych operacji jest sprawdzanie, czy dany obiekt nie jest nullem. Często wygląda to tak:..
Od paru lat MS przygotowuje nową wersję języka C#. Ostatnio miały miejsce dwa związane z nią event'y: udostępnienie zbiorczej dokumentacji do języka C# uwzględniającej wersję 3.0 oraz udostępnienie beta wersji Visual Studio 2008 „Orcas”, która ma wbudowaną obsługę C# 3.0. Jako, że ciekawość pierwszym krokiem do... poznania, postanowiłem bliżej się przyjrzeć tej „technologii jutra"...
Korzystając z WinForms wcześniej czy później możemy mieć problem z odwołaniem się do kontrolek z innego wątku - stworzonego np w celu zabezpieczenia GUI przed zawieszeniem podczas wywołania metod, które długo działają. Bezpośrednie wywołanie metod kontrolki z innego wątku spowoduje wystąpienie wyjątku InvalidOperationException z komunikatem "Cross-thread operation not valid: Control 'xyz' accessed from a thread other than the thread it was created on."...
W języku C# istnieje co najmniej pięć sposobów implementacji tego wzorca. Różnią się prostotą implementacji oraz obsługą wielowątkowości. Wszystkie [pięć] opisane są na stronie http://www.yoda.arachsys.com/csharp/singleton.html..
Oto pewne rozwiązanie, które nazwałem Manager, oparte o wzorzec projektowy Singleton, które może być przydatne w aplikacji, w której elementy "aktywne" nie są powiązane ze sobą referencjami, a jednocześnie wymagane jest przesyłanie danych lub zdarzeń między nimi. Ma to miejsce na przykład w aplikacji MDI lub w aplikacji opartej o DockPanel Suite. IMHO coś co występuje często, nie koniecznie w postawi obiektów wizualnych...
Ha nigdy nie mogę tego słówka zapamiętać jak w nim 'oa' i inne samogłoski idą. Może to odgrzewane kotlety ale dziś przy okazji okazji znalazłam opis takiego operatora - oczywiście na blogu Scotta Gu..
Dzisiejszy post dotyczy dość specyficznego zagadnienia, mianowicie konkatenacji wartości w wierszach, będących wynikiem zapytania. Takie „coś” jest raczej rzadko przydatne, jeżeli z bazą współpracuje aplikacja, ponieważ ta może sobie sama przetworzyć otrzymane dane, ale jeżeli wynik zapytania jest podstawa do tworzenia raportu to problem konkatenacji wierszy może wystąpić...
W tym poście opiszę trzy rzeczy: - wyłączenie/włączenie więzów integralności na tabeli w bazie SQL Server 2005 Express; - generowanie GUIDów w bazie Firebird 2.0; - transport danych z tabeli z PK typu Integer do tabeli z PK typu GUID..
Często pracuję ze skryptami sql zawierającymi nowe wersje tabel czy procedur. Każda tabela i procedura posiada swój własny plik ze skryptem. Trochę to utrudnia pracę ponieważ każdy plik trzeba uruchomić i odpalić...
Korzystając z różnych portali w sieci staramy się być jednoznacznie identyfikowani – stosując ten sam nick, czy dodając awatara. Jednak posiadanie kont na wielu portalach znacznie utrudnia zarządzanie nimi (np. gdy postanowimy nasze zdjęcie uaktualnić lub usunąć)...
Każda strona posiadająca formularze powinna być walidowana. I każdy (mam nadzieję :)) to robi – choćby poprzez stosowanie kontrolki RequiredFieldValidator...
Parę dni temu Microsoft uruchomił usługę Microsoft Ajax CDN umożliwiającą pobieranie bibliotek javascript (związanych z Microsoft AJAX) z serwerów Microsoftu. Wykorzystanie Microsoft Ajax CDN pozwala zwiększyć “szybkość” działania aplikacji – używane biblioteki są cachowane i szybciej wysyłane do klienta...
Od jakiegoś czasu przestałem ustawiać ID kontrolek, do których nie odwołuję się z kodu. Sytuacja taka zdarza mi się szczególnie przy kontrolkach, które mają “tylko” wysłać postbacka. W niczym mi to nie przeszkadza więc postanowiłem tak sobie ułatwić życie...
Prawdziwa siła szablonów ujawnia się wtedy, gdy dokument XML ma niespójną strukturę. Oto przykład fragmentu takiego dokumentu XML..