Jakiś czas temu pisałem o testach w kontekście API (tutaj). W tym poście postaram się opisać jak napisać podobne testy, ale gdy nasza aplikacja komunikuje się poprzez kolejkę. Pokaże to z wykorzystaniem biblioteki MassTransit.
This video is the start of a brand-new video series about JIT compilation in C# called: "What the JIT". This time we're going to look at simple integer arithmetic like division and multiplication and how JIT is able to optimize that.
Sztuka programowania 938 dni, 23 godziny, 53 minuty temu 25 źrodło rozwiń
This video talks about the "Skip" method, and differences in implementation between dotnet frameworks. Also, we will try to implement a less flexible but faster version of the "Skip" method. Enjoy. 🙂
Sztuka programowania 947 dni temu 30 źrodło rozwiń
Sztuka programowania 950 dni, 23 godziny, 48 minut temu 51 źrodło rozwiń
We are already in the second half of 2020 and a lot of books related to .NET technology have been published. I decided to collect these positions in one place for you. I will mention here some of them that get the best reviews and seem worth reading in my opinion.
This video corrects a couple of mistakes that were made in my previous video called "C# LINQ Performance Tips #1". We're talking about structs vs classes in LINQ and why losing concrete type information is bad, there's also a bit of VSD but it's very vague and generic so the more specific video is needed, I just wanted to tell you that it exists :) and it's important. Enjoy.
Sztuka programowania 953 dni, 21 godzin, 55 minut temu 34 źrodło rozwiń
This video will show you some of the performance and allocation problems that you might encounter when writing LINQ expressions we will also see that an expression you see is not necessarily, what you get. LINQ is not all bad and we will show you an example where LINQ absolutely rocks! This video mentions examples found in my previous video: https://youtu.be/ahnaIdQMoYw Enjoy.
Sztuka programowania 958 dni, 31 minut temu 95 źrodło rozwiń
C# 9.0 jest już wspierany przez LINQPad. Aplikacja pozwala podejrzeć IL code oraz przetestować nowe funkcjonalności.
Sztuka programowania 960 dni, 27 minut temu 100 źrodło rozwiń
This video will show you some of the performance and allocation problems that you might encounter when writing LINQ expressions and offer a couple of solutions on how to solve them. LINQ Links: ♦ https://github.com/NetFabric/LinqBenchmarks ♦ https://github.com/NetFabric/NetFabric.Hyperlinq
Sztuka programowania 960 dni, 23 godziny, 30 minut temu 55 źrodło rozwiń
A couple of tricks which simplify database access code while using Dapper library.
Bazy danych i XML 967 dni, 21 godzin, 15 minut temu 130 źrodło rozwiń
Creating music app using azure functions
There’s a certain set of special method signatures in C# which have particular support on the language level. Methods with those signatures allow for using a special syntax which has several benefits. For example, we can use them to simplify our code or create DSL to express a solution to our domain-specific problem in a much cleaner way. I came across those methods in different places, so I decided to create a blog post to summarize all my discoveries on this subject.
Sztuka programowania 1000 dni, 23 godziny, 1 minutę temu 203 źrodło rozwiń
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 ...
This video is an introduction to bit hacks; we're going to visualize bit hack expressions and learn how to construct and apply them. This video is a direct response to a previous video about bit hacks (https://youtu.be/OPFJUpdCq0I) that was too complicated to an introduction, so this video is here to fill this need. I also have an article about the same topic that goes into more detail about the examples presented here, plus it contains a more bit hacks. https://leveluppp.ghost.io/bit-hacks-in-c/ Enj...
Sztuka programowania 1003 dni, 1 minutę temu 22 źrodło rozwiń
Today, I will introduce some changes in version 5.0 and present how to update the version in the project from version 3.1 to 5.0.
How to keep two different types in synchronization using roslyn analyzers.
CQRS is a simple pattern that strictly segregates the responsibility of handling command input into an autonomous system from the responsibility of handling side-effect-free query/read access on the same system. If you are familiar with Domain-Driven Design, you’ve most likely heard about, Command-Query Responsibility Segregation (CQRS). Though the CQRS pattern is well-known, there are still a lot of misconceptions around this pattern, especially when it comes to applying it in real-world software proje...
Sztuka programowania 1054 dni, 23 godziny, 53 minuty temu 96 źrodło rozwiń
W języku c# nie tylko możemy pisać obiektowo ale również funkcyjnie. W tym artykule poznamy podstawowe zagadnienia funkcyjne w c#, dowiemy się jak możemy łączyć ze sobą funkcje (i po co to robić) oraz jak pracować efektywnie z kolekcjami. Czas poznać inne sposoby rozwiązywania problemów.
Sztuka programowania 1075 dni, 23 godziny, 37 minut temu 116 źrodło rozwiń
Gdy tworzymy jakieś API dobrze jest sprawdzić, czy ono działa. Po każdej zmianie albo dodaniu nowego punktu wejścia (endpoint) powinniśmy przetestować, czy wszystko jest ok. Możemy to zrobić uruchamiając aplikację i ręcznie wszystko sprawdzając, jednakże na dłuższą metę jest to bardzo czasochłonne. Dlatego warto utworzyć osobny projekt, w którym stworzymy testy sprawdzające czy nasze API działa poprawnie. W kilku punktach postaram się opisać jak u mnie z reguły wygląda taki projekt z testami API.
Ostatnio pisałam o podstawach Cake. Dzisiaj czas na opis nowego projektu wykorzystującego Cake do uruchamiania skryptów np. az-cli. Stworzyłam na GitHubie specjalne repozytorium, z którego możecie korzystać.