Blog

TechEd Developers 2007 Barcelona - Day 5

November 14, 2007

The Joins Concurrency Library

I've listened to this podcast on DotNetRocks a while ago and I remember to be quite exited about this Microsoft Research project. The session at TechEd was pretty lame. Claudio Russo finished almost half an hour early. At least it gave me some time to pick up something nice for the kids in the shopping center across the street :-).

The Irresistible Forces and the Moveable Objects

Nice session from Pat Helland. At least, now I have some excuse when something isn't working as expected: i can say its the movable objects.

ASP.NET Model View Controller (MVC)

Great interactive session on the new ASP.NET MVC Framework for which the first bits will be available starting from the beginning of next month. Matt Gibbs did a great job explaining the advantages of this new framework and why it is so desperately needed.

Here are some random notes I've made during the session:

  • The ASP.NET MVC Framework will not replace WebForms in any way. WebForms is not going to disappear any time soon and will be enhanced in the future.
  • The ASP.NET MVC Framework will be running on .NET 3.5. Templates will be available for Visual Studio 2008.
  • ASP.NET MVC will probably ship with .NET 3.5 SP1.
  • With the first drop it will not be possible to use AJAX or any other client-side stuff. The ASP.NET is currently working on that and the result should be available in the next milestone.
  • Existing ASP.NET controls don't work yet as they make assumptions on the page lifecycle and ViewState.

There were a lot of questions from the audience as to why they should use this over WebForms. To me, this is crystal clear: testability. If you want to create maintainable and soluble applications with ASP.NET, then this is your path. Scott Guthrie started a series on the ASP.NET MVC Framework. I'll recommend you give it a read.

Deep Reflection - Things You Really Need to Know About Reflection 2.0

Nice closing session for the conference. Roy Osherove did his homework and showed some cool demos for generating code at runtime.

Some random notes I've made during the session:

  • There are two ways for generating code at runtime. The first one is using the CodeDOM. Think of it like a DSL for code. It has its advantages, but you get a steep learning curve and the resulting code is kind of verbose and very hard to read. The second option is Reflection.Emit. With this option you have to emit IL code. The OpCodes class provides with the necessary IL instructions.
  • .NET 2.0 introduced the DynamicMethod class. This makes runtime code generation a lot easier, plus it has the advantage that the generated code is garbage collected (which is not the case with Reflection.Emit) and that it is possible to skip visibility checks.
  • RunSharp makes it even more easier to generate code at runtime. You can download it here.
  • With Reflection.Emit it is possible to debug the generated code.

That was it folks. I enjoyed being at TechEd Barcelona. I actually learned something here and there. Lovely city and the weather was great.

PS: I'm blogging this in retrospect as I couldn't get the blogger administrator web site to run on the CommsNet PCs because they had  JavaScript turned off.

If you and your team want to learn more about how to write maintainable unit tests and get the most out of TDD practices, make sure to have look at our trainings and workshops or check out the books section. Feel free to reach out at infonull@nullprincipal-itnull.be.

Profile picture of Jan Van Ryswyck

Jan Van Ryswyck

Thank you for visiting my blog. I’m a professional software developer since Y2K. A blogger since Y2K+5. Provider of training and coaching in XP practices. Curator of the Awesome Talks list. Past organizer of the European Virtual ALT.NET meetings. Thinking and learning about all kinds of technologies since forever.

Comments

About

Thank you for visiting my website. I’m a professional software developer since Y2K. A blogger since Y2K+5. Author of Writing Maintainable Unit Tests. Provider of training and coaching in XP practices. Curator of the Awesome Talks list. Thinking and learning about all kinds of technologies since forever.

Contact information

(+32) 496 38 00 82

infonull@nullprincipal-itnull.be