Last week, I attended a session @ VDNUG, detailing WCF (Windows Communication Foundation) within .NET 3.0.
I was pretty keen to hear him speak – and ended up learning a few things !
WCF is so much more than just extended Web Services or Remoting – it’s a “new C#” as Juval was stating. Simply need to add a few attributes to a C# class, and you have many, many increased capabilities – useful in many areas.
Logging, instrumentation (PerfMon), tracing, transactions, thread concurrent management, queueing, security, and so on.
So many aspects of Service Oriented Architectural design that can be problematic – including threading and asynchronous programming.
He demonstrated how the default behaviour of WCF was sooo useful – by adding an attribute, so override the default behaviour (no thread management) – and had cross-thread exception.
I’m pretty sure the new DuoCore processors, and simply having the need for asynch and disconnected systems will be ehnaced greatly with WCF.
A question was asked about performance – and he admitted that YES – it’s slower than non-WCF code, but the productivity for developers is so much better.
He drew an analogy to the C++ vs COM era – slower, but much easier & reduced time/effort. And then COM vs .NET – same again – slower, but much easier – and now with faster processors.
It’s always a trade-off – performance vs productivity (as he said) – and you will most often (be forced to) choose the productivity aspect. Yep – I agree.
Another question was asked about if the same could be achieved in VB (as he’d been calling it “the new C#“) – his answer was “Yes – now go write your specs with these crayons”
I had to laugh – and only wish that other back-yard coder’s & tinker’ers were there to hear that one ! “OK then, so it’s the new .NET, yes ?!!? Not just C#.”
Seems to me that only VB dev’ers seem to continue the battle for VB vs C# – the rest of us just “get on it with the job at hand”. And not whinge about the differences (!)
Sorry to those who missed it – I have a demo CD with lots of examples & eBook (sample chapter of his new book). I will hopefully delve more into those, and blog some more.