OT: help an old fart learn new (web) tricks

OT: help an old fart learn new (web) tricks

Old forum URL: forums.lhotka.net/forums/t/5803.aspx


matt tag posted on Friday, November 14, 2008

I've been stuck in WinForms for the past several years.  I'm a CSLA junkie and all my major apps (and even many of my minor apps) have a CSLA business obj library. 

I always hated ASP and ASP.NET development (way too cumbersome), but it appears that lots of new Microsoft technology exists for web development.  Problem is, I know less than nothing about this stuff.

Has Microsoft introduced an easy way to develop for the web yet?


cliffordru replied on Friday, November 14, 2008

Hi Matt, if you are familiar with WinForms, you may find ASP.NET web forms to be a little "easier" to learn opposed to more traditional web development as it hides some of the things you typically need to consider when building a web application. 

Since you are already familiar with CSLA, if you read Rocky's chapter on implementing project tracker in ASP.NET and review the project tracker code, this will give you a real nice start on how to cleanly implement CSLA in ASP.NET forms.  Mainly you are just wiring the Business Objects to the UI and doing data binding.

Microsoft is releasing a new web MVC framework that will provide more of a traditional web development experience, giving the developer more control (and potentially more work to do) to implement web applications.  It does not have abstractions such as viewstate, etc..  There is a post with an example CSLA implementation here:

http://forums.lhotka.net/forums/thread/24785.aspx

Finally, you can consider Silverlight...this would allow you to leverage some of your WinForms skills for the web, but is does have a bit of a learning curve to it.  Rocky and his team have done a lot of work in this area and the CSLA implementation for Silverlight would save you a lot of time.

In general I would recommend if you want to get into web development to learn some of the basics around the HTTP protocol, the tiers involved, and the stateless nature of the web.   To do web development well, it really is important that you learn and embrace these concepts.

Hope that helps...

matt tag replied on Friday, November 14, 2008

thanks for the info.  How does WPF fit into all of this?  Since I made my original post, I started reading up on WPF, which looks promising for web development.  Is it true that WPF web development is much simpler than ASP.NET?

As for MVC, this looks even newer. Is the MVC Framework newer than WPF?  Does MVC replace WPF?

too many acronyms, head exploding...

dlambert replied on Friday, November 14, 2008

WPF and SilverLight are closely related to one another.  Both use a markup language called XAML, and both are vector-based, so they're scalable and generally pretty nice-looking.

In general, WPF apps are meant as WinForm replacements, and SilverLight is meant for browser-based apps.  You'll also see SilverLight start to show up in "widget-like" settings like Mesh.

MVC, on the other hand, is a UI framework that tries to manage the organization of all the stuff in your site such that you've got distinct "Model", "View" and "Controller" components.  It's mainly being targeted at ASP.Net development.  I know there are some people looking at grafting these together, but I'm not sure it's a match made in heaven.

I guess if I had to boil this down as simply as I could, I'd recommend WPF for a next-gen Windows app, SilverLight for a next-gen web app, and MVC for a large "conventional" ASP.Net app.

dlambert replied on Friday, November 14, 2008

I have a feeling this is going to be one of those "it's in the eye of the beholder" topics.  There are a whole bunch of new options (like, recently), but my experience is that lots of options can be really bewildering, which isn't really compatible with "easy".

My suggestion would be to look through one or more of the sample apps in the CSLA distribution, and see if any of them strike you as easier than any others.  Here are some quick thoughts on a few of the shiny new toys coming out of the general Redmond direction:
I'm sure I've missed a couple hundred options, but I'm sure this will be enough to prime a discussion.  BTW, what aspect of ASP.Net development do you find difficult?  (CSS / Layout, dealing with state, dealing with servers, etc.?)  That might help focus the discussion.

Copyright (c) Marimer LLC