Thursday, February 23, 2006

System.Console in .NET 2.0

I like to use the Console to do small test applications and it bothered me how limited it is. E.g., I have not been able to control where to place the text in the console window. In .NET 2.0 the Console class has now been much updated, e.g., there is the great new function SetCursorPosition() :)

Another missing functionality in the Console 1.0 class is a non-blocking Peak(). This is useful as a condition in a while-loop (instead of spawning a second thread that blocks on Peak() or Read()). In version 2.0 there is now the KeyAvailable property that (supposedly) serves this purpose.

This is just to mention two of the many additions to the Control class.

Tuesday, February 21, 2006

Categorization of tests

I thought the following categorization of tests sufficient and complete:

"I believe that the traditional testing terms; unit tests, integration tests and system tests have become outdated. Instead I prefer the terms developer tests, functional tests and non-functional tests. Non-functional tests are things like performance testing, functional tests are tests that the customer cares about like use case tests or business transaction tests, and developer tests are everything else that the developer needs to test to prove to herself that the code is correct."
- Agile Development Checklist

Monday, February 06, 2006

C# 3.0

I read (skimmed through) Don Box's and Anders Hejlsberg's article on LINQ, also watched a short demonstration on DLINQ to become acquainted with next version of C#. One thing struck me and that is that Microsoft has been advocating the use of stored procedures rather than inline queries, but the DLINQ presentation was all about how to write compile-time-checked inline queries.