Druga z 3 części historii dotyczącej zastosowania w projekcie AutoMappera.
Sztuka programowania 2519 dni, 12 godzin, 57 minut temu 120 źrodło rozwiń
In my last post, I wrote about great HTTP client for .NET Core called RestEase and I showed how to use it as a simple proxy between API Gateway and microservice. Today I’ll present how this library can also simplify writing part of integration tests. Unit test vs integration test I assume that for some of you the term „integration test” may sounds odd, therefore I’d like to explain it first to avoid the possible confusion with a unit test later in this artic...
Sztuka programowania 2524 dni, 13 godzin, 1 minutę temu 152 źrodło rozwiń
Czasem robiąc code review rodzą się wątpliwości, czy dany kawałek kodu w ogóle działa albo czy przypadkiem nie psuje reszty systemu. Najlepiej w takiej sytuacji przed zamknięciem pull requesta po prostu to przetestować, ale do tego trzeba ściągnąć najnowszą wersję kodu, zbudować i uruchomić projekt a wcześniej odłożyć swoje zmiany na bok. Sam wiem po sobie, że często z tego rezygnowałem. Można jednak rozszerzyć swój proces CI/CD aby build server sam robił deploy każdego pull request’u na odrębne środowisko.
Sztuka programowania 2525 dni, 12 godzin, 18 minut temu 67 źrodło rozwiń
The third step in CQRS journey. It covers: - Domain events - publishing and handling - Building read model synchronously - Database transactions per command / request - Recreation of the read model
Sztuka programowania 2531 dni, 12 godzin, 35 minut temu 172 źrodło rozwiń
Własna tożsamość to główny wyróżnik Encji w DDD. Jest ona wyrażana przez Id obiektu, którym w praktyce najczęściej okazuje się … int z bazy danych. Nie jest to najlepsze rozwiązanie, skoro w DDD chodzi o modelowanie biznesu. Postaram się przedstawić alternatywne podejście i jego implementację, która pozwala w możliwie bezbolesny sposób wprowadzić biznesowe identyfikatory do naszych encji.
Sztuka programowania 2532 dni, 14 godzin, 21 minut temu 228 źrodło rozwiń
New year, new me… Just kidding, no running or yoga plans, but I decided to have a (temporary) break with ‘C# attributes you should know’ series and start with a brand new one – C# facts that somehow surprised me. For the first article, I will show you how (friendly looking, always helpful, good guy...) enum can become an asshole. An asshole who will steal your precious time! One enum value passed to a method, other value received! What’s goin’ on?
Sztuka programowania 2533 dni, 6 godzin, 6 minut temu 427 źrodło rozwiń
Programiści często w swojej pracy muszą estymować czas, który będzie potrzebny do wykonania jakieś nowej funkcjonalności bądź muszą powiedzieć ile czasu zajmie im naprawa błędu, spowodowanego przez innego programistę. Sam miałem problem, że moje przybliżone wartości nie były wcale przybliżone do rzeczywistości. Internet radzi, aby programista swoją szacunkową wartość pomnożył razy 2, 3 lub 10. Jednak i to nie znalazło u mnie wystarczającej dokładności, którą oczekuję...
Sztuka programowania 2537 dni, 13 godzin, 9 minut temu 178 źrodło rozwiń
Code Review 10 linii kodu to potencjalne miejsce na 10 uchybień, natomiast 500 linii kodu wygląda OK!? Kilka słów o tym jak usprawnić Code Review.
Sztuka programowania 2543 dni, 12 godzin, 45 minut temu 160 źrodło rozwiń
W aplikacji będącej aktualnie moim głównym zajęciem piszę oraz uczę się testów jednostkowych. Dlatego postanowiłem, że co nieco o nich napiszę jako wstępniak do być może późniejszych wpisów na ten temat.
Sztuka programowania 2543 dni, 12 godzin, 45 minut temu 189 źrodło rozwiń
Mamy 2017 rok, Visual Studio 2017, .net core 2.0 i .net standard 2.0, jest więc to znakomity moment by przejść ze starego formatu plików cs/fsproj w naszych solucjach na nowy. Post opisuje plusy, minusy i problemy wynikające z takiej migracji. Zachęcam do lektury :)
Sztuka programowania 2552 dni, 12 godzin, 20 minut temu 170 źrodło rozwiń
Have you heard about this new library called ABC? If not, you don’t know what you’re missing! It enables your app to do all these things! I’ll send you the links to tutorial so that you can become a fan as well. Have I tested it thoroughly? Yeah, I clicked through demo. And got it working on my dev machine. What? What do you mean by handling a moderate or high traffic? I don’t get it...
Sztuka programowania 2552 dni, 12 godzin, 20 minut temu 50 źrodło rozwiń
Posted on by krystiankolad Dziś będzie krótko. Ostatnio podczas pracy nad aplikacją webową na studia mieliśmy mały problem z odpytywaniem naszego api, mianowicie nie udało nam się zmapować obiektu zwracanego z naszego api na obiekt po stronie Angulara. Powód ten okazał się bardzo prosty: mimo, iż properties naszego modelu powinno zostać zserializowane na nazwy rozpoczynające się z dużej litery, zostały zserializowane na małe. Po mały researchu okazało się, iż w ASP.Net Core serializacja domyślnie tworzy...
Sztuka programowania 2553 dni, 7 godzin, 6 minut temu 134 źrodło rozwiń
I’ve recently written an article about managing TODOs in the codebase with TODOExplorer. I’ve also proposed an idea of introducing code snippet for TODOs which helps to keep all TODOs in predefined format as well as provides more information about delayed task (author, receiver, date, issue tracker id). This article was a result of a few discussions with my programmer-colleagues and I hoped that that idea of TODOs snippet was worth sharing (I’ve been using it in my project for a while). After publishing ...
Sztuka programowania 2558 dni, 13 godzin, 40 minut temu 100 źrodło rozwiń
Zawsze przychodzi ten moment gdy trzeba rozwiązać buga na produkcji i jedyne co mamy to logi aplikacji. Okazuje się oczywiście, że nie ma wszystkich informacji w tych logach. Nie ma nawet całkiem podstawowych informacji...
Sztuka programowania 2558 dni, 13 godzin, 40 minut temu 146 źrodło rozwiń
Moje motto na temat Unit Testów i wielu innych rzeczy: Less Unit Testing Dogma More Unit Testing Karma Nie ma co pisać wstępów, trzeba przeczytać krótkiego i zwięzłego PDFa The Way of Testivus
Sztuka programowania 2559 dni, 12 godzin, 35 minut temu 90 źrodło rozwiń
Recently, I had quite an interesting discussion about var keyword in C#. Basically, my interlocutor tried to convince me that using var we drastically reduce code readability, so we should only use that together with anonymous types. He also mentioned performance and that some operations cannot be done using implicit typing. Well, if you’ve been reading my blog for some time, you’ve probably spotted that I’m a big fan of vars, and I put them every time it’s possible. B...
Sztuka programowania 2559 dni, 12 godzin, 35 minut temu 272 źrodło rozwiń
Opiszę pomysł, który zobaczyłem w projekcie i bardzo mi się spodobał. Nie będę opisywał możliwych modyfikacji, które sobie wyobrażam. Rozumiem też, że będąc w innym projekcie (Context is King!) musiałbym go dostosować. Gdy piszemy kod to zazwyczaj jesteśmy w „Debug”, i w takim trybie nie chcemy dostawać Errorów do StyleCopa. Powodów może być wiele: kod experymentalny, kod przeklejony z internetu, z poprzedniego projektu, itp. Albo po prostu każdy ma inną wrażliwość na to jak formatować kod. I lokalnie n...
Sztuka programowania 2561 dni, 12 godzin, 52 minuty temu 46 źrodło rozwiń
Specjalista powinien brać odpowiedzialność za tworzone oprogramowanie, jak jednak poradzić sobie w sytuacji kiedy ciągle pracuje się pod presją czasu? Jak równoważyć jakość względem czasu i czy w ogóle równoważyć?
Sztuka programowania 2563 dni, 13 godzin, 28 minut temu 161 źrodło rozwiń
Zachęcam do oglądnięcia mojego Lightning Talka pod tytułem "Nic nie wiem". Opowiedziałem jak moje doświadczenie w projektach pokazało, że warto mniej wiedzieć i zakładać a więcej pytać i starać się zrozumieć czego chce od nas klient.
Sztuka programowania 2564 dni, 13 godzin, 55 minut temu 68 źrodło rozwiń
I have met and talked to a lot of developers in my life. I went through the whole lifecycle of software production many times. People have changed, but the projects that have been implemented, are happily still running in production (at least most of them, let’s say :)). What I have noticed during this period of over 10 years working with the software and people producing it, is that many developers have quite a strange approach to work. In IT there’s this request type called “Fire and forget”, ...
Sztuka programowania 2566 dni, 13 godzin, 27 minut temu 56 źrodło rozwiń