Topics: CAB & Smart Client Software Factory
Sep 20, 2006 at 9:26 AM
originally posted by: TrevStar22

Hi, I'm just learning the CAB, and have been pouring heart and soul into it over the past week. Several questions have come up, and I'm working through them. However one of the things that I keep struggling with is MVC vs. MVP. Not in implementation as much as when to use them.

I see MVP mentioned in a lot of ASP.NET articles, and MVC mentioned all through the CAB documentation. Am I right in believing that the MVP pattern is used in web development and MVC is used more in Windows development?

Thanks for any help.
Sep 20, 2006 at 9:58 AM
originally posted by: PJackson

Check out the Smart Client Software Factory which is providing guidance on building CAB applications:

Their recommendation tends toward MVP.
Sep 20, 2006 at 10:52 AM
originally posted by: askew

MVP supports test driven development much better than MVC.

MVP is what the Smart Client Software Factory generates in support of CAB solutions, not MVC.

There are Hands on labs for the SCSF that shouldn't be missed.
Sep 20, 2006 at 11:50 AM
originally posted by: TrevStar22

Thanks to both of you for the replies. I've been working hard to understand the CAB. I would prefer to tend toward applications that can be tested using TDD, so MVP seems like a logical approach for me to take.

I'm concerned about jumping into the SCSF because I don't want to have the CAB systems hidden from me. I'd like to learn the CAB and then attack the SCSF to have it lay down the plumbing code for me. Is this a logical way to attack the problem of learning the CAB and the SCSF? Or have I misunderstood the purpose of the SCSF?

Sep 20, 2006 at 1:05 PM
originally posted by: askew

SCSF is a vehicle for CAB. CAB is the asset.

You have a handle on it and a good plan.
Sep 21, 2006 at 5:17 AM
originally posted by: herocomplex

A good read on differences between MVC and MVP by Martin Fowler.
Sep 21, 2006 at 5:00 PM
originally posted by: TrevStar22

Very good read! Thanks for that link.