autor: Jak można było ostatnio zauważyć na blogu - próbuję swoich sił w GTD. Dzisiaj opiszę swoje pierwsze kroki jakie podjąłem przed i po przeczytaniu książki... i co mi to dało. Step by step Tak jak pisałem, wszystko zaczęło się od ok 3-godzinnego szkolenia z zarządzania czasem. Z dużym optymizmem rzuciłem się do wdrażania tego w życie. Pobawiłem się genialną stroną RememberTheMilk (dalej: RTM), postanowiłem: "to jest to!" i zacząłem wrzucać tam wszystko, co miałem w głowie. Po kilku dniach takiej zab...
Podczas buidowania projektu może mojawić się komunikat : " Unable to find manifest signing certificate in the certificate store. "
Test Driven Development Autor: Arkadiusz Benedykt Opublikowano: 2011-07-08 Szybki rozwój technologiczny oraz dynamicznie zmieniające się wymagania rynku powodują, że dzisiejszy programista powinien być Agile – zwinny, giętki ogólnie elastyczny. Na tej fali powstało wiele metodologii, które mają na celu szybsze dostarczanie produktu do klienta. Bez względu na to, czy te metodologie są skuteczne, czy nie, mają jedną wspólną wadę – wymagają zmiany sposobu pracy całego zespołu. Czy możliwe jest prowadzenie ...
Krotki pojawiły się w .Net w wersji 4.0 jednak zostały zagłuszone przez inne nowości w tej wersji przez co niewiele o nich informacji w internecie.
Typy Enum są ładnym rozwiązaniem służącym do definiowania stałych. Zamiast przekazywać nic nie mówiącą liczbę do funkcji, możemy zdefiniować enum i przekazać np. TextAlignment.Left – z pewnością poprawi to czytelność kodu. Czasami jednak chcemy przekazać dwa enumy naraz lub dowolną ich kombinację. W tym celu musimy skorzystać z tzw. flag. Zacznijmy od razu od przykładu:[Flags] enum Days { None =0, Sunday =1, Monday =2, Tuesday =4, Wednesday =8, Thursday =16, Friday =32, Sa...
Zawsze podczas pisania aplikacji okienkowej lub konsolowej używałem metody Environment.Exit() do zakończenia jej działania. Normalka. Natknąłem się jednak na alternatywne rozwiązanie dedykowane dla "sytuacji wyjątkowych". Gdy program znajdzie się w stanie, w którym NIC mu już nie pomoże, to lepszym wyjściem może okazać się zatrzymanie go poprzez wywołanie Environment.FailFast(). Nie dość, że omijamy wówczas wszystkie try/catch oraz finalizery, to jeszcze w eventlogu automatycznie tworzy się wiadomość o ...
uwaga: w poniższym tekście pisząc "blog", robię to w kontekście bloga programistycznego, być może momentami nawet zawężonego do .NET Gdy ponad 3 lata temu (sic!) rozpoczynałem blogowanie, było to trochę jak błądzenie w ciemności. Owszem, zdawałem sobie sprawę z istnienia czegoś takiego jak "blogosfera", jednak odnoszę wrażenie, że dzisiaj mamy do czynienia z o wiele bardziej rozpowszechnionym zjawiskiem. Wtedy bloga nie miał prawie nikt - teraz bloga ma cała masa ludzi, zarówno studentów jak i "zawodowc...
Dlaczego nie lubię override Equal? Wszystko jest dla ludzi. Pewnie się nawet zbłaźnię tą opowieścią :] Ostatnio poszukiwałam błędu w kodzie, w którym przeciążone były funkcje Equals (o czym dowiedziałam się po znacznym czasie spędzonym z debuggerem), a czasem także ==. Błąd okazał się dość paskudny bo był nieprzewidywalny. Problem był po dodaniu elementu do kolekcji - nagle zwracane były nieprawidłowe elementy z kolekcji. Na pierwszy rzut oka Equals wyglądał dobrze, zgodnie z zasadami zalecanymi pr...
Autor: Niejedną już umowę w swoim "wolnostrzelcowym" życiu podpisałem... i właściwie ani razu nie była ona taka jak być powinna. Co prawda za każdym razem następuje pewien postęp, jednak mimo to zawsze w praniu okazuje się, że jednak o czymś - ja lub Klient - nie pomyśleliśmy. Nie wynikało to bynajmniej z chęci jednej strony do oskubania drugiej strony, co raczej z braku doświadczenia lub zbyt nieformalnego podejścia do bardzo ważnych kwestii. Postaram się tutaj zebrać garść porad wyniesionych zarówno z...
Artykuł dla osób, które dopiero zaczynają z testami jednostkowymi. Wprowadzenie, trochę teorii i best practises: http://msdn.microsoft.com/pl-pl/library/testy-jednostkowe-w-visual-studio
Część bywalców kanału #warsztat może wiedzieć, że od jakiegoś czasu w wolnych chwilach rozwijam pewien niewielki projekt. Jest to prosty IRC-owy bot, który potrafi wykonywać różne predefiniowane czynności, dostępne za pomocą komend rozpoczynających się od kropki. Wśród nich mamy między innymi wysyłanie zapytań do wyszukiwarki Google, wyświetlanie skrótów artykułów z Wikipedii, przekazywanie wia...
Jeżeli kiedykolwiek natkniecie się na problem: It is an error to use a section registered as allowDefinition='MachineToApplication' beyond application level. This error can be caused by a virtual directory not being configured as an application in IIS...
Ile raz wam się zdarza czyścić projekt z bin/obj/logs itp. itd.? Mi osobiście dość często. Miałem już dość wykonywania monotonnych czynności otwarcia folderu solution i robienia dwóch search: po bin i obj...
Możliwości kształtowania wyglądu naszych klas dla łatwiejszego debuggowania są bardzo duże. Poprzednio pokazałem jak można wpływać na to, co nam wyświetli debugger o naszej klasie (DebuggerDisplay) oraz jak można tworzyć własne wizualizery klas (Debugger Visualizers). Teraz czas na ukrywanie składowych (np. prywatnych) naszej klasy, aby nie zaśmiecać sobie podglądu stanu okiektu podczas ...
Nie tak dawno przedstawiłem na spotkaniu Łódzkiej grupy profesjonalistów IT & .NET prezentację poświęconą „Managed Extensibility Framework” (patrz informacja: Prezentacja: "Wprowadzenie do Managed Extensibility Framework w .NET 4.0"). Tych, którzy chcieliby się zapoznać z prezentacją lub kodem źródłowym, który powstał podczas prezentacji, zapraszam do obejrzenia mojej prezentacji umieszczonej na portalu SlideShare
Ostatnio natknąłem się na pułapkę metody GetHashCode(). Jak wiadomo metoda ta służy do sprawdzenia, czy mamy do czynienia z dwoma tymi samymi obiektami jednej klasy. Cytująć MSDN: "A hash code is a numeric value that is used to identify an object during equality testing" Mój błąd polegał na tym, że wiedząc, że GetH...
W ostatnim poście opisałem przebieg pewnej rekrutacji, w której uczestniczyłem, aż do rozmowy z kierownikiem projektu. Post ten stanowi dokończenie tego tematu, a w szczególności zawiera odpowiedź na pytania jakie pojawiły się w komentarzach. Po jakimś czasie po rozmowie z kierownikiem projektu, w tej chwili już nie pamiętam szczegółów, zostałem zaproszony do kolejnego etapu rekrutacji. Tym razem musiałem pofatygować się do innego miasta na serię rozmów z przedstawicielami firmy z ...
« Wywołanie orkiestracji z poziomu usługi WCFCustom functoid – od A do Z Mapowania z wykorzystaniem Scripting functoid są dość uciążliwe jeśli odwołujemy się do własnych metod napisanych w C#, ponieważ musimy za każdym razem wskazywać:Script assembly,Script class,Script method. W tym poście chciałbym pokazać w jaki sposób można stworzyć własny functoid, który będzie wykonywał metodę napisaną w C#. Do tego celu należy utworzyć projekt typu Class Library, w którego właściwościach ustawiamy Build Events:Po...
W swojej dotychczasowej karierze wziąłem udział w wielu rekrutacjach. W przeważającej liczbie przypadków zostałem zaproszony na rozmowę ale czasami skończyło się na wysłaniu CV. Bardzo często zaproszenie na rozmowę poprzedzone było wywiadem telefonicznym. Wielokrotnie rozwiązywałem różnego rodzaju testy, dużo rzadziej byłem proszony o wykonanie pracy domowej. Część rekrutacji organizowana była przez firmy HR'owe inne bezpośrednio przez zatrudniającą firmę. Spośród tych wszystkich rekrutac...
Typowa, prosta klasa Person. Cztery propercje i konstruktor. Gdy w dowolnym miejscu programu zostanie utworzona instancja klasy Person, a następnie debuggerem zatrzyma się wykonywanie kodu, można sprawdzić stan naszego obiektu. Nagłówek obiektu wyświetla nazwę klasy, a jego rozwinięcie wyświetli poszczególne składowe i ich wartości. Podobny efekt jest widoczny jeśli utworzy się kolekcję obiektów P...