Regiony w Visual Studio to byt bardzo przydatny. Biorąc je za pewnik – bardzo łatwo lekceważyć ich wkład w organizację i przejrzystość kodu. Szczególnie mocno docenia się je, gdy przyjdzie korzystać z IDE które ich nie oferuje. Kilka lat temu musiałem napisać projekt w Javie i, nie interesując się zbytnio milionem dodatków do Eclipse, po prostu odpaliłem środowisko i zacząłem pisać. Staram się nie nadużywać regionów, bo często są one oznaką złego designu aplikacji, ale...
Daniel o tym jak sprawnie możemy mock'ować nasz kod opatrzony widocznością internal bez zbędnego jego upubliczniania.
Architektura 5699 dni, 21 godzin, 13 minut temu 61 źrodło rozwiń
“Reference in the manifest does not match the identity of the downloaded assembly MójProgram.exe.” no i klops. Zaczynając jednak od początku, projekt nad którym pracuję obecnie to solution z blisko 30-toma projektami, część w C# a część w VB.NET. Po podniesieniu VS2005 do VS2008 okazało się, że nie można opublikować nowej wersji za pomocą ClickOnce (używając programu MageUI). Jedyna rzecz, która się zmieniła to struktura plików sln i proj ponieważ Framework został bez zmiany (2.0) zatem gdzie leży proble...
Kiedy piszemy aplikację będącą już w na tyle zaawansowanym stadium, że nie objawia ona błędów przy pierwszym lepszym uruchomieniu, to zdarza się, iż uruchamiamy ją bez wsparcia debugera (co można zrobić standardowym skrótem klawiszowym Ctrl+F5 w Visual Studio). Mimo tego zawsze może się jednak zdarzyć jakiś nieprzewidziany wyjątek, błąd czy inna nieprawidłowość. Ba, może się tak zdarzyć w programie, który już dawno uznaliśmy za skończony...
Nie wiem jak Wy, ale ja podczas tworzenia aplikacji ASP.NET przeważnie korzystam z jednej przeglądarki (Firefox v. 3.0). Ponieważ w projekcie w którym obecnie pracuje zbliżamy się do testów CAT postanowiłem przeklikać aplikację na kilku innych przeglądarkach. W pierwszej kolejności było IE 7. Wszystko fajnie śmiga, część layoutu musiałem poprawić ale to normalka. Potem było IE 8. I tutaj zaczęły się problemy z częścią walidatorów, które znajdowały się na stronie.
Treść tego wpisu mógłbym zawrzeć w jednej sentencji: “nie używaj DrawString” i zasadniczo mógłbym zakończyć, ale postaram się udowodnić dlaczego...
Mobile development 5702 dni, 9 godzin, 41 minut temu 80 źrodło rozwiń
Dziś zajmę się dość powszechnym wydaje się problemem, a mianowicie tworzeniem dokumentacji dla oprogramowania. Zwykle owa dokumentacja powstaje dopiero pod koniec tworzenia oprogramowania, nie ma na nią za wiele czasu i oczywiście "chcemy to zrobić tak, by się nie narobić" :). W takim momencie chyba każdemu przychodzi na myśl wykorzystanie jakiegoś edytora (np. Microsoft Word lub OpenOffice Writer). Dlaczego? Bo łatwo i wiele osób wie jak Word'a obsługiwać, jak sformatować tekst, je...
W zasadzie konkurs "Na najlepszy .... projekt", na portalu SourceForge.net trwa już od jakiegoś czasu, ale dzisiaj kolejna wersja Żółwika :) (TortoiseSVN) przypomniała mi o nim. Chyba wielu z nas korzysta z repozytoium Subversion (SVN) i klienta na platformę Windows: TortoiseSVN.Chyba warto docenić wysiłek autorów TortoiseSVN i zagłosować na to narzędzie w kategoriach "Najlepszy projekt" i "Najlepsze narzędzie dla programistów". Głosujmy więc!!
Jak w większości systemów budowanych w oparciu o DDD, tak i w naszym natrafiliśmy w końcu na problem poprawności obiektów modelu domeny. Na samym początku ograniczyłem się do przekazania programistom informacji, że dobry obiekt modelu powinien być zawsze poprawny. Pomyślałem, że jest to dobre pierwsze przybliżenie. Szczegółami zajmiemy się później. Szczegóły te miały, według moich przewidywań, dotyczyć walidacji zależnej od kontekstu, która sprawia, że Jeffrey Palermo nie wierzy w zasadę "always valid"....
Architektura 5705 dni, 3 godziny, 13 minut temu 63 źrodło rozwiń
Dziś o animacjach. Chyba jednej z ciekawszych i rozbudowanej nowości, która pojawiła się w WPF'ie. Dzięki animacjom, nawet zieloni w tym temacie developerzy mogą stworzyć poruszające się interface'y. Animacje tworzy się w dosyć intuicyjny sposób, ale po kolei.
Artykuł opisuje zagadnienia związane z równoczesnym dostępem do wspólnych elementów przez wiele wątków oraz możliwe konflikty - w języku C#. Nie znajdziecie tu natomiast podstaw wielowątkowości w C#, zakładam iż te są już znane. Przykłady napisane jako proste aplikacje konsolowe – krótkie i zwięzłe bez nadmiaru niepotrzebnych informacji (jednak na tyle samodzielne, że można je bez problemu odpalić przez zwykłe skopiowanie).
Programowanie rozproszone 5706 dni, 2 godziny, 29 minut temu 150 źrodło rozwiń
Chciałbym przybliżyć Wam dwa interfejsy związane z AJAX-em i ASP.NET a mianowicie IPostBackEventHandler oraz ICallbackEventHandler. W skrócie opiszę do czego możemy je wykorzystać i w jaki sposób.
Bartłomiej Szafko: O tym, że można wykryć czy .NET albo dowolny inny pakiet jest zainstalowany pisałem w jednym z poprzednich wpisów. Pisałem również, że z poziomu MSI nie można odpalać instalacji innych pakietów. Dzisiaj pokaże jak szybko stworzyć bootstrappera do plików MSI. W tym celu będę używał bootstrappera znanego z ClickOnce. Pierwszym krokiem jest wyedytowanie pliku .wixproj i ...
Na wstępie chciałbym zaznaczyć, że w żadnym razie nie jestem ekspertem od DDD. Ja się wciąż i dopiero uczę i moje posty z serii "Mentoring DDD" są wyrazami tegoż procesu (samo)kształcenia. Dlaczego więc "mentoring"? Ano dlatego, że wspieram Domain Driven Design w mojej firmie poprzez konsultacje, pomoc duchową i cielesną. Staram się przewidywać problemyi zdobywać wiedzę na temat sposobów ich rozwiązania zanim się pojawią. Nie posiadam jednak (jeszcze) tej wiedzy w postaci przetworzonej w trwałe połączeni...
Architektura 5707 dni, 13 godzin, 43 minuty temu 80 źrodło rozwiń
Wzorzec memento pozwala na przechwycenie stanu obiektu i zachowanie go gdzieś na zewnątrz tego obiektu, dzięki czemu może być on później odtworzony....
Architektura 5708 dni, 12 godzin, 57 minut temu 220 źrodło rozwiń
Na stronie Visual Studio 2010 and .NET Framework 4 Training Kit - May Preview znajduje się bardzo ciekawy zestaw treningowy do Visual Studio 2010 Beta 1...
Jak możecie dokładniej przeczytać na blogu teamu ADO.Net szykuje się istotna zmiana w tym komponencie od wersji .NET Framework 4.0. W skrócie w ADO.Net 4.0 OracleClient zostanie zaznaczony jako deprecated...
Bazy danych i XML 5708 dni, 12 godzin, 57 minut temu 61 źrodło rozwiń
Stawiając pierwsze kroki w programowaniu w C#/.NET, można odkryć kilka ciekawych właściwości, które nie zawsze występują w innych językach. Jednym z nich jest całkiem dobre rozwiązanie odwiecznego problemu w kodowaniu, czyli zamiany między różnymi typami danych: zwłaszcza do i z łańcucha znaków. Przykładem jest chociażby metoda ToString, która zrobi nam napis z dowolnego obiektu. Są też metody w stylu int.Parse, które potrafią odczytać liczbę zapisaną jako tekst i w zgrabny sposób rozwiązują jeden z na...
IProgrammableKawalerowicz Consulting NewsBlogKawalerowicz ConsultingKsiążka o Continuous IntegrationMay 3, 2009 on 9:53 pm | In MSBuild, Continuous Integration, Books, DotNet | Jednym z moich głównych zainteresowań zawodowych są procesy Continuous Integration. Jestem bardzo dumny z pełnego systemu ciągłej integracji, jaki uruchomiłem u mojego pracodawcy kilka lat temu. Od tego czasu regularnie w nim majstruję ulepszając to i owo. Niedawno pomyślałem, że lata mojej praktyki i doświadczeń z CI mogą prz...