dotnetomaniak.pl - Artykuły z tagiem programming

Today I'm trying to give you some tips on approaching an unknown codebase. How do you manage to quickly find yourself in new code you don't know? How do you manage to join a new project?

How to start working with an unknown codebase? - CodeJourney.net

Sztuka programowania 11 dni, 7 godzin, 1 minutę temu dsibinski 105 źrodło rozwiń

Today I will write about the way variance influences type checking in C#. Yes, the fact that one type can be passed to a generic method that requires another type, depends on these 2 small keywords we write before ‘T’ (or whatever 😉) in interface header.

Cannot implicitly convert type ‘Abc’ to ‘IAbc’ – Contravariance vs Covariance – part 2. – A Girl Among Geeks

Sztuka programowania 132 dni, 7 godzin, 19 minut temu AGirlAmongGeeks 89 źrodło rozwiń

Typy takie jak List<T> czy Dictionary<T,K> wydają się niewinne. Ostatecznie, pochodzą przecież z biblioteki standardowej (BCL) samego frameworka. Czy warto używać ich w API Twojej biblioteki? Czy są jakieś zagrożenia związane z ich użyciem? Zapraszam do lektury

Źródło: blog.scooletz.com
Dziel się z innymi:
These other types and your API | Szymon Kulec `Scooletz`

Sztuka programowania 397 dni, 5 godzin, 29 minut temu Scooletz 74 źrodło rozwiń

Lubimy kategorie. Podobnie w historii, epoki ułatwiają zrozumienie i przypisanie poszczególnych zdarzeń do okresów. Co z epokami w programowaniu? Czy mają jakieś znaczenie? Czy mogą się do czegoś przydać? Zapraszam do epokowego artykułu.

Źródło: blog.scooletz.com
Dziel się z innymi:
Epoch based programming

Reading application’s logs is not a big fun but let’s be honest – it is part of our job and we will not avoid it. So why don’t we make it slightly more pleasant? Stack traces explorers to the rescue! In fact, I didn’t know about the existence of stack trace explorers till the day I copied a part of app’s log to my clipboard with the plan to send it to the colleague. But when I opened Visual Studio a magic happened, fairytales flew on my desk and opened a new tab in my IDE.

Painkiller for reading logs – Stack Trace Explorer – A Girl Among Geeks

Narzędzia 413 dni, 6 godzin, 4 minuty temu AGirlAmongGeeks 52 źrodło rozwiń

New post in .NET Internals series - this time about Garbage Collection and memory allocation in .NET. Let's start GC topics! :)

Źródło: www.dsibinski.pl
Dziel się z innymi:
[.NET Internals 04] What is Garbage Collection? Memory allocation in .NET – Dawid’s blog

Sztuka programowania 424 dni, 3 godziny, 18 minut temu dsibinski 72 źrodło rozwiń

2nd post form my ".NET Internals" series. Today you'll see how stack and heap data structures are organized and used. You'll also get to know where value and reference types are stored in memory. Come and enjoy! :)

Źródło: www.dsibinski.pl
Dziel się z innymi:
[.NET Internals 02] Stack and heap –  .NET data structures – Dawid’s blog

Sztuka programowania 438 dni, 5 godzin, 59 minut temu dsibinski 92 źrodło rozwiń

First, introductory post to my new ".NET Internals" series. Next posts will be published each Wednesday from today, so I invite you all to follow the series :) First post is the introduction to basic concepts of memory structure.

[.NET Internals 01] Basics of memory structure – Dawid’s blog

Sztuka programowania 445 dni, 5 godzin, 57 minut temu dsibinski 109 źrodło rozwiń

