[Mono-dev] XAML Parser

Miguel de Icaza miguel at novell.com
Tue Jan 26 14:17:05 EST 2010


>         Hi Miguel, I am strictly following the rule of not using any
>         of MS code or reflector. The way I started on it is,
>            1. First create all necessary class skeletons by looking at
>         MSDN
>            2. then implement test cases with mocks/stubs
>            3. then do implementation

This sounds about right.

The one are that is worth fine-tuning is that skeletons themselves are
not very useful, and when we get contributions for skeletons, it tends
to demotivate contributors that are looking for something fresh to do.

So I think the process is more like this:

	(a) Write skeleton for the class.
	(b) Write Unit tests on Windows (using NUnit) to 
	    explore the API, learn the API and use as a "reference".
	(c) Write the implementation for the class.
	(d) Go to step (a).

There are a handful of exceptions like enumeration values, interfaces
and classes that get stubbed out just to get things to build, but in
general, it is best to focus on the meaty parts, because those become a
solid foundation to build on.   

In the past when we got skeletons, those tended to discourage new
developers from taking over those classes.

>         I am also thinking to follow one more approach here as far as
>         System.Activities and System.Workflow.ComponentModel is
>         concerned, I can use Microsoft's System.Workflow.Runtime.*
>         classes (classes that host workflows) to host activities for
>         checking the implementation that is really working and
>         compatible with MS. I am not sure whether this approach is
>         allowed. Since I have both Windows and Ubuntu, this approach
>         is doable in my environment.

This makes perfect sense.

More information about the Mono-devel-list mailing list