W jednym z ostatnich postów pokazałem jak stworzyć aplikację WWF na przykładzie prostego Sequential Workflow. Dzisiaj zajmiemy się wykorzystaniem stworzonej biblioteki w aplikacji klienckiej. Warto najpierw ściągnąć kompletny kod źródłowy ponieważ nastąpiła jedna drobna zmiana w implementacji workflow. Pierwszym etapem jest oczywiście stworzenie aplikacji np. WPF lub Connsole. Następnie należy dodać referencje do skompilowanej biblioteki zawierającej WWF. Ponadto jest jeszcze potrzebna biblioteka System...
StarcraftCup jest inicjatywą mającą na celu rozpropagowanie zagadnień powiązancyh ze sztuczną inteligencją. Umożliwi zetknięcie się akademickich rozważań i teoretycznych algorytmów AI z komercyjnym Uczestnikiem może być każdy, kto choć w podstawowym zakresie opanowany ma choć jeden z konkursowych języków programowania (C#,C++,Java, Lua, PHP,Haskell,Python, cokolwiek z .NET 2.0) oraz nieco wiedzy algorytmicznej.
Czyli taka mała notka, co i kiedy używać. W przypadku C++ główną różnicą jest widoczność, dla zasady mogę przypomnieć, że klasa domyślnie traktuje swoje metody i pola jako prywatne, również jeśli chodzi o dziedziczenie, w przypadku struktur jest zupełnie na odwrót. Czyli ot, kosmetyka, w wypadku C# wygląda to już zupełnie inaczej. Ale wróćmy jeszcze na chwilę do C++, w linku[1] który podałem na dole wpisu, jest podany dosyć ciekawy przykład, który może napędzić pewnych kłopotów No to przejdźmy do wprowa...
Rzadko to rzadko, ale czasami moja głupota mnie przeraża. Zdarza mi się utknąć nad jakimś kawałkiem kodu, który MUSI działać. Po prostu MUSI. A nie działa... Zwykle ma to miejsce po bardzo długiej sesji kodowania. Takiej jak ta, o której pisałem kiedyś. Podzielę się, chociaż mi wstyd:). Jedziemy...
Media Center i powieść detektywistyczna.
Oryginalny post: The Rise and Fall of Homo LogicusAutor: Jeff Atwood Pośród całej apodyktycznej dumy, którą zaobserwowałem wśród programistów, prawdopodobnie największym grzechem ze wszystkich jest to, iż uważamy siebie za typowych użytkowników. Obsesyjnie używamy komputerów, wiele wiemy o tym jak one działają, nawet udzielamy rad przyjaciołom i rodzinie. Jesteśmy ekspertami. Któż mógłby lepiej zaprojektować oprogramowanie niż my? Większość programistów nie zdaje sobie sprawy z tego, jak bardzo odstaj...
Natchnieniem do napisania tego artykułu były dla mnie doświadczenie ostatnich kilku lat mojej pracy i to że mówienie NIE przynosiło mi często więcej pożytku od mówienia tak. Ostatnio znalazłem też w sieci artykuł 10 Absolute “Nos!” for Freelancers który pokazuje że nie tylko ja miałem podobne problemy, a kluczem do ich rozwiązania jest asertywność.
W jakże wielu miejscach w sieci można natknąć się na dyskusje na ten temat... Co powinno być najważniejsze dla programisty? Czy opłaca się programować? Czy prawdziwy pasjonat powinien zwracać uwagę na coś tak przyziemnego jak wysokość wynagrodzenia? Czasami aż się dziwię skąd popularność tego tematu. Mimo to mi samemu również zdarzyło się wypowiadać w rzeczonej materii, postanowiłem więc w jakiś sposób swój pogląd na tą sprawę uporządkować.
Autor: Ostatnio mam trochę zaległości, więc i ten news już trochę opóźniony, ale jeśli ktoś jeszcze nie wie, to jakiś czas temu uruchomiony został nowy agregator blogów związanych z technologią .NET, a mianowicie: "dotNetNews.pl - nowości ze świata .net". Autorzy nowego portalu wiedzą, że istnieją podobne dostępne aplikacje, ale tą wyróżniać ma lepsze porządkowanie wiadomości pod względem czasu. Autor portalu w ramach wstępniaka pisze: "Brak uporządkowania pod względem dat powoduje, że osoba, która oder...
Dzisiaj spróbujemy stworzyć pierwszy workflow. Co prawda, nic praktycznego nie będzie wykonywał, ale pokaże kilka mechanizmów, które można wykorzystać w workflow. Zasada działania przykładowego workflow wzorowana jest na przykładzie z MSDN:Jako parametr wejściowy podajemy liczbę całkowitą,Workflow sprawdza wartość liczby. Jeśli jest mniejsza niż 2000, kończy działanie wysyłając e-mail. W przeciwnym razie, wymagana jest akceptacja wprowadzonej wartości. Użytkownik musi po prostu wywołać pewnie zdarzenie –...
Omawiając warstwę biznesową wydaje mi się, że warto wspomnieć o technologii WWF. Kilka postów wcześniej pisałem o tzw. silniku reguł biznesowych. Chodziło o zdefiniowanie reguł oraz przepływu informacji w systemie. Jako przykład można podać wysyłanie zamówienia. Proces składa na pewno z kilku etapów takich jak aktualizacja bazy danych, wysłanie e-mail’a z potwierdzeniem do klienta oraz np. wywołanie metody usługi sieciowej (może to być WCF magazynu). Po kilku miesiącach może okazać się, że scenariusz ni...
Xna 4.0 – kosmetyczne zmiany w konstrukcji projektu Jeśli mamy jakiekolwiek doświadczenia z Xna tworząc nowy projekt nie powinniśmy się zdziwić, ale za to raczej w większości z nas docenimy kosmetyczne zmiany w organizacji projektu. Moim zdaniem pomocne w poprawieniu przejrzystości projektu. Po pierwsze referencje. W Xna 4.0 jest więcej Assemblies rozbitych z poszczególną funkcjonalnością. Przy istniejącym projekcie z poprzednich wersji jest to jedna z rzeczy, która na dzień dobry nie pozwoli nam skompi...
Data końca projektu jest dla freelancera bardzo ważna. To dzień, w którym może świętować swój, bądź co bądź, sukces. To dzień, po którym może zacząć czytać nową książkę. Dzień, po którym wreszcie może pograć na komputerze. W oczekiwaniu na zapłatę wyjść na browar czy do kina. Albo planować kolejny projekt. Ostatni dzień kawowo-redbullowo-bezsennego maratonu.
Możliwość używania delegatów w C# to fajna rzecz. Przyjemne jest zwłaszcza definiowanie ich "w locie", czyli bez konieczności tworzenia zupełnie nowej funkcji. Takiego delegata nazywamy wówczas anonimowym:
Co jakiś na różnych forach, grupach dyskusyjnych, blogach, zebraniach czy przy okazji jakiś wykładów przewija się temat wyższości jednego języka programowania nad drugim. Częstym argumentem w tej "konstruktywnej" debacie jest wydajność tych języków w przypadku kawałków kodów, które powinny robić mniej więcej to samo. Jednak czy robią to samo, w ten sam sposób?
Pod jednym z moich ostatnich postów pojawił się komentarz zawierający m.in. taką treść: "Chyba potrzebuję mentora, który mógłby rzucić temat, a następnie sprawdzić jego realizację. Czy znajdzie się jakiś chętny? (...) nauka przez fun tworzenia. Ale czy to aby dobra droga?" Za mentora się bynajmniej nie uważam, ale pomyślałem - co tam, może być ciekawe doświadczenie. Kilka miesięcy temu podobny tekst wyczytałem na forum CodeGuru - wówczas też zgłosiłem się na ochotnika do takiej roli. Ale temat umarł po d...
Może nas czasami najść ochota na nazwanie jakieś zmiennej czy klasy słowem kluczowym, zarezerwowanym w C#...
Xna 4.0 – Podstawowe shadery zgodne z WP7 - BasicEffect BasicEffect nie jest w Xna nowością, za pomocą tego efektu możemy dodać do obiektu przezroczystość oraz podstawowe efekty świetlne i mgłę.
Niestety. Pierwszy duży projekt jaki sobie napisałem w Xna GS 3.1 nie chciał się skompilować w 4.0. Po wielu godzinach zabawy zszedłem do jedynych 250 bledów spowodowanych głównie zmianami w API. Wszystkie zmiany są opisane tutaj. Jeśli wykorzystujecie shadery (via efekty) to przygotujcie się na zmianę każdego Begin() i End() na Apply(). Jeśli korzystaliście intensywnie z RenderState’ów to przygotujcie się na to, że zostały rozbite na wyspecjalizowane pod-kategorie...
Xna ze względu na wykorzystanie na Windows Phone Series staje się automatycznie coraz bardziej atrakcyjną platformą do tworzenia aplikacji. Przy okazji ogłoszeń na MIX10 coraz więcej osób związanych z rozwojem tej technologii wyeksponowało swoje nazwisko. Warto śledzić co piszą w sieci, znalazłem parę interesujących odnośników do ich blogów: http://blogs.msdn.com/shawnhar/ – Shawn Hargreaves – deweloper w grupie Xna, polecam jego prezentację na MIX10 na ...