WriteAsync .NET

Testing, coding, in that order.

MemoryChannel and concurrency

In a previous post, I described MemoryChannel and how I used TDD to implement it. After the 25th commit, 20 unit tests later, I had a fully functional but single-threaded implementation. Simply by inspection, I knew that this code would…

By Brian Rogers | 11 December, 2013 | async, concurrency | 5 Comments |
Read more

TDD + async: Introducing MemoryChannel

Can you use test-driven development and unit testing with asynchronous code? Yes, with a few caveats. Above all, unit tests should be deterministic and fast. This means you should stick to single-threaded workflows as much as possible and never sleep.…

By Brian Rogers | 9 December, 2013 | async, tdd | 9 Comments |
Read more

Initialize projects script

I have a preferred Visual Studio solution layout. It is basically as follows, using MyProj as a sample name: MyProj: Solution root. bin: All built binaries go here. external: External binary dependencies (e.g. unit test runners). source: Root of source…

By Brian Rogers | 6 December, 2013 | scripts | 1 Comment |
Read more

Async coding guidelines

Here are some basic guidelines for writing async C# code (.NET 4.5+). These are adapted from guidance I have given my colleagues and should be useful primarily to those new to Task, async/await, and the like. To keep things interesting,…

By Brian Rogers | 4 December, 2013 | async | No Comments |
Read more

HelloWorldAsync()

Hello and welcome to http://writeasync.net! My name is Brian Rogers and I’ve been a tester/developer in some professional capacity since 2001. On this blog I will be expounding on various technical topics that I don’t see covered much elsewhere —…

By Brian Rogers | 2 December, 2013 | meta | No Comments |
Read more
  • Next »
Copyright ©2025 WriteAsync .NET | Theme by: Theme Horse | Powered by: WordPress