Previous month:
May 2004
Next month:
July 2004

June 2004

Professional C# 3rd Edition

Yesterday I've received my copies of Professional C# 3rd Edition. This book will also be available at TechEd Europe!

It's not only an update for .NET 1.1, now the book has 32 chapters.

The chapters:

  • The C# Language
    • .NET Architecture
    • C# Basics
    • Objects & Types
    • Inheritance
    • Operators and Casts
    • Delegates and Events
    • Memory Management and Pointers
    • Strings and Regular Expressions
    • Collections, Reflection
    • Errors and Exceptions
  • The .NET Environment
    • Visual Studio .NET
    • Assemblies
    • .NET Security
    • Threading
    • .NET Remoting
    • Localization
    • Deployment
  • Windows Forms
    • Windows Forms
    • Graphics with GDI+
  • Data
    • Data Access with .NET
    • Viewing .NET Data
    • Manipulating XML
    • Working with the Active Directory
  • Web Programming
    • ASP.NET Pages
    • Web Services
    • User Controls and Custom Controls
  • Interop
    • COM Interoperability
    • Enterprise Services
  • Windows Base Services
    • File and Registry Operations
    • Accessing the Internet
    • Windows Services

If you don't attend TechEd (or you don't want to carry 1400 pages), here is the link to Amazon.



My Schedule for TechEd Europe

My schedule at TechEd Europe:

Tuesday: 18:15-19:30 [CHT010] Design Choices in Distributed Applications

There are many choices with the design of distributed solutions: should I use a DataReader, or the DataSet? Should the communication to the components be done by using .NET Remoting or ASP.NET Web Services? Or the old protocol DCOM?  For the user interface, what are the advantages of using Windows Forms compared to ASP.NET?  There is not a clear choice that you should always prefer one technology to another one. Every technology has advantages and disadvantages that will be discussed here, so you can select the technologies that fit best for your solutions.

Friday: 16:15-17:30 [DEV404] Creating a Klingon Culture - More about Globalization and Resource Management

.NET has great built-in support to internationalize and globalize applications. More than that, .NET allows extending the localization support. This session demonstrates how the localization support can be extended using the Klingon culture. You will see how to adapt a calendar, create a custom resource reader to read resources from the database, define a custom format output for your classes, and more. You can use the techniques shown here to create a new culture that is not part of the framework, and create sub-cultures for small local regions. Looking at how to extend the Framework you will also see the relationships of the different classes so you can work with globalization and resource management very efficiently. This session also covers .NET 2.0 features for globalization and localization.

Here is the schedule of the Thinktecture sessions (including Ingo and Christian).

See you there!


European VB.NET Team Tour

The VB.NET Team makes a tour around Europe, presentations for .NET User Groups.

Things you didn't know you could do with VB: 

This hour-long presentation will take you through new tools and development areas for using your existing Visual Basic .NET 2003 skills.  Topics covered will include the new Visual Basic Power Pack, development for the Tablet PC and building Office applications with the Microsoft Visual Studio Tools for the Microsoft Office System.

An Introduction to Visual Basic 2005:

Come see the new features coming in Visual Basic 2005.  We'll take a look at new features such as My, new deployment technology with ClickOnce, new debugging tools including the return of Edit and Continue, and much more.  This is a chance to see the technology while it's still in production from the team thats building it

The tour dates:

Vienna, Austria July 5, 2004 .NET User Group Austria
London, UK July 5, 2004 Visual Basic Usergroup
Munich, Germany July 6, 2004 .NET User Group Bayern, Germany
Porto, Portugal July 7, 2004 Comunidade .NET do ISEP/IPP
Milan, Italy July 8, 2004 UGIdotNET
Vic, Spain July 8, 2004 Spain .NET
Paris, France July 12, 2004
Zagreb, Croatia July 14, 2004 SQL Server Developers User Group
Zurich, Switzerland July 15, 2004 .NET Managed User Group of Switzerland
Vevey, Switzerland July 16, 2004 .NET Managed User Group of Switzerland


C++ Decisions

With C++ we have to decide between many different classes with very similar functionality.

  • CComVariant, _variant_t, COleVariant, VARIANT*
  • _com_ptr_t, CComPtr, CComQIPtr, or no smart pointers
  • CString, CAtlString, string, char*
  • CArray, CList, vector
  • ...

Some of these options have their origins in the history. COleVariant was defined with the MFC at a time when "OLE" was modern. MFC was designed when C++ templates didn't exist. ATL was designed for small & fast components - using templates extensively. CAtlString is a string class that could be used without MFC-overhead.

Starting with Visual Studio 2002 many of the old MFC classes had been redesigned, e.g. CString class was redesigned as a template class independent from MFC, so there's no problem using it without MFC.

There are still many options, and sometimes features are needed from the other class.

I like the .NET way of adding new functionality :-)


.NET Compact Framework Programming with C#

A few days ago I received the new book ".NET Compact Framework Programming with C#" by Paul Yao and David Durant. This 1400 pages book covers a wide range of the .NET Framework - with the view from the compact devices. Differences from the CF to the desktop .NET Framework are always mentioned, e.g. with garbage collection, the CF does not have multiple generations.

The main parts of this book are

  • Foundations
    • Architecture, Platform Invoke...
  • Building the User Interface
    • Forms, Mouse/Keyboard Input, Controls, Data Binding
  • Managing Device Data
    • Smart-Device Data Storage, File I/O, Registry, ADO.NET, Synchronization, Remote API
  • Creating Graphical Output
    • Graphics, Text/Fonts, Printing
  • Appendixes

All what's needed for Compact Framework programming!

Here is the link to Amazon: