W ostatnich miesiącach przez Internet (a przynajmniej przez śledzoną przeze mnie jego część) przetoczyło się kilka dyskusji na temat tzw. Citizen Development. Pojęcie to wróciło ostatnio do szerokiej świadomości za sprawą firmy Microsoft. Wielki Brat z Redmond promując swoje najnowsze aplikacje biznesowe, pochodzące z pakietu PowerApp Suite (Microsoft Flow, Power BI, PowerApps i Common Data Service), wielokrot...
Web service jest usługą sieciową, czyli usługą udostępnioną w ramach sieci www w celu odbierania i dostarczania określonych danych, w określony sposób, przez określony protokół. Najczęściej stosowanymi web service’ami są te wykorzystujące SOAP i REST.
Entity Framework jest bardzo fajnym narzędziem bardzo ułatwiającym pracę z bazami danych. Budowanie zapytań SQL na podstawie Linq, tworzenie struktury bazy danych na podstawie obiektów w C#, czy mechanizm migracji, powodują, że wielu programistów .NET wybiera Entity Framework. Niestety Entity Framework ma również swoje ciemne strony. Wystarczy chociażby wrócić do wpisu, w którym poruszałem problem aktualizowanie oraz usuwania danych. Pracując z Entity Framewor...
Bazy danych i XML 1652 dni, 2 godziny, 15 minut temu 245 źrodło rozwiń
Chcesz zgarnąć darmową wejściówkę na konferencję JDD 2018? Weź udział w konkursie DevEnv. Dla wszystkich natomiast mamy -15% na konferencję JDD 2018!
Jakiś czas temu kolega pracujący po sąsiedzku podszedł do mnie z informacją, że natknął się na ciekawe zachowanie C#. Chodziło o niechciane wywoływanie przeładowania metody. Co prawda bieżący problem udało nam się rozwiązać, ale sam mechanizm pozostał dla mnie zagadką. Próbowałem szukać rozwiązania w książkach, które wcześniej czytałem, ale dopiero odpowiedź na maila, którego wysłałem do samego Erica Lipperta pozwoliła definitywnie stwierdzić co w trawie piszczy. Dziwne enumy – ot co :)
Sztuka programowania 1652 dni, 2 godziny, 15 minut temu 239 źrodło rozwiń
Architektura 1652 dni, 2 godziny, 15 minut temu 55 źrodło rozwiń
W poprzednim wpisie dosyć obszernie przedstawiłem ogólny koncept oraz implementację zapisu danych w aplikacji DShop, która opiera się na architekturze mikroserwisowej oraz wzorcu CQRS. W tym wpisie zajmiemy się drugim flow przepływu danych w aplikacji tj. ich odczytem. Zaczynajmy! Ogólny zarys podejścia Przed omówieniem kodu znów pozwolę sobie na uprzednią prezentację koncepcji posługując się prostym diagramem: Całe flow rozpoczyna się oczywiście od otrzymania żądania HTTP, które w swoim URI ...
Architektura 1653 dni, 2 godziny, 9 minut temu 199 źrodło rozwiń
Kolejny post z serii o Bounded Contextach - jakie problemy niesie brak kontekstów w aplikacji. I dlaczego produkt w jednym dziale nie będzie tym samym produktem w drugim dziale 😉
Sztuka programowania 1653 dni, 2 godziny, 9 minut temu 99 źrodło rozwiń
Pamiętasz sytuacje, gdy czas implementacji nowych funkcjonalności rósł w nieskończoność? Może to wina kiepskiego kodu? Dziś poruszam ten temat na blogu. Zapraszam.
Sztuka programowania 1653 dni, 2 godziny, 9 minut temu 134 źrodło rozwiń
Najsłynniejszą praktyką poprawinia jakości kodu jest Code Review. Proces przeglądania kodu ma istotny efekt uboczny - propaguje dobre rozwiązania i uczy zespół nowych technik programowania.
validacja numeru telefonu zależna od kraju gdy kraj i numer tel. znajdują się w dwóch różnych DTO
Sztuka programowania 1653 dni, 2 godziny, 9 minut temu 39 źrodło rozwiń
Podstawy gita są bardzo proste. Aby zacząć korzystać z gita wystarczy znać tylko kilka poleceń. Jednak git jest potężnym narzędziem. Jeśli będziemy chcieli zrobić bardziej zaawansowane rzeczy możemy w pewnym momencie czuć się zagubieni. Możemy nawet bać się czegoś zrobić w obawie przed tym, że coś popsujemy. Warto najpierw przetestować różne polecenia bez obawy o utratę naszej pracy.
Pisząc oprogramowanie w .NET Core, które z założenia ma być uruchamiane w chmurze, na pewno będzie podlegało konteneryzacji. Niniejszy wpis nie będzie o tym jak tworzyć kontenery, lecz o tym jak szybko je budować oraz uruchamiać, a w razie konieczności wyłączać i czyścić.
Każda aplikacja niezależnie czy działa w chmurze czy lokalnie potrzebuje jakiegoś miejsca na przechowywanie danych. W tym artykule chciałbym poświęcić trochę czasu na temat projektowania naszego miejsca na dane jakim jest Table Storage, wzorców projektowania jakie są dostępne (bądź rekomendowane przez Microsoft). Jest to pierwsza część serii artykułów poświęconych Table Storage, oraz t...
Część druga artykułu o wzorcu projektowym adapter. Tym razem będzie mowa i adapterze obiektu.
Architektura 1655 dni, 2 godziny, 18 minut temu 60 źrodło rozwiń
W dzisiejszym wpisie omawiam najbardziej znany przypadek błędu systemu safety-critical z branży medycznej prowadzący do ciężkich obrażeń i śmierci pacjentów. Został on wnikliwie przeanalizowany teraz służy jako case study w różnego rodzaju materiałach o systemach safety. Therac-25 to urządzenie do radioterapii stosowane w latach 80-tych w jedenastu szpitalach w USA i Kanadzie. W latach 1985-87 odnotowano sześć przypadków podania pacjentowi stukrotnie większej dawki promieniowania niż ustawiona przez ...
W poprzednim wpisie opisałem problem z wyborem architektury aplikacji przed jakim stanął nasz zespół. W drugiej części opiszę jakie problemy udało się rozwiązać dzięki wzorcowi event aggregator, jakie pozostały nie rozwiązane, a jakie powstały w wyniku jego użycia.
Architektura 1655 dni, 2 godziny, 18 minut temu 40 źrodło rozwiń
Dzisiaj opowieść o kolejnym znanym bugu, który miał ogromne konsekwencje. Podobnie jak w przypadku Therac-25, analiza katastrofy rakiety Ariane 5 przyczyniła się do poprawy procesów wytwarzania systemów safety-critical. We wtorek 4 czerwca 1996 roku odbył się dziewiczy lot Ariane 5 – nowej rakiety Europejskiej Agencji Kosmicznej, która była rozwijana przez ostatnie 10 lat, a budżet projektu wynosił 7 mld $. Rakieta miała wynieść na orbitę okołoziemską zespół sond do badania magnetosfery. Niestety pół ...
administratorLeave a Comment on FluentValidation, standardowa i customowa walidacja modelu W końcu przyszła pora na przetestowanie biblioteki FluentValidation. Jest to narzędzie dzięki któremu możemy przetestować model danych w prosty i czytelny sposób. Gdy standardowe metody walidacji nam nie wystarczają możemy napisać własną logikę. Przedstawię pierwszy sposób ale rozszerzony o wrraper dla obiektu zwracającego rezultat dla ładnej prezentacji błędów- zapraszam !
There was awesome new few days ago on Azure blog about changing Vsts to Azure DevOps, on first look it look to be not important. But after look is seams to be a very important step by giving all unlimited CI/CD minutes for open s...