Ivan Krivyakov's Blog

Premature optimization is the root of all evil

March 23, 2008

More on CAB Dependency Injection

In the previous post I covered why CAB dependency injection is limited. Now let’s see why it is entangled with other stuff. There are several things I want to mention here.

First, in order to use CAB dependency injection, you will need a work item. Besides being the thing that knows how to build objects, work item is, well, everything. It can be run, it can be activated, it has “state”, and “status”, it can be saved, loaded, and the rumor goes, it corresponds to a use case.
[read more...]

CAB Dependency Injection

I am currently working on a CAB-based project, and I must tell you I am very disappointed in CAB IoC capabilities. Its IoC functionality is a) limited and b) intermingled with other stuff, violating the single responsibility principle.

Why is CAB IoC limited? [read more...]

March 1, 2008

Framework Design Guidelines Book – Part V

C# coding style conventions

I like how the main body of the book is divided into 9 chapters, and Chapter 9 is followed by Chapter A. Some would consider it an appendix, others – a sequential hexadecimal numbering. Pretty neat.

As for the coding conventions, they don’t match my coding conventions, and therefore of course I don’t like them. I support or at least don’t mind most of the conventions specified, but there are some I specifically don’t accept. For starters, the curly braces are put like in Java:

[read more...]

Framework Design Guidelines Book – Part IV

Common Design Patterns

A number of “design patterns” are described in this section. I put the words “design patterns” in quotation marks, because the patterns are not described in a standard manner established by the GoF book.
[read more...]