Wraz z pojawianiem się kolejnych wersji .NET do świata programistów wchodziło coraz większe zamieszanie. Co oznacza każdy następny numerek, jakie zmiany wnosi, jak się owe zmiany mają do poprzedników? Przykładowy fakt, że piszemy program używając Visual Studio 2008 w języku C# 3.0 i korzystając jednoczeście z bibliotek w wersjach 2.0, 3.0 i 3.5, a o jego poprawne działanie dba CLR w wersji 2.0.50727 może nieźle namieszać. Szczególnie u początkujących developerów.
Na temat Beginner's All Purpose Symbolic Instruction Code Edsger Dijkstra miał to do powiedzenia: Nauczenie studentów dobrego stylu programowania jest praktycznie niemożliwe, jeśli byli oni wcześniej wystawieni na szkodliwe działanie BASICa; jako potencjalni programiści są umysłowo okaleczeni bez nadziei na regenerację. Jestem pewien, że wyolbrzymiał dla efektu; o ile podziwiam jego refera...
Czy zastanawialiście się kiedyś jak działa słowo kluczowe yield? Jeśli ktoś nie kojarzy tej konstrukcji to w telegraficznym skrócie pozwala ona (między innymi) w bardzo łatwy sposób zaimplementować interfejs IEnumerable. Interfejs ten wymagana dostarczenia tylko jednej metody, która powinna zwrócić instancję klasy implementującej IEnumerator. Zaimplementowanie tego interfejsu nie powinno przysporzyć znacznych trudności ale wymaga już trochę większego nakładu pracy. Przykładowe, uproszczone użycie yield ...
Ostatnio pomogłem rozwiązać dwa problemy z "nie działającymi" zdarzeniami. Jak to najczęściej bywa, znając rozwiązanie, problem wydaje się banalnie prosty. Ponieważ jednak dojście do rozwiązania nie zawsze jest już tak proste postanowiłem napisać ten post. Ogólnie problem został mi przedstawiony mniej więcej w taki sposób (luźny cytat): Podczepiłem się pod zdarzenia kilku kontrolek ale po wykonaniu post back'a do strony, metody obsługi zdarzeń nie są wołane. W obu wspomnianych sytuacjach obserwowany e...
Ostatnio zainteresowałem się modelowanie procesów biznesowych. Spodziewałem się istnienie kilku standardów ale rzeczywistość naprawdę nie zaskoczyła. Świat BPM okazał się naprawdę bogaty. Sądzę, że porównanie do dżungli będzie nawet bardziej odpowiednie. Mamy więc: BPDM, BPEL4WS, BPML, BPMN, UML Activity Diagram, WSFL, XLANG, XDPL i sporo więcej. W poście tym chciałbym troszeczkę usystematyzować ten bałagan i wyjaśnić jak jak to rozumiem. Wstęp Zacznijmy od tego, że w procesie BPM należy wyróżnić dwa ...
Po trzech artykułach nt. MVP czas przyszedł na cześć ostatnią. Gdyby ktoś nie pamiętał zacząłem od omawiania podstaw, potem przeszedłem do usprawnienia widoków a następnie do zdarzeń i walidacji...
Jakiś czas temu napisałem o konkursie na crackme dla .net zorganizowanym przez Krakowska Grupa Developerów .NET, dzisiaj z ciekawości tam zajrzałem i zobaczyłem, że jest tylko 1 rozwiązanie, więc postanowiłem zadziałać...
O tym jak bardzo należy uważać i dlaczego przed ostatecznym wypuszczeniem produktu do klienta trzeba wszystko sprawdzić 10 razy, przekonał się niecały miesiąc temu brytyjski oddział Microsoft...
Ostatnio zacząłem eksperymentować z szyfrowaniem na platformie .NET. Pierwszym celem jaki sobie postawiłem było przekształcenie tekstu do postaci zaszyfrowanej...
Podczas pisania komponentu w C# napotkałem na niewielki problem. Otóż chciałem wyświetlać stronę html, której źródło znajdowało się w pliku .html . Niestety same z tym problemy...
Jeżeli w codebehind zmienimy właściwość 'Enabled' kontrolki CheckBox na false to w clientcode zmiana właściwości 'disabled' tej kontrolki na true nie działa, dotyczy tyko IE i kontrolki CheckBox (inne kontrolki np. TextBox działają prawidłowo, w FireFox wszystko działa ok)...
Przestrzenie nazw (ang. namespace) służą do organizacji typów (klas, wyliczeń, struktur) w logiczne całości...
Język C# daje nam możliwość zamiany zmiennej typu prostego na obiekt i vice versa. Obie konwersje są realizowane za pomocą opakowywania (ang. boxing) i odpakowywania (ang. unboxing)...
Jakiś czas temu ukazała się wersja 2.0 projektu Phalanger – kompilatora PHP dla platformy .NET. Wprawdzie już o niej pisałem, ale tylko jako wzmiankę o nowej wersji. Teraz przyrzyjmy się co możemy zrobić ciekawego w obecnej wersji...
Zgodnie z wcześniejszymi zapowiedziami nadal kontynuowane są prace nad upublicznieniem kodu źródłowego .NET Micro Framework na zasadach standardowej licencji open source. Po tej zmianie każdy będzie mógł bezpłatnie pobrać kod .NET ...
Czasami przychodzi moment kiedy chcielibyśmy kompilować nasz projekt poza środowiskiem graficznym VS. Powodów wyklarowania się takiej potrzeby może być sporo...
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..