Have you ever wondered why blue screens of death happen so rarely, nowadays? Of course, we can thank Microsoft for this but the way they fixed this problem is not so obvious! According to Marino Posadas (and his book Mastering C# and .Net Framework) back in 2010, Microsoft made an analysis of this topic and they came to the conclusion that the 90% (wow!) of the blue screens were caused by drivers! So, Microsoft made manufacturers to follow the Hardware Compatibility List. That somehow solved most of...

C# stuff nobody told you – delegate is a class! And there is a good reason for that! – A Girl Among Geeks

Sztuka programowania 580 dni, 3 godziny, 42 minuty temu AGirlAmongGeeks 186 ź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?

Dziel się z innymi:
C# stuff nobody told you – enum is a b*tch! – A Girl Among Geeks

Sztuka programowania 635 dni, 23 godziny, 2 minuty temu AGirlAmongGeeks 414 źrodło rozwiń

'You mean the cheap crXp? This is what I heard, when I ask a colleague in London about a local souvenir shop. Recently it recalled it when thinking about software quality and technical debt. Interested in SaCC? Read along!

Źródło: blog.scooletz.com
Dziel się z innymi:
Software as Cheap Cr*p | Szymon Kulec `Scooletz`

Sztuka programowania 701 dni, 5 godzin, 47 minut temu Scooletz 75 źrodło rozwiń

Recently, I was tricked by Roslyn, today by Json.NET. My bloody luck ;) Let's look at the following two very simple classes. Class A has one readonly property and I had to define a special constructor to allow Json.NET to set this property. B is also simple. It has one property, this time of type A with some default value...

Tagi: .Net, programming
Dziel się z innymi:
Json.net also tricked me | Michał Komorowski

If you’re looking for a simple service for monitoring your MongoDB (things like opening a connection to the database or executing a query and processing the results), then you might find interesting a new type of the watcher added to the Sentry. The MongoDB watcher uses the C# MongoDB Driver under the hood but it’s been implemented in a way, that it’s possible to provide any driver that you’d like. In this post I’ll present how to use it and why it’s been implemented this way instead of another one.

[EN] Sentry – the MongoDB watcher | Piotr Gankiewicz

Daj się poznać 2016 1288 dni, 5 godzin, 57 minut temu spetz 27 źrodło rozwiń

Behavior-driven development (BDD) is a process of developing the software that has evolved from the TDD (test-driven development). We can think of a BDD such as the feature driven approach to the TDD. The main advantage of the BDD over the TDD is the way the tests are being written, in a form of the story that can be understood both by the developers and the customers. In short, we can simply state that the BDD is the TDD done right – it makes use of the so called ubiquitous language which is the core pa...

[EN] BDD with MSpec | Piotr Gankiewicz

Sztuka programowania 1299 dni, 16 godzin, 54 minuty temu spetz 62 źrodło rozwiń

The new type of the watcher for the API monitoring is already available. Actually, it has much in common with the website watcher (very akin configuration, and under the hood uses the HttpClient as well), however it does serve a different purpose, which is making the request to the API and validating its response, whereas the website watcher basically pings the given url (well, it can validate its response too), and does not really care about any other HTTP method different than GET. In this POST (did yo...

[EN] Sentry – the API watcher | Piotr Gankiewicz

Daj się poznać 2016 1302 dni, 21 godzin, 54 minuty temu spetz 63 źrodło rozwiń

Many of the programmers falls into the trap of creating too many unnecessary abstractions in code, that may introduce even more chaos and maintenance issues, instead of simplifying overall project structure and providing some real benefit. One of such abstractions, that have been discussed countless number of times, is the (one and only) repository pattern.

Dziel się z innymi:
[EN] Repository, so we meet again. | Piotr Gankiewicz

Architektura 1314 dni, 14 godzin, 48 minut temu spetz 230 źrodło rozwiń

Dodanie animacji w WPF w stylu funkcyjnym.

Dziel się z innymi:
Programowanie funkcyjne w WPF

Sztuka programowania 2637 dni, 1 godzinę, 7 minut temu dit2006 225 źrodło rozwiń

Sklep z gadzetami
Dotnetos Conference

Najaktywniejsi

1
(32 891,59)
2
(32 816,53)
3
(27 178,29)
4
(21 178,88)
5
(20 336,33)
6
(13 018,14)
7
(10 510,13)
8
(9 775,28)
9
(8 358,27)
10
(6 822,96)
11
(6 214,22)
12
(5 393,84)
13
(4 097,38)
14
(3 994,63)
15
(3 863,06)
16
(3 599,49)
17
(3 448,35)
18
(3 318,39)
19
(3 224,66)
20
(3 105,41)