dotnetomaniak.pl - Artykuły z tagiem Narzędziadotnetomaniak.pl - Artykuły z tagiem Narzędzia2024-03-28T13:58:41Zhttps://dotnetomaniak.pl/Tags/Narz%C4%99dziaCopyright (c) dotnetomaniak.pldotnetomaniak.pl Atom Generatordotnetomaniak.pl webmasteradmin@dotnetomaniak.plhttps://dotnetomaniak.pl/Assets/Images/fav.icohttps://dotnetomaniak.pl/Assets/Images/dotnetomaniak_logo-negatyw_small.png80025https://dotnetomaniak.pl/Ogooreck-a-sneaky-testing-library-in-BDD-style-Oskar-DudyczOgooreck, a sneaky testing library in BDD style - Oskar Dudycz2022-06-16T08:57:51Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_rDp4uX7fmUGGxcHR6ZMfNw.png"/></div><div>Jakiś czas temu, zupełnie dla funu napisałem sobie sprytną biblioteczkę do testów w stylu BDD.
Dzisiaj po chrzcie w ogniu (czytaj użyciu w moich samplach) wypuściłem wersję 0.1.
Założenia:
- pomóc w płynnym i czytelnym pisaniu testów,
- usunąć boilerplate za pomocą zestawu pomocnych helperów,
- nie zastępować frameworków testowych (działa ze wszystkimi, więc XUnit, NUnit, MSTests itp.) ani innych do asercji
- zachować prostotę, ale zezwolić na kompozycje i rozszerzenia.
Póki co służy do testów API, bo tam miałem najbardziej palącą potrzebę, ale chcę dodać niedługo szablony do np. testów: CQRS, Agregatów, Event Sourcing, itd.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Ogooreck-a-sneaky-testing-library-in-BDD-style-Oskar-Dudycz"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=https%3a%2f%2fevent-driven.io%2fpl%2fogooreck_sneaky_bdd_testing_framework%3futm_source%3ddotnetomaniak" style="border:0px"/></a></div></div>oskar-at-nethttps://dotnetomaniak.pl/Users/_vjrDF1E10akUDcHhn8WZA2022-06-17T07:06:09Zhttps://dotnetomaniak.pl/Ogooreck-a-sneaky-testing-library-in-BDD-style-Oskar-Dudycz1980Jakiś czas temu, zupełnie dla funu napisałem sobie sprytną biblioteczkę do testów w stylu BDD.
Dzisiaj po chrzcie w ogniu (czytaj użyciu w moich samplach) wypuściłem wersję 0.1.
Założenia:
- pomóc w płynnym i czytelnym pisaniu testów,
- usunąć boilerplate za pomocą zestawu pomocnych helperów,
- nie zastępować frameworków testowych (działa ze wszystkimi, więc XUnit, NUnit, MSTests itp.) ani innych do asercji
- zachować prostotę, ale zezwolić na kompozycje i rozszerzenia.
Póki co służy do testów API, bo tam miałem najbardziej palącą potrzebę, ale chcę dodać niedługo szablony do np. testów: CQRS, Agregatów, Event Sourcing, itd.https://event-driven.io/pl/ogooreck_sneaky_bdd_testing_framework?utm_source=dotnetomaniakhttp://dotnetomaniak.pl/Data/Thumbnails/small_rDp4uX7fmUGGxcHR6ZMfNw.pnghttps://dotnetomaniak.pl/Technologiczno-narzedziowa-zasada-Pareto-Programista-tez-czlowiekTechnologiczno-narzędziowa zasada Pareto | Programista też człowiek2021-07-02T09:55:56Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_atMZ_6OUjECPzluQnV918w.png"/></div><div>...korporacyjne proxy, antywirusy i innego rodzaju oprogramowanie monitorujące jest w stanie ograniczyć wydajność programisty – moim zdaniem – nawet o połowę. Coś co w normalnych warunkach zajmuje 2 minuty może w takim środowisku zająć minut 10, a to już wystarczająco, by deweloper się zirytował i rozproszył. 2 minuty pozwolą pozostać we flow, a 10 minut frustracji przerodzi się w wizytę w kuchni albo chill-roomie, a następnie w kolejne kwadranse spędzone na powrocie do skupienia.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Technologiczno-narzedziowa-zasada-Pareto-Programista-tez-czlowiek"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=https%3a%2f%2fkalkus.dev%2fpl%2f2021%2f07%2f02%2ftechnologiczno-narzedziowa-zasada-pareto%2f" style="border:0px"/></a></div></div>landeeyohttps://dotnetomaniak.pl/Users/FWrKGrIeM0C_RjfInTdL5A2021-07-05T08:40:06Zhttps://dotnetomaniak.pl/Technologiczno-narzedziowa-zasada-Pareto-Programista-tez-czlowiek1690...korporacyjne proxy, antywirusy i innego rodzaju oprogramowanie monitorujące jest w stanie ograniczyć wydajność programisty – moim zdaniem – nawet o połowę. Coś co w normalnych warunkach zajmuje 2 minuty może w takim środowisku zająć minut 10, a to już wystarczająco, by deweloper się zirytował i rozproszył. 2 minuty pozwolą pozostać we flow, a 10 minut frustracji przerodzi się w wizytę w kuchni albo chill-roomie, a następnie w kolejne kwadranse spędzone na powrocie do skupienia.https://kalkus.dev/pl/2021/07/02/technologiczno-narzedziowa-zasada-pareto/http://dotnetomaniak.pl/Data/Thumbnails/small_atMZ_6OUjECPzluQnV918w.pnghttps://dotnetomaniak.pl/Klasa-per-metoda-z-wykorzystaniem-MediatR-ADMU-BlogKlasa per metoda z wykorzystaniem MediatR – ADMU Blog2020-12-01T05:48:52Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_E3cK7j_MuUivHxTGRRucvg.png"/></div><div>Z reguły naszą logikę biznesową umieszczamy w klasach serwisowych. Czasem są one większe, a czasem mniejsze. Zastanówmy się, jak mógłby wyglądać nasz kod, gdybyśmy dla każdej metody z serwisu tworzyli osobną klasę. Wykorzystamy do tego bibliotekę MediatR.
Jeśli ktoś się zastanawia po co, odpowiedź jest prosta: aby zwiększyć spójność i zmniejszyć sprzężenie. Na razie nie będziemy się zagłębiać w takie pojęcia jak CQRS czy CQS. Naszym celem jest rozbicie klas na mniejsze i zmiana tego, jak je wołamy. Po tych zmianach nasze testy e2e nadal powinny działać dokładnie tak samo.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Klasa-per-metoda-z-wykorzystaniem-MediatR-ADMU-Blog"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=https%3a%2f%2fwww.admu.pl%2fklasa-per-metoda-z-wykorzystaniem-mediatr%2f" style="border:0px"/></a></div></div>Admuhttps://dotnetomaniak.pl/Users/kfXzovc8A0uP7ZbvqtdsWQ2020-12-02T07:58:33Zhttps://dotnetomaniak.pl/Klasa-per-metoda-z-wykorzystaniem-MediatR-ADMU-Blog41340Z reguły naszą logikę biznesową umieszczamy w klasach serwisowych. Czasem są one większe, a czasem mniejsze. Zastanówmy się, jak mógłby wyglądać nasz kod, gdybyśmy dla każdej metody z serwisu tworzyli osobną klasę. Wykorzystamy do tego bibliotekę MediatR.
Jeśli ktoś się zastanawia po co, odpowiedź jest prosta: aby zwiększyć spójność i zmniejszyć sprzężenie. Na razie nie będziemy się zagłębiać w takie pojęcia jak CQRS czy CQS. Naszym celem jest rozbicie klas na mniejsze i zmiana tego, jak je wołamy. Po tych zmianach nasze testy e2e nadal powinny działać dokładnie tak samo.https://www.admu.pl/klasa-per-metoda-z-wykorzystaniem-mediatr/http://dotnetomaniak.pl/Data/Thumbnails/small_E3cK7j_MuUivHxTGRRucvg.pnghttps://dotnetomaniak.pl/Autoryzacja-zadan-w-Swagger-ADMU-BlogAutoryzacja żądań w Swagger – ADMU Blog2020-11-10T05:52:54Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_dj-eldzAXUSM5cHcs6d0qw.png"/></div><div>Jakiś czas temu pisałem o tym, że gdy tworzymy API, warto dodać narzędzie Swagger. Umożliwia ono w szybki i prosty sposób przetestować nasze API (tutaj). Zdarza się jednak tak, że aby móc korzystać z naszego API, dane żądanie (request) musi być zautoryzowane, czyli np. posiadać odpowiedni token.
Swagger umożliwia autoryzację żądań na wiele sposobów. W tym poście opiszę jak to zrobić, gdy potrzebujemy Bearer token.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Autoryzacja-zadan-w-Swagger-ADMU-Blog"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=https%3a%2f%2fwww.admu.pl%2fautoryzacja-zadan-w-swagger%2f" style="border:0px"/></a></div></div>Admuhttps://dotnetomaniak.pl/Users/kfXzovc8A0uP7ZbvqtdsWQ2020-11-12T07:12:14Zhttps://dotnetomaniak.pl/Autoryzacja-zadan-w-Swagger-ADMU-Blog2900Jakiś czas temu pisałem o tym, że gdy tworzymy API, warto dodać narzędzie Swagger. Umożliwia ono w szybki i prosty sposób przetestować nasze API (tutaj). Zdarza się jednak tak, że aby móc korzystać z naszego API, dane żądanie (request) musi być zautoryzowane, czyli np. posiadać odpowiedni token.
Swagger umożliwia autoryzację żądań na wiele sposobów. W tym poście opiszę jak to zrobić, gdy potrzebujemy Bearer token.https://www.admu.pl/autoryzacja-zadan-w-swagger/http://dotnetomaniak.pl/Data/Thumbnails/small_dj-eldzAXUSM5cHcs6d0qw.pnghttps://dotnetomaniak.pl/Jak-grupowac-logike-biznesowa-w-klasach-ADMU-BlogJak grupować logikę biznesową w klasach – ADMU Blog2020-10-13T15:29:56Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_8UL46RvHjU2Adc3VmvmtMQ.png"/></div><div>Z reguły nasze aplikacje posiadają jakąś logikę biznesową (o ile nie piszemy prostego CRUD). Chciałbym jednak zaznaczyć, że nie mam tu na myśli logiki w rozumieniu walidacji czy reguł biznesowych, np. brak możliwości zmiany wartości jakiegoś pola, gdy pewne warunki nie zostaną spełnione. Chodzi mi bardziej o logikę procesu, np. gdy klient złoży zamówienie, musimy mu wysłać wiadomość e-mail. Ta logika nie dotyczy obiektu zamówienia, ale jest z nim związana.
Skoro wiemy, że będziemy musieli przechowywać gdzieś taką logikę biznesową, zastanówmy się, gdzie to może być. W tym poście pokaże 3 najprostsze podejścia, jak to można zrobić.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Jak-grupowac-logike-biznesowa-w-klasach-ADMU-Blog"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=https%3a%2f%2fwww.admu.pl%2fgrupowanie-logiki-biznesowej%2f" style="border:0px"/></a></div></div>Admuhttps://dotnetomaniak.pl/Users/kfXzovc8A0uP7ZbvqtdsWQ2020-10-14T06:36:03Zhttps://dotnetomaniak.pl/Jak-grupowac-logike-biznesowa-w-klasach-ADMU-Blog21280Z reguły nasze aplikacje posiadają jakąś logikę biznesową (o ile nie piszemy prostego CRUD). Chciałbym jednak zaznaczyć, że nie mam tu na myśli logiki w rozumieniu walidacji czy reguł biznesowych, np. brak możliwości zmiany wartości jakiegoś pola, gdy pewne warunki nie zostaną spełnione. Chodzi mi bardziej o logikę procesu, np. gdy klient złoży zamówienie, musimy mu wysłać wiadomość e-mail. Ta logika nie dotyczy obiektu zamówienia, ale jest z nim związana.
Skoro wiemy, że będziemy musieli przechowywać gdzieś taką logikę biznesową, zastanówmy się, gdzie to może być. W tym poście pokaże 3 najprostsze podejścia, jak to można zrobić.https://www.admu.pl/grupowanie-logiki-biznesowej/http://dotnetomaniak.pl/Data/Thumbnails/small_8UL46RvHjU2Adc3VmvmtMQ.pnghttps://dotnetomaniak.pl/Jak-obsluzyc-zwracanie-wyjatku-w-WebAPI-ADMU-BlogJak obsłużyć zwracanie wyjątku w WebAPI – ADMU Blog2020-09-29T04:44:43Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_2dim0TCuxkiXYOSuYmUXTA.png"/></div><div>Ostatnio pisałem o tym, co możemy zrobić, gdy nasze metody zwracają rezultat i chcemy go zmapować na odpowiedni kod http (tutaj). W tym poście podam podobne rozwiązanie, gdy nasze metody rzucają wyjątki, zamiast zwracać rezultat.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Jak-obsluzyc-zwracanie-wyjatku-w-WebAPI-ADMU-Blog"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=https%3a%2f%2fwww.admu.pl%2fzwracanie-wyjatku%2f" style="border:0px"/></a></div></div>Admuhttps://dotnetomaniak.pl/Users/kfXzovc8A0uP7ZbvqtdsWQ2020-09-30T06:48:57Zhttps://dotnetomaniak.pl/Jak-obsluzyc-zwracanie-wyjatku-w-WebAPI-ADMU-Blog1910Ostatnio pisałem o tym, co możemy zrobić, gdy nasze metody zwracają rezultat i chcemy go zmapować na odpowiedni kod http (tutaj). W tym poście podam podobne rozwiązanie, gdy nasze metody rzucają wyjątki, zamiast zwracać rezultat.https://www.admu.pl/zwracanie-wyjatku/http://dotnetomaniak.pl/Data/Thumbnails/small_2dim0TCuxkiXYOSuYmUXTA.pnghttps://dotnetomaniak.pl/Jak-obsluzyc-zwracanie-rezultatu-w-WebAPI-ADMU-BlogJak obsłużyć zwracanie rezultatu w WebAPI – ADMU Blog2020-09-15T05:15:20Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_eqsoi0O6FE-cfFuuNKfU1Q.png"/></div><div>Jakiś czasem temu pisałem o tym, że nasze metody mogą zwracać rezultat lub zgłaszać wyjątek (tutaj). Zastanówmy się, jak mogłoby wyglądać nasze API, aby status rezultatu był mapowany na odpowiedni kod Http. Mamy dwie możliwości: wspólna metoda w klasie bazowej lub filtr.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Jak-obsluzyc-zwracanie-rezultatu-w-WebAPI-ADMU-Blog"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=https%3a%2f%2fwww.admu.pl%2fzwracanie-rezultatu%2f" style="border:0px"/></a></div></div>Admuhttps://dotnetomaniak.pl/Users/kfXzovc8A0uP7ZbvqtdsWQ2020-09-16T06:43:04Zhttps://dotnetomaniak.pl/Jak-obsluzyc-zwracanie-rezultatu-w-WebAPI-ADMU-Blog1880Jakiś czasem temu pisałem o tym, że nasze metody mogą zwracać rezultat lub zgłaszać wyjątek (tutaj). Zastanówmy się, jak mogłoby wyglądać nasze API, aby status rezultatu był mapowany na odpowiedni kod Http. Mamy dwie możliwości: wspólna metoda w klasie bazowej lub filtr.https://www.admu.pl/zwracanie-rezultatu/http://dotnetomaniak.pl/Data/Thumbnails/small_eqsoi0O6FE-cfFuuNKfU1Q.pnghttps://dotnetomaniak.pl/Daty-jak-sobie-z-nimi-radzic-ADMU-BlogDaty – jak sobie z nimi radzić – ADMU Blog2020-06-30T06:01:05Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_aDAi59IBMEGm39_uL31NLA.png"/></div><div>Często w naszych aplikacjach mamy do czynienia z datami. Najczęściej używamy ich przy polach takich jak data utworzenia (np. CreatedAt) lub data modyfikacji (np. ModifiedAt), ale są też inne miejsca. Wtedy z reguły stosujemy DateTime.UtcNow.
Niestety w testach ciężko jest potem coś z taką datą zrobić. Nie mamy żadnej możliwości ustawienia tej daty na jakąś inną, aby przetestować czy nasza aplikacja działa poprawnie. Sprawa się jeszcze bardziej komplikuje, gdy mamy logikę biznesową uzależnioną od takiej daty. Wtedy już nie wypada, aby taki kod nie był przetestowany, a testy w tej sytuacji napisać trudno.
Postaram się podać kilka pomysłów, jak można sobie radzić w takiej sytuacji.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Daty-jak-sobie-z-nimi-radzic-ADMU-Blog"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=https%3a%2f%2fwww.admu.pl%2fdaty-jak-sobie-z-nimi-radzic%2f" style="border:0px"/></a></div></div>Admuhttps://dotnetomaniak.pl/Users/kfXzovc8A0uP7ZbvqtdsWQ2020-07-01T07:32:31Zhttps://dotnetomaniak.pl/Daty-jak-sobie-z-nimi-radzic-ADMU-Blog21690Często w naszych aplikacjach mamy do czynienia z datami. Najczęściej używamy ich przy polach takich jak data utworzenia (np. CreatedAt) lub data modyfikacji (np. ModifiedAt), ale są też inne miejsca. Wtedy z reguły stosujemy DateTime.UtcNow.
Niestety w testach ciężko jest potem coś z taką datą zrobić. Nie mamy żadnej możliwości ustawienia tej daty na jakąś inną, aby przetestować czy nasza aplikacja działa poprawnie. Sprawa się jeszcze bardziej komplikuje, gdy mamy logikę biznesową uzależnioną od takiej daty. Wtedy już nie wypada, aby taki kod nie był przetestowany, a testy w tej sytuacji napisać trudno.
Postaram się podać kilka pomysłów, jak można sobie radzić w takiej sytuacji.https://www.admu.pl/daty-jak-sobie-z-nimi-radzic/http://dotnetomaniak.pl/Data/Thumbnails/small_aDAi59IBMEGm39_uL31NLA.pnghttps://dotnetomaniak.pl/AutoMapper-to-zlo-ADMU-BlogAutoMapper to zło – ADMU Blog2020-06-16T05:52:12Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_rUorfYJsBkeVBL4FGtn-VQ.png"/></div><div>Kiedyś bardzo lubiłem bibliotekę AutoMapper. Była ona z reguły jedną z pierwszych bibliotek, jakie zawsze dodawałem do projektu na samym początku. Pozwalała mi tworzyć mnóstwo obiektów i mapować je do woli, poświęcając na to niewiele czasu „programistycznego”. Była świetna! Aż do momentu, gdy zaczęła być jedną z największych bolączek.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/AutoMapper-to-zlo-ADMU-Blog"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=https%3a%2f%2fwww.admu.pl%2fautomapper-to-zlo%2f" style="border:0px"/></a></div></div>Admuhttps://dotnetomaniak.pl/Users/kfXzovc8A0uP7ZbvqtdsWQ2020-06-17T06:58:40Zhttps://dotnetomaniak.pl/AutoMapper-to-zlo-ADMU-Blog62610Kiedyś bardzo lubiłem bibliotekę AutoMapper. Była ona z reguły jedną z pierwszych bibliotek, jakie zawsze dodawałem do projektu na samym początku. Pozwalała mi tworzyć mnóstwo obiektów i mapować je do woli, poświęcając na to niewiele czasu „programistycznego”. Była świetna! Aż do momentu, gdy zaczęła być jedną z największych bolączek.https://www.admu.pl/automapper-to-zlo/http://dotnetomaniak.pl/Data/Thumbnails/small_rUorfYJsBkeVBL4FGtn-VQ.pnghttps://dotnetomaniak.pl/Zaawansowana-walidacja-danych-z-FluentValidation-ADMU-BlogZaawansowana walidacja danych z FluentValidation – ADMU Blog2020-02-11T06:25:01Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_HwYhWLyl70aFCcGC0vaNZw.png"/></div><div>W poprzednim poście pisałem o bibliotece FluentValidation i jak ją dodać do naszego projektu. W tym poście skupimy się na bardziej zaawansowanych funkcjonalnościach, jakie nam ta biblioteka udostępnia:
- Walidacja złożonych właściwości (manualna i automatyczna)
- Wspólny walidator właściwości
- Walidacja listy
- Własny komunikat błędu walidacji
- Wspólne walidatory
- Warunki walidacji
- Reguły zależne od siebie
- Wywołanie zwrotne
- Asynchroniczna walidacja</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Zaawansowana-walidacja-danych-z-FluentValidation-ADMU-Blog"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=https%3a%2f%2fwww.admu.pl%2fzaawansowana-walidacja-danych-z-fluentvalidation%2f" style="border:0px"/></a></div></div>Admuhttps://dotnetomaniak.pl/Users/kfXzovc8A0uP7ZbvqtdsWQ2020-02-12T06:36:07Zhttps://dotnetomaniak.pl/Zaawansowana-walidacja-danych-z-FluentValidation-ADMU-Blog11350W poprzednim poście pisałem o bibliotece FluentValidation i jak ją dodać do naszego projektu. W tym poście skupimy się na bardziej zaawansowanych funkcjonalnościach, jakie nam ta biblioteka udostępnia:
- Walidacja złożonych właściwości (manualna i automatyczna)
- Wspólny walidator właściwości
- Walidacja listy
- Własny komunikat błędu walidacji
- Wspólne walidatory
- Warunki walidacji
- Reguły zależne od siebie
- Wywołanie zwrotne
- Asynchroniczna walidacjahttps://www.admu.pl/zaawansowana-walidacja-danych-z-fluentvalidation/http://dotnetomaniak.pl/Data/Thumbnails/small_HwYhWLyl70aFCcGC0vaNZw.pnghttps://dotnetomaniak.pl/Walidacja-danych-z-FluentValidation-ADMU-BlogWalidacja danych z FluentValidation – ADMU Blog2020-02-04T07:22:32Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_12cVH4TADEuyDh04TZlWHA.png"/></div><div>W prawie każdym projekcie jest potrzebna jakaś walidacja danych. Klasy służące do walidacji można napisać samemu, ale można również skorzystać z gotowych bibliotek. Najbardziej lubię FluentValidation. Jest to biblioteka, która ułatwia tworzenie „walidatorów” – klas zawierających reguły walidacji.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Walidacja-danych-z-FluentValidation-ADMU-Blog"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=https%3a%2f%2fwww.admu.pl%2fwalidacja-danych-z-fluentvalidation%2f" style="border:0px"/></a></div></div>Admuhttps://dotnetomaniak.pl/Users/kfXzovc8A0uP7ZbvqtdsWQ2020-02-05T07:44:58Zhttps://dotnetomaniak.pl/Walidacja-danych-z-FluentValidation-ADMU-Blog31390W prawie każdym projekcie jest potrzebna jakaś walidacja danych. Klasy służące do walidacji można napisać samemu, ale można również skorzystać z gotowych bibliotek. Najbardziej lubię FluentValidation. Jest to biblioteka, która ułatwia tworzenie „walidatorów” – klas zawierających reguły walidacji.https://www.admu.pl/walidacja-danych-z-fluentvalidation/http://dotnetomaniak.pl/Data/Thumbnails/small_12cVH4TADEuyDh04TZlWHA.pnghttps://dotnetomaniak.pl/Konfiguracja-logowania-w-C-Serilog-ADMU-BlogKonfiguracja logowania w C# – Serilog – ADMU Blog2019-12-10T07:19:50Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_tcH4O3R3Y0qBIP-J-FOKnA.png"/></div><div>Ostatnio opisałem jak dodać logowanie przy pomocy biblioteki Serilog do naszej aplikacji. W tym poście postaram się pokazać jak można je skonfigurować.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Konfiguracja-logowania-w-C-Serilog-ADMU-Blog"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=https%3a%2f%2fwww.admu.pl%2fkonfiguracja-logowania%2f" style="border:0px"/></a></div></div>Admuhttps://dotnetomaniak.pl/Users/kfXzovc8A0uP7ZbvqtdsWQ2019-12-11T07:48:08Zhttps://dotnetomaniak.pl/Konfiguracja-logowania-w-C-Serilog-ADMU-Blog21340Ostatnio opisałem jak dodać logowanie przy pomocy biblioteki Serilog do naszej aplikacji. W tym poście postaram się pokazać jak można je skonfigurować.https://www.admu.pl/konfiguracja-logowania/http://dotnetomaniak.pl/Data/Thumbnails/small_tcH4O3R3Y0qBIP-J-FOKnA.pnghttps://dotnetomaniak.pl/Logowanie-w-C-Serilog-ADMU-BlogLogowanie w C# – Serilog – ADMU Blog2019-12-03T07:05:58Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_rxa0xckyPEKGkqxgda9DNA.png"/></div><div>Chyba każdy z nas używa logowania w swojej aplikacji. Jeśli jednak ktoś tego nie robi, to zachęcam zacząć. W innym przypadku może być mu trudno zareagować, kiedy coś się wysypie.
Postaram się w kilku prostych krokach pokazać, jak dodać logowanie do naszej aplikacji z wykorzystaniem Serilog.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Logowanie-w-C-Serilog-ADMU-Blog"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=https%3a%2f%2fwww.admu.pl%2flogowanie%2f" style="border:0px"/></a></div></div>Admuhttps://dotnetomaniak.pl/Users/kfXzovc8A0uP7ZbvqtdsWQ2019-12-04T07:44:37Zhttps://dotnetomaniak.pl/Logowanie-w-C-Serilog-ADMU-Blog21680Chyba każdy z nas używa logowania w swojej aplikacji. Jeśli jednak ktoś tego nie robi, to zachęcam zacząć. W innym przypadku może być mu trudno zareagować, kiedy coś się wysypie.
Postaram się w kilku prostych krokach pokazać, jak dodać logowanie do naszej aplikacji z wykorzystaniem Serilog.https://www.admu.pl/logowanie/http://dotnetomaniak.pl/Data/Thumbnails/small_rxa0xckyPEKGkqxgda9DNA.pnghttps://dotnetomaniak.pl/Automatyczne-tworzenie-mockow-AutoMoq-ADMU-BlogAutomatyczne tworzenie mocków – AutoMoq – ADMU Blog2019-11-19T06:25:08Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_F4QW1Q7OM0asvG3yApal_g.png"/></div><div>Gdy tworzymy testy jednostkowe bardzo często musimy coś „zmockować” (czyli stworzyć sztuczny obiekt, którego będziemy używali w trakcie testów zamiast prawdziwej implementacji). Niestety czasem bywa tak, że nasza klasa ma dużo zależności, a do naszego testu potrzebujemy tylko niektórych z nich. Mimo to musimy stworzyć mock dla każdej z zależności, bo inaczej nie będziemy mogli wykonać testu. Czasem bywa też tak, że potrzebujemy dodać nową zależność do istniejącej klasy, a potem trzeba przerobić wszystkie testy i w każdym z nich dodać mock do nowej zależności – nawet jeśli one tej zależności nie wykorzystują.
Przyznam szczerze, że takie sytuacje powodowały, że nie chciało mi się pisać testów. Byłem im przeciwny, bo drobna zmiana powodowała godziny poświęcone na poprawianie testów. Jednak jakiś czas temu natknąłem się na bibliotekę, która automatycznie tworzy mocki dla wszystkich zależności. My potem tylko dostosowujemy te, które są niezbędne dla testów. To znacząco zredukowało poziom frustracji i dzięki temu dużo chętniej dodaję nowe testy.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Automatyczne-tworzenie-mockow-AutoMoq-ADMU-Blog"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=https%3a%2f%2fwww.admu.pl%2fautomatyczne-tworzenie-mockow%2f" style="border:0px"/></a></div></div>Admuhttps://dotnetomaniak.pl/Users/kfXzovc8A0uP7ZbvqtdsWQ2019-11-20T07:48:17Zhttps://dotnetomaniak.pl/Automatyczne-tworzenie-mockow-AutoMoq-ADMU-Blog11250Gdy tworzymy testy jednostkowe bardzo często musimy coś „zmockować” (czyli stworzyć sztuczny obiekt, którego będziemy używali w trakcie testów zamiast prawdziwej implementacji). Niestety czasem bywa tak, że nasza klasa ma dużo zależności, a do naszego testu potrzebujemy tylko niektórych z nich. Mimo to musimy stworzyć mock dla każdej z zależności, bo inaczej nie będziemy mogli wykonać testu. Czasem bywa też tak, że potrzebujemy dodać nową zależność do istniejącej klasy, a potem trzeba przerobić wszystkie testy i w każdym z nich dodać mock do nowej zależności – nawet jeśli one tej zależności nie wykorzystują.
Przyznam szczerze, że takie sytuacje powodowały, że nie chciało mi się pisać testów. Byłem im przeciwny, bo drobna zmiana powodowała godziny poświęcone na poprawianie testów. Jednak jakiś czas temu natknąłem się na bibliotekę, która automatycznie tworzy mocki dla wszystkich zależności. My potem tylko dostosowujemy te, które są niezbędne dla testów. To znacząco zredukowało poziom frustracji i dzięki temu dużo chętniej dodaję nowe testy.https://www.admu.pl/automatyczne-tworzenie-mockow/http://dotnetomaniak.pl/Data/Thumbnails/small_F4QW1Q7OM0asvG3yApal_g.pnghttps://dotnetomaniak.pl/Automatyczne-tworzenie-obiektow-z-danymi-AutoFixture-ADMU-BlogAutomatyczne tworzenie obiektów z danymi – AutoFixture – ADMU Blog2019-11-05T06:54:18Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_-XCuVM6XaUK5j2LkVImA4w.png"/></div><div>Podczas pisania testów (czy to jednostkowych, czy integracyjnych, czy e2e) prawie zawsze musimy stworzyć obiekt z danymi. Czasem jest to obiekt wejściowy, czasem wyjściowy. Z reguły nie interesuje nas większość pól danego obiektu, a jedynie kilka konkretnych. Mimo to musimy uzupełnić wszystkie pola, aby aplikacja zachowywała się poprawnie.
Tu z pomocą może nam przyjść biblioteka AutoFixture.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Automatyczne-tworzenie-obiektow-z-danymi-AutoFixture-ADMU-Blog"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=http%3a%2f%2fwww.admu.pl%2fautomatyczne-tworzenie-obiektow%2f" style="border:0px"/></a></div></div>Admuhttps://dotnetomaniak.pl/Users/kfXzovc8A0uP7ZbvqtdsWQ2019-11-06T07:42:22Zhttps://dotnetomaniak.pl/Automatyczne-tworzenie-obiektow-z-danymi-AutoFixture-ADMU-Blog11120Podczas pisania testów (czy to jednostkowych, czy integracyjnych, czy e2e) prawie zawsze musimy stworzyć obiekt z danymi. Czasem jest to obiekt wejściowy, czasem wyjściowy. Z reguły nie interesuje nas większość pól danego obiektu, a jedynie kilka konkretnych. Mimo to musimy uzupełnić wszystkie pola, aby aplikacja zachowywała się poprawnie.
Tu z pomocą może nam przyjść biblioteka AutoFixture.http://www.admu.pl/automatyczne-tworzenie-obiektow/http://dotnetomaniak.pl/Data/Thumbnails/small_-XCuVM6XaUK5j2LkVImA4w.pnghttps://dotnetomaniak.pl/dnSpy-debugowanie-aplikacji-bez-kodu-Blog-Daniela-PlawgodnSpy – debugowanie aplikacji bez kodu - Blog Daniela Plawgo2019-05-15T03:20:45Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_pVclbaNlxUa3e82sfonSEA.png"/></div><div>Zapewne nie raz miałeś(-łaś) tak, że aplikacja na produkcji, u klienta lub serwerze testowym działa inaczej, niż powinna. A to pojawia się jakiś wyjątek, a to wynik operacji jest inny, niż powinien być. Znając życie, w logach nic ciekawego nie było i przez dłuższy czas dodawałeś(-łaś) do nich kolejne linijki w pogoni za błędem. Myślę, że każdy z nas miał wcześniej czy później podobny problem.
Nie raz przemknęło Ci przez myśl, by zainstalować Visual Studio, aby...</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/dnSpy-debugowanie-aplikacji-bez-kodu-Blog-Daniela-Plawgo"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=https%3a%2f%2fplawgo.pl%2f2019%2f05%2f14%2fdnspy-debugowanie-aplikacji-bez-kodu%2f" style="border:0px"/></a></div></div>danielplawgohttps://dotnetomaniak.pl/Users/2gpSr8DDgU2Y9-iey0Z9mw2019-05-16T06:18:40Zhttps://dotnetomaniak.pl/dnSpy-debugowanie-aplikacji-bez-kodu-Blog-Daniela-Plawgo72180Zapewne nie raz miałeś(-łaś) tak, że aplikacja na produkcji, u klienta lub serwerze testowym działa inaczej, niż powinna. A to pojawia się jakiś wyjątek, a to wynik operacji jest inny, niż powinien być. Znając życie, w logach nic ciekawego nie było i przez dłuższy czas dodawałeś(-łaś) do nich kolejne linijki w pogoni za błędem. Myślę, że każdy z nas miał wcześniej czy później podobny problem.
Nie raz przemknęło Ci przez myśl, by zainstalować Visual Studio, aby...https://plawgo.pl/2019/05/14/dnspy-debugowanie-aplikacji-bez-kodu/http://dotnetomaniak.pl/Data/Thumbnails/small_pVclbaNlxUa3e82sfonSEA.pnghttps://dotnetomaniak.pl/Jak-nie-rozmawiac-o-narzedziach-PoznajProgramowanieplJak (nie) rozmawiać o narzędziach - PoznajProgramowanie.pl2018-10-15T20:30:25Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_vnAfI9EIi06OMRbE3dVhjw.png"/></div><div>Obserwując nasze środowisko w trakcie luźnych rozmów na konferencjach, w mediach społecznościowych czy chociażby w komentarzach pod postami na blogach dochodzę do wniosku, że jednej umiejętności ciągle musimy się uczyć – umiejętności przyznawania, że świat za płotem naszego ogródka może wyglądać nieco inaczej niż u nas. Tyczy się to szczególnie rozmów o narzędziach które rzekomo mają decydować o natychmiastowym sukcesie lub porażce danego projektu. Dzisiaj kilka przykła...</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Jak-nie-rozmawiac-o-narzedziach-PoznajProgramowaniepl"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=https%3a%2f%2fpoznajprogramowanie.pl%2fjak-nie-rozmawiac-o-narzedziach%2f" style="border:0px"/></a></div></div>AdrianBystrekhttps://dotnetomaniak.pl/Users/OVypLamzHEejQV0ElEVgOA2018-10-16T07:39:08Zhttps://dotnetomaniak.pl/Jak-nie-rozmawiac-o-narzedziach-PoznajProgramowaniepl11250Obserwując nasze środowisko w trakcie luźnych rozmów na konferencjach, w mediach społecznościowych czy chociażby w komentarzach pod postami na blogach dochodzę do wniosku, że jednej umiejętności ciągle musimy się uczyć – umiejętności przyznawania, że świat za płotem naszego ogródka może wyglądać nieco inaczej niż u nas. Tyczy się to szczególnie rozmów o narzędziach które rzekomo mają decydować o natychmiastowym sukcesie lub porażce danego projektu. Dzisiaj kilka przykła...https://poznajprogramowanie.pl/jak-nie-rozmawiac-o-narzedziach/http://dotnetomaniak.pl/Data/Thumbnails/small_vnAfI9EIi06OMRbE3dVhjw.pnghttps://dotnetomaniak.pl/Kodujemy-online-DevBlazeKodujemy online - DevBlaze2017-11-13T10:16:51Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_ujsR5dusuku31_eERPar4Q.png"/></div><div>Czy chcieliście kiedyś szybko przetestować jakiś fragment kodu? Pracujecie na komputerze gdzie nie macie zainstalowanego środowiska (np. kolegi, koleżanki)? Albo po prostu nie chce Wam się lub nie możecie go aktualnie odpalić? Dobrze trafiliście. Dzisiaj przedstawię Wam kompilator online dla śr...</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Kodujemy-online-DevBlaze"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=http%3a%2f%2fdevblaze.gemustudio.com%2fkodujemy-online%2f" style="border:0px"/></a></div></div>blazehttps://dotnetomaniak.pl/Users/DYnETvJB8UqoWYd8oBWa2g2017-11-23T07:13:14Zhttps://dotnetomaniak.pl/Kodujemy-online-DevBlaze21360Czy chcieliście kiedyś szybko przetestować jakiś fragment kodu? Pracujecie na komputerze gdzie nie macie zainstalowanego środowiska (np. kolegi, koleżanki)? Albo po prostu nie chce Wam się lub nie możecie go aktualnie odpalić? Dobrze trafiliście. Dzisiaj przedstawię Wam kompilator online dla śr...http://devblaze.gemustudio.com/kodujemy-online/http://dotnetomaniak.pl/Data/Thumbnails/small_ujsR5dusuku31_eERPar4Q.pnghttps://dotnetomaniak.pl/Magiczne-debuggowanie-z-OzCode-programmer-girlMagiczne debuggowanie z OzCode – programmer-girl2017-11-06T20:14:32Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_wLObZVZ9FkCzrdccyHeBSA.png"/></div><div>Kilka słów o dodatku do Visual Studio o nazwie OzCode, który umożliwia magiczne debuggowanie</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Magiczne-debuggowanie-z-OzCode-programmer-girl"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=https%3a%2f%2fprogrammer-girl.com%2f2017%2f11%2f06%2fdarmowy-ozcode-dla-projektow-opensource%2f" style="border:0px"/></a></div></div>Weronika Mularczykhttps://dotnetomaniak.pl/Users/O1ApavoJX0SfwkW8t4YbUQ2017-11-16T10:52:53Zhttps://dotnetomaniak.pl/Magiczne-debuggowanie-z-OzCode-programmer-girl31740Kilka słów o dodatku do Visual Studio o nazwie OzCode, który umożliwia magiczne debuggowaniehttps://programmer-girl.com/2017/11/06/darmowy-ozcode-dla-projektow-opensource/http://dotnetomaniak.pl/Data/Thumbnails/small_wLObZVZ9FkCzrdccyHeBSA.pnghttps://dotnetomaniak.pl/AppVeynor-darmowe-CI-dla-projektow-Open-SourceAppVeynor darmowe CI dla projektów Open Source2017-09-25T05:00:13Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_iNOgShTKYkqZaKD1T6oiCg.png"/></div><div>Cześć. Jakiś czas temu natchnęło mnie i postanowiłem ogarnąć coś, żeby 2DXnegine budował się na serwerze Continous Integration. Dla niezaznajomionych z tematem Continous Integration to taki twór, który po każdym commicie będzie pobierał do siebie nasze źródła, kompilował je i odpalał testy - po tym wszystkim możemy gdzieś naszą zbudowaną aplikacje wystawić i robić jeszcze inne cuda, o których jeszcze nie pomyślałem. Na rynku istnieje parę...</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/AppVeynor-darmowe-CI-dla-projektow-Open-Source"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=https%3a%2f%2fharunx9.github.io%2fappveynor-darmowe-ci-dla-projektow-open-source.html%23appveynor-darmowe-ci-dla-projektow-open-source" style="border:0px"/></a></div></div>SzymonWhttps://dotnetomaniak.pl/Users/ves6TIuLSEq6QiHEN4rhuA2017-10-03T05:53:04Zhttps://dotnetomaniak.pl/AppVeynor-darmowe-CI-dla-projektow-Open-Source3620Cześć. Jakiś czas temu natchnęło mnie i postanowiłem ogarnąć coś, żeby 2DXnegine budował się na serwerze Continous Integration. Dla niezaznajomionych z tematem Continous Integration to taki twór, który po każdym commicie będzie pobierał do siebie nasze źródła, kompilował je i odpalał testy - po tym wszystkim możemy gdzieś naszą zbudowaną aplikacje wystawić i robić jeszcze inne cuda, o których jeszcze nie pomyślałem. Na rynku istnieje parę...https://harunx9.github.io/appveynor-darmowe-ci-dla-projektow-open-source.html#appveynor-darmowe-ci-dla-projektow-open-sourcehttp://dotnetomaniak.pl/Data/Thumbnails/small_iNOgShTKYkqZaKD1T6oiCg.pnghttps://dotnetomaniak.pl/Jak-wybrac-odpowiednia-technologie-narzedzia-czy-framework-PoznajProgramowanieplJak wybrać odpowiednią technologię, narzędzia, czy framework? - PoznajProgramowanie.pl2017-06-28T06:13:46Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_ErxRcY2CjkOtkLwfwtCXwQ.png"/></div><div>Jak wybrać odpowiednią technologię, narzędzia, czy framework?
Trafiłem ostatnio na nowy portal w sieci, który zmusił mnie do pewnej refleksji. Mianowicie myślę, że jedną z najcięższych decyzji przed jakimi możemy zostać postawieni to decyzja związana z wyborem odpowiedniej technologii, narzędzi, czy frameworków, przy użyciu których będziemy realizować dany projekt.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Jak-wybrac-odpowiednia-technologie-narzedzia-czy-framework-PoznajProgramowaniepl"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=http%3a%2f%2fpoznajprogramowanie.pl%2fjak-wybrac-odpowiednia-technologie-narzedzia-czy-framework%2f" style="border:0px"/></a></div></div>AdrianBystrekhttps://dotnetomaniak.pl/Users/OVypLamzHEejQV0ElEVgOA2017-07-07T21:47:05Zhttps://dotnetomaniak.pl/Jak-wybrac-odpowiednia-technologie-narzedzia-czy-framework-PoznajProgramowaniepl12290Jak wybrać odpowiednią technologię, narzędzia, czy framework?
Trafiłem ostatnio na nowy portal w sieci, który zmusił mnie do pewnej refleksji. Mianowicie myślę, że jedną z najcięższych decyzji przed jakimi możemy zostać postawieni to decyzja związana z wyborem odpowiedniej technologii, narzędzi, czy frameworków, przy użyciu których będziemy realizować dany projekt.http://poznajprogramowanie.pl/jak-wybrac-odpowiednia-technologie-narzedzia-czy-framework/http://dotnetomaniak.pl/Data/Thumbnails/small_ErxRcY2CjkOtkLwfwtCXwQ.pnghttps://dotnetomaniak.pl/Narzedzia-ktore-powinien-znac-kazdy-web-developer-PoznajProgramowanieplNarzędzia które powinien znać każdy web developer - PoznajProgramowanie.pl2017-05-15T05:53:59Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_lULVkbICxk-FD8MRSA4T3g.png"/></div><div>Oprócz głównego IDE, z którego korzystamy każdego dnia istnieje masa pobocznych narzędzi, które pomagają nam w przeróżnych zadaniach. Dzisiaj prezentujemy Wam listę programów (większość z nich jest darmowa), które ułatwiają nam pracę oraz, o których istnieniu każdy web developer wiedzieć powinien.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Narzedzia-ktore-powinien-znac-kazdy-web-developer-PoznajProgramowaniepl"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=http%3a%2f%2fpoznajprogramowanie.pl%2fnarzedzia-ktore-powinien-znac-kazdy-web-developer%2f" style="border:0px"/></a></div></div>AdrianBystrekhttps://dotnetomaniak.pl/Users/OVypLamzHEejQV0ElEVgOA2017-05-21T15:26:33Zhttps://dotnetomaniak.pl/Narzedzia-ktore-powinien-znac-kazdy-web-developer-PoznajProgramowaniepl53820Oprócz głównego IDE, z którego korzystamy każdego dnia istnieje masa pobocznych narzędzi, które pomagają nam w przeróżnych zadaniach. Dzisiaj prezentujemy Wam listę programów (większość z nich jest darmowa), które ułatwiają nam pracę oraz, o których istnieniu każdy web developer wiedzieć powinien.http://poznajprogramowanie.pl/narzedzia-ktore-powinien-znac-kazdy-web-developer/http://dotnetomaniak.pl/Data/Thumbnails/small_lULVkbICxk-FD8MRSA4T3g.pnghttps://dotnetomaniak.pl/Podejmowanie-decyzji-o-narzedziach-programistycznych-Jakub-GutkowskiPodejmowanie decyzji o narzędziach programistycznych - Jakub Gutkowski2017-04-06T07:43:48Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_OSSqNR-OikWN8beLOWp3pw.png"/></div><div>O tym, że decyzja o narzędziach developerskich nie powinno się dobierać do problemu a nie następnie naginać je do problemu.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Podejmowanie-decyzji-o-narzedziach-programistycznych-Jakub-Gutkowski"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=https%3a%2f%2fblog.gutek.pl%2f2017%2f04%2f06%2fpodejmowanie-decyzji-o-narzedziach-programistycznych%2f" style="border:0px"/></a></div></div>Gutekhttps://dotnetomaniak.pl/Users/9zCEEfXxAEmLNs3bT0YJ_Q2017-04-10T06:52:59Zhttps://dotnetomaniak.pl/Podejmowanie-decyzji-o-narzedziach-programistycznych-Jakub-Gutkowski1980O tym, że decyzja o narzędziach developerskich nie powinno się dobierać do problemu a nie następnie naginać je do problemu.https://blog.gutek.pl/2017/04/06/podejmowanie-decyzji-o-narzedziach-programistycznych/http://dotnetomaniak.pl/Data/Thumbnails/small_OSSqNR-OikWN8beLOWp3pw.pnghttps://dotnetomaniak.pl/Kupowanie-wlasnych-licencji-na-oprogramowanie-Blog-ProgramistyNETKupowanie własnych licencji na oprogramowanie | Blog Programisty.NET2017-03-14T13:15:41Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_qBZptb0lvEeV63S8jB_P2A.png"/></div><div>Zanim przejdę do posta to muszę powiedzieć, że wysyp wpisów na blogach .NET-owych jest ogromny. Akcja Daj się poznać II naprawdę robi spory ruch w sieci. Tak jak kiedyś były momenty, że nikt nic nie pisał, to teraz nie ma kiedy tego wszystkiego poczytać. Naprawdę szacunek za tą akcję. Zacieram ręce w oczekiwaniu na Polskiego Martina Fowlera.
Dzięki nowej pracy i nowo poznanemu koledze odkryłem, że można sobie ułatwić życie w firmie kupując własne licencje na oprogramowanie, którego używasz. Szczegóły opisze poniżej. Pomysł może jest kontrowersyjny trochę ale ma mnóstwo zalet.</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Kupowanie-wlasnych-licencji-na-oprogramowanie-Blog-ProgramistyNET"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=http%3a%2f%2fblogprogramisty.net%2fkupowanie-wlasnych-licencji-na-oprogramowanie%2f" style="border:0px"/></a></div></div>przemekwahttps://dotnetomaniak.pl/Users/rnjjbvOmxU-se7omHI0g3w2017-03-17T08:28:06Zhttps://dotnetomaniak.pl/Kupowanie-wlasnych-licencji-na-oprogramowanie-Blog-ProgramistyNET12840Zanim przejdę do posta to muszę powiedzieć, że wysyp wpisów na blogach .NET-owych jest ogromny. Akcja Daj się poznać II naprawdę robi spory ruch w sieci. Tak jak kiedyś były momenty, że nikt nic nie pisał, to teraz nie ma kiedy tego wszystkiego poczytać. Naprawdę szacunek za tą akcję. Zacieram ręce w oczekiwaniu na Polskiego Martina Fowlera.
Dzięki nowej pracy i nowo poznanemu koledze odkryłem, że można sobie ułatwić życie w firmie kupując własne licencje na oprogramowanie, którego używasz. Szczegóły opisze poniżej. Pomysł może jest kontrowersyjny trochę ale ma mnóstwo zalet.http://blogprogramisty.net/kupowanie-wlasnych-licencji-na-oprogramowanie/http://dotnetomaniak.pl/Data/Thumbnails/small_qBZptb0lvEeV63S8jB_P2A.pnghttps://dotnetomaniak.pl/Git-tutorial-jak-zaczac-z-Git-PoznajProgramowanieplGit tutorial - jak zacząć z Git - PoznajProgramowanie.pl2016-10-27T20:42:19Z<div><div><div style="float:right"><img alt ="" src="http://dotnetomaniak.pl/Data/Thumbnails/small_QBQVFUSjzESyhmCpcXX5Rg.png"/></div><div>Przedstawiam Ci przygotowany przeze mnie krótki Git tutorial. Skierowany jest on głównie do osób początkujących. Zapraszam do zapoznania się z tematem!
System kontroli wersji jest na dzień dzisiejszy standardowym narzędziem pracy każdego programisty. Rzeczą wymaganą jest biegła znajomość posługiwania się tym narzędziem, więc czym prędzej zapoznaj się z tym tematem!</div></div><div style="padding-top:4px"><a rev="vote-for" href="https://dotnetomaniak.pl/Git-tutorial-jak-zaczac-z-Git-PoznajProgramowaniepl"><img alt="Podbij ↑" src="https://dotnetomaniak.pl/image.axd?url=http%3a%2f%2fpoznajprogramowanie.pl%2fgit-tutorial-jak-zaczac-z-git%2f" style="border:0px"/></a></div></div>AdrianBystrekhttps://dotnetomaniak.pl/Users/OVypLamzHEejQV0ElEVgOA2016-11-06T08:17:11Zhttps://dotnetomaniak.pl/Git-tutorial-jak-zaczac-z-Git-PoznajProgramowaniepl12330Przedstawiam Ci przygotowany przeze mnie krótki Git tutorial. Skierowany jest on głównie do osób początkujących. Zapraszam do zapoznania się z tematem!
System kontroli wersji jest na dzień dzisiejszy standardowym narzędziem pracy każdego programisty. Rzeczą wymaganą jest biegła znajomość posługiwania się tym narzędziem, więc czym prędzej zapoznaj się z tym tematem!http://poznajprogramowanie.pl/git-tutorial-jak-zaczac-z-git/http://dotnetomaniak.pl/Data/Thumbnails/small_QBQVFUSjzESyhmCpcXX5Rg.png