How to find out MVC - * not * in web setup

I want to study the MVC paradigm and apply it to GUI development (in C # .NET, at least at first, but I think I would like to apply it elsewhere too). Almost every tutorial I've seen so far suggests that if you are thinking about MVC, you should be involved in web development, and they look at MVC solely from the web context. I am not talking about web development.

Does anyone use MVC in a non-web context? It seems like it would be ideal for developing a graphical interface - to separate the presentation from the underlying data model. But I just studied, so I donโ€™t know. Any pointers to tutorials or reference papers would be appreciated, thanks.

+4
source share
10 answers

Check out the book Head First Design Patterns. This is a great guide to implement design patterns, as well as a solid example of MVC.

+7
source

Most GUIs use MVC in one form or another.

There is nothing magical about MVC; in fact, itโ€™s just a way to tell your model to be separate from everything else. View and control are almost always interfaced, because features of the implementation of the view lead to the creation of the controller.

In addition, everyone who implements MVC seems to have a slightly different idea of โ€‹โ€‹what belongs to where. Itโ€™s extremely simple for the material to slide back and forth between the view and the controller - and many views are actually made from the entire miniature MVC architecture!

I am not telling you to ignore MVC or something like that, it makes a pretty good set of recommendations, I just tell you not to emphasize that I came up with the exact set of rules that all follow, which absolutely defines MVC because you probably donโ€™t will find. All this is slightly bent to fit the rest of the architecture.

+4
source

Swing in Java uses MVC. Could it be worth checking out?

+2
source

I have no links to share, but I have been experimenting with this recently. What I did was create a controller and controller interface. The controller interface actually implemented several other interfaces in order to clearly distinguish all the unique functions.

The user interface (windows and forms) had a controller handle only by its interface. Since events occurred in the window, the window class directly directed them to equivalent calls through the controller.

The controller knew about the model. In my case, I had an Oracle database and an SDE database. They were wrapped in classes, so I controlled my own implementation and the interfaces for them. The controller will query the databases (existing in the data model namespace) and massage the data to satisfy the view request.

It was surprisingly easy to implement and make the development very clear, clean and concise.

+1
source

If my reputation was high enough, I would comment on what Rick wrote. But since this is not my own post:

I also like the book Head First design patterns, but I think that it is too wide for a specific subject that interests you.

If you want to know how pros implement MVC using .NET.NET, I highly recommend checking out CAB (a component block of user interface applications).

http://en.wikipedia.org/wiki/Composite_UI_Application_Block

http://www.microsoft.com/downloads/details.aspx?FamilyId=7B9BA1A7-DD6D-4144-8AC6-DF88223AEE19&displaylang=en

+1
source

The MVC pattern can also be applied to Windows forms. Check out MVC #. http://www.MVCSharp.org/Using_Winforms_views_engine/Default.aspx

+1
source

This pygame tutorial uses MVC. Too small a game can be an interesting way to get an idea of โ€‹โ€‹a design template.

0
source

Mac programming in Objective-C and Cocoa is usually an MVC model.

This is not C # /. NET, but if you want to spend time reading, you can get some ideas.

0
source

I believe that you are using MVC and MVP templates with Microsoft Composite Application Block and Smart Client Factory software. Here's a link to the documentation: link text

0
source

MVC was originally defined as a modular OOP style for GUI applications. Only later was the name borrowed from a completely different layer style for web applications. If you haven't paid attention to "web MVC", you will find many examples and links to "GUI MVC".

-1
source

All Articles