We are going to create a “library” for creating any Action or Func from a bunch of bytes.
Reaktywowałem swojego bloga na nowo [https://teovincent.com/]. Blog skierowany jest do programistów, ale nie tylko. Znajdziesz tutaj również tematykę zarządzania, liderowania i rekrutacji. Menedżerowie wchodźcie do kategorii: OGARNIJ PRACĘ. Programistów zapraszam do kategorii: PROGRAMOWANIE, KONFERENCJE, HIPERŁĄCZE, KONKURS. Programowanie && !Programowanie Wykrzyknik „!” oznacza zaprzeczenie. Podwójny ampersand „&&” to operator, który zwraca wartość „prawda”, gdy oba jego argumenty zwraca...
Sztuka programowania 2497 dni, 12 godzin, 37 minut temu 70 źrodło rozwiń
Piotr Szymura software engineer, open source contributor, crypto/blockchain enthusiast, try hard guitarist, starcraft fan FollowWrocław Email Twitter LinkedIn GitHub Stackoverflow Wrapping callback hell with TaskCompletionSource Ever wanted to turn callback style async code to awaitable form? You might use TaskCompletionSource for it.classProgram{staticvoidMain(string[]args){Run();Console.ReadLine();}staticasyncTaskRun(){CallbackStyle...
Architektura 2502 dni, 18 godzin, 8 minut temu 72 źrodło rozwiń
JSON.NET to popularny standard używany w większości projektów .NET. Czy istnieją bardziej wydajne alternatywy serializacji do JSONa? Zachęcam do zapoznania się z perłą serializacji do tego formatu, Jil.
Sztuka programowania 2502 dni, 18 godzin, 8 minut temu 82 źrodło rozwiń
Czy zdarzyło Ci się pracować długo nad jakimś plikiem i wszystko stracić przez brak zapisania zmian? Czy to aplikacja się zawiesiła, czy może komputer. Dzięki mojej niewielkiej aplikacji autosaver ten problem zniknie.
Hoho po niemal miesiącu w końcu u mnie na blogu pojawiła się relacja z Code Europe. Opisałem moje wrażenia, wskazówki dla organizatorów. Postawiłem ważne pytanie czy warto? ... zapraszam
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 2531 dni, 15 godzin, 45 minut temu 427 źrodło rozwiń
Dzisiaj zajmiemy się trzecią, i jednocześnie ostatnią, z bibliotek które planowałem opisać w tej krótkiej serii. Będzie to DotNetSiemensPlcToolboxLibrary (uff – długa nazwa).
Today I would like to introduce you to the world of attributes that helps you skip some parts of code while debugging. Most of the C# programmers probably know them well, but I realized that only a few can tell the differences between them. So, ladies and gentlemen, let me introduce you the DebuggerStepThrough and DebuggerHidden.
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 2556 dni, 23 godziny, 19 minut temu 146 źrodło rozwiń
Dzisiaj opis kolejnej biblioteki do komunikacji ze sterownikami Siemens Simatic. Tym razem Snap7/Sharp7
[DebuggerTypeProxy] is very useful attribute when you have a class that inherits from another class and that one inherits from another one, and some of the classes contain collections of items and hundreds of properties that in fact are not important to you… Strictly speaking, when displaying class’ members while debugging makes you feel like quitting the job. [b]We decide how to display object while debugging[/b] Exactly! You can set a proxy that will inform debugger how you want a type to be displayed...
Po dłuższej przerwie dzisiaj ciąg dalszy cyklu o bibliotekach do komunikacji z PLC Siemens-a. Dzisiaj omówienie biblioteki s7netplus.
Chciałbym dziś napisać o jednej z metod poszerzania wiedzy. Od zawsze nazywało się to dla mnie The Morning Brew. Jak sam autor pisze: The Morning Brew is a daily .NET software development link blog published by Chris Alcock a software developer from the north west of England. Chris ma w tym doświadczenie, to już #2468 odcinek, pierwszy był 10 lat temu!
Chcemy rzucić wyjątkiem, gdy mamy przypadek nieobsłużony poprzez case’y. Na przykład gdy pojawiła się nowa wartość enuma Shape. throw EnumGuard.CreateMissingEnumException(nameof(shape), shape);
Sztuka programowania 2578 dni, 22 godziny, 35 minut temu 197 źrodło rozwiń
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...
Najbardziej popularnym Value Object jest Money. W tym przykładzie instancje możemy tworzyć tylko poprzez metode Create() (taka fabryka). Konstruktor jest prywatny. Pewnie dla tego przykładu lepiej mieć po prostu publiczny konstruktor z dwoma parametrami, ale mam wiele przykładów innych bardziej skomplikowanych Value Objects, gdzie podejście z prywatnym konstruktorem i kilkoma fabrykami walidującymi różne przypadki ma sens.
Sztuka programowania 2591 dni, 22 godziny, 33 minuty temu 138 źrodło rozwiń
Buduję właśnie nugeta z solucji, która ma ponad 20 projektów. Ok 10 z nich ma wylądować w paczce. Paczka ta jest silnikiem obliczeniowym i będzie konsumowana przez większy system wewnątrz firmy. Nuget będzie hostowany tylko wewnętrznie. Wygląda to tak ...
C# Attributes are very popular for ‘decorating’ assembly with some additional data, usually influencing on the application’s behavior or the way data are managed. You probably already used at least some of them – Obsolete, Serializable, Required, Display, MaxLength, RegularExpression, WebMethod are only a few of hundreds available in .Net world. What is more, you can write your own custom attribute and use it like a build-in one. I will write more about this in the next post. Right now, let’s focus o...
Sztuka programowania 2628 dni, 23 godziny, 36 minut temu 168 źrodło rozwiń
W poprzednim wpisie zajęliśmy się podstawową konfiguracją Team City, teraz nadszedł czas na Octopus’a.