Oryginalny post: Version 1 Sucks, But Ship It AnywayAutor: Jeff Atwood Jestem niezadowolony z każdego, najmniejszego kawałka kodu, jaki kiedykolwiek opublikowałem. Częściowo dlatego, że -- podobnie jak wielu programistów -- jestem perfekcjonistą. No i właśnie, nieuchronnie pojawiają się... problemy:Harmonogram był zbyt agresywny i krótki. Potrzebujemy więcej czasu!Napotkaliśmy niewidoczne wcześniej problemy techniczne i zmuszają nas one do zawierania niekomfortowych kompromisów.Mieliśmy zły projekt i trz...
Istnieje kilka powodów, dla których nie powinno się umieszczać aplikacji ASP.NET w środowisku produkcyjnym z ustawieniem
Synergy autor: margalski, 25 grudnia., 2009, napisany w: Internet, Programy Dzisiejszy ‘świąteczny’ wpis chciałbym poświęcić pewnej aplikacji o nazwie “Synergy”. Z angielskiego Synergy-Synergia oznacza wspólne działanie dające większe, lepsze efekty. Nazwa programu idealnie do niego pasuje. Ostatnio znalazłem się w sytuacji w której na moim biurku znalazły się dwa laptopy z dwoma rożnymi systemami(Vista i 7). Sterowanie było dosyć nieporęczne. I właśnie w takich przypadkach idealnym rozwiązaniem jest ...
W tym poście zamieszczona jest prezentacja i przykłady z sesji Usługi w świecie Microsoft WCF,REST, .NET Service Bus, Workflow Services. Celem sesji było przedstawienie subiektywnie wybranych elementów technologii WCF (i pokrewnych).
Programowanie rozproszone 4075 dni, 6 godzin, 27 minut temu 91 źrodło rozwiń
Powody do używania CAS Assembly Declarations Głównie z trzech powodów używamy CAS Assembly Declarations: 1. Aby zapewnić, że runtime nigdy nie uruchomi aplikacji bez uprawnień do pożądanych zasobów. 2. Do stworzenia tzw. “piaskownicy” dla naszej aplikacji po to, aby atakujący nie mógł nią manipulować 3. Aby zweryfikować, że aplikacja może być uruchomiona z ograniczeniami dostępu CASKlasy dla uprawnień CAS CAS może ograniczyć dostęp do różnego rodzaju zasobów: plików, folderów, drukarek, dostępu ...
CAS (Code access security) to system zabezpieczeń, który pozwala zarządzać dostępem programów do zasobów systemowych. Jest to system dający znacznie więcej możliwości konfiguracji, niż standardowe zarządzanie rolami (RBS, role-based security). Możemy np. określić, czy dana aplikacja może wysyłać zapytania do Internetu, czy otwierać pliki lokalne. Niestety mechanizm ograniczony jest do aplikacji zarządzanych (ang. managed) .NET Framework, pozostałe ograniczone są tylko przez uprawnienia systemu operacyjne...
Nasze aplikacje często potrzebują informacji na temat np. uruchomionych procesów lub ilość podłączonych urządzeń magazynujących itp. Ponad to często może okazać się przydatne zareagowanie na uruchomienie jakiegoś procesu. Do realizacji tego typu zadań możemy wykorzystać w .NET Framework klasy Process czy też Windows Management Instrumentation (WMI). Analiza procesów Do wyświetlenia wszystkich aktualnie uruchomionych procesów możemy użyć statycznej metody Process.GetProcesses. Poniższy kod przedstawia wyk...
Ayende pisze ostatnio na swoim blogu o przykładowej apllikacji w WPF używającej NHibernate o nazwie Effectus. Kod całej aplikacji można znaleźć na githubie. Moją uwagę zwrócił kod Bootstrappera, który zawiera ciekawy trick, a mianowicie serializowanie obiektu Configuration do pliku.
Bazy danych i XML 4080 dni, 15 godzin, 39 minut temu 108 źrodło rozwiń
Jedną z nowości w Windows 7 są tzw. Search Connectors – łączniki wyszukiwania. Pozwalają one przeszukiwać zasoby Internetu, dając nam przy tym wrażenie pracy z lokalnymi plikami. Postanowiłem zrobić taki Connector dla bloga grupy – Eastgroup.pl. Jako wynik moich prac powstały dwa Connectory, które stanowią różne podejścia do przeszukiwania witryny.Mechanizm wbudowany Pierwsze rozwiązanie problemu bazuje na wbudowanych mechanizmach systemu BlogEngine .NET.Pobieramy plik http://eastgroup.pl/opensearch.axd ...
Mam nadzieję, że poprzednim odcinku udało mi się przekonać Was do zainteresowania behawiorami od strony czysto konsumenckiej. Jak już wspominałem spora część użytkowników Expression Blend korzysta na co dzień z tej technologii nie mając o tym zielonego pojęcia – i bardzo dobrze! Tym razem razem postaram się pokazać, że wbrew pozorom tworzenie własnych behawiorów nie jest czynnością skomplikowaną, a potrafi skutecznie podnieść komfort naszej pracy. W opisywanym poniżej, zupełnie podstawowym przykładzie sk...
Silverlight 4080 dni, 15 godzin, 39 minut temu 78 źrodło rozwiń
Seria postów poświęconych dostępowi do danych w OPC przy pomocy kodu w C# na platformie .NET. Przedstawione przykłady zawierają gotowe do wykorzystania aplikacje i kod źródłowy. Artykuł został podzielony na części.
Programowanie rozproszone 4081 dni, 19 godzin, 5 minut temu 190 źrodło rozwiń
Okazjonalnie zachodzi potrzeba, aby do jakiegoś celu wygenerować niepowtarzalny ciąg znaków. Jednym z zastosowań może być tutaj nadanie plikowi nazwy gwarantującej brak kolizji z jakąkolwiek inną nazwą pliku w systemie albo chociaż w aktualnym katalogu. W przypadku gdy ów plik ma istnieć tylko przez chwilę - a więc być plikiem tymczasowym (tempfile), sprawa jest prosta i sprowadza się do wywołani...
Powtarzanie kodu w kilku miejscach zwykle jest sygnałem zaniedbania i nie powinno mieć miejsca. Nawet (a może: w szczególności!) gdy kod ten jest prosty, głupi, niewymagający myślenia i będący efektem tzw. clipboard inheritance (ctrl+c, ctrl+v). Tyczy się to również konstruktorów klas. Tą część kodu łatwo jest przegapić, bo wszelakie ułatwiacze umożliwiają automatyczne ich wygenerowanie. A co jeśli mamy ich kilka? Poniższy przykład obrazuje stan, do którego NIE CHCEMY doprowadzić...
Architektura 4081 dni, 19 godzin, 5 minut temu 88 źrodło rozwiń
Kilkukrotnie już zdarzyło się, iż potrzebowałem klasy, która umożliwiłaby zapamiętanie typowanych (typed, generic) struktur hierarchicznych (hierarchical collection) czyli dowolnego obiektu wraz z jego elementami potomnymi. W ramach platformy .NET istnieją już klasy implementujące podobną funkcjonalność. Mowa tu oczywiście o TreeNode z TreeNodeCollection oraz o, bardziej hermetycznym, MenuItem wraz z wewnętrznym MenuItemCollection. Klasy przeznaczone do obsługi menu trudno byłoby użyć do własnych rozwiąz...
W tej lekcji zostanie opisane używanie standardowych oraz własnych liczników wydajności (performance counters).Monitorowanie liczników Windows zawiera bardzo dużo performance counterów, które umożliwiają monitorowanie systemu operacyjnego w czasie rzeczywistym. Możemy obejrzeć countery za pomocą wbudowanych mechanizmów Windowsa. W tym celu należy: 1. Klikamy start->Prawym przyciskiem myszy na Komputer-> Zarządzaj 2. W narzędziach systemowych rozwijamy zakładkę wydajność 3. Rozwijamy narzędzia m...
Jeśli używacie kontrolki WebBrowser z Compact Frameworka 2.0 zapewne spotkaliście się z ContextMenu pojawiającym sie za każdym razem gdy przytrzymacie zbyt długo rysik (zdarzenie Tap&Hold). Moim zdaniem jest to dość uciążliwe, w pewnych przypadkach pojawiające się ContextMenu jest wysoce niepożądane. Jako że potrzeba matką wynalazków postanowiłem sam zmierzyć sie z tematem i...
Mobile development 4082 dni, 5 godzin, 24 minuty temu 43 źrodło rozwiń
“Bo kultura tu naprawdę jest, świadczy o tym nasz wspaniały Dom Kultury” śpiewał w 1988 roku w Jarocinie zespół “Zielone Żabki”. Ktoś pamięta? Dziś też będzie o kulturze, ale przez literę c czyli o Culture. Tekst zaś dotyczył będzie tak prozaicznej kwestii jak polskie znaki narodowe. Zacznijmy od początku. Utwórzmy, np. w Notatniku, plik w formacie CSV zawierający nazwy ptaków z polskimi znakami narodowymi: id,nazwa 1,Gżegżółka 2,Żuraw 3,Łabędź I spróbujmy go wczytać korzystając ze standar...
"Podczas mojej nieobecności, team ASP.NET MVC kontynuował ciężką robotę i jest już gotów, aby ogłosić wersję RC dla ASP.NET MVC 2. Wypróbuj ją!"
Ogólnie o 70-562 Celem egzaminu numer 70-562 jest potwierdzenie kompetencji w zakresie programowania aplikacji internetowych za pomocą ASP.NET na platformie .NET 3.5. Jak czytamy na stronie poświęconej egzaminowi profil idealnego kandydata do zdania tego egzaminu to osoba pracująca w średnich-dużych zespołach z dwu-, trzyletnim doświadczeniem w dziedzinie tworzenia aplikacji webowych. Prócz tego egzamin obejmuje wszystkie zagadnienia dotykające tematyki webaplikacji, między innymi:Dostęp do danych za pom...
Większość programistów po zdobyciu pewnego doświadczenia odczuwa potrzebę oficjalnego poświadczenia swoich umiejętności. Taką możliwość dają certyfikaty – są honorowane na całym świecie i obiektywnie potwierdzają zdobytą wiedzę i praktyczne umiejętności. Ponieważ na co dzień zajmuję się technologiami „okołodotnetowymi” – głównie pisaniem aplikacji webowych przy użyciu frameworka 2.0, postanowiłem podejść do egzaminu Microsoftu o łatwo zapamiętywalnym tytule 70-536 – TS: Microsoft .NET Framework – Applica...