design and build your application as a .NET client application, then assign the
portions of the application to run on the server and the client tiers late in
the development process. The compiler creates cross-browser JavaScript for the
client tier, web services for the server tier, and communication, serialization,
synchronization, security, and other boilerplate code to tie the tiers together.