I have an app that loads widgets, but i want to do this as close to a MVC structure as possible.
Suppose i have the following classes:
1. Index.cs
2. Handler.cs (for all the GUI stuff)
(The widgets)These files are forms, thus it only contain the GUI.
3. Users.cs
Feeds.cs
News.cs
What of the following examples is the closest to a MVC structure?
Scenario 1:
Index.cs creates an instance of Handler.cs.
Handler.cs creates an instance of all the widgets. So it has these instances:
Users users = new Users();
Feeds feeds = new Feeds();
News news = new News();
When i want to load the Feeds widget from Index.cs i do the following:
Code:Index.cs Handler handler = new Handler(this); handler.ShowFeeds();Should i do it like this?? Or is the 2nd scenario better:Code:Handler.cs //constructor public Handler(Index index) { this.index = index; //take over the instance of Index.cs feeds.Location = new Point(300,200); index.Controls.Add(feeds); } public void ShowFeeds() { feeds.Show(); //Show() is a C# function. }
---------------
Scenario 2:
Index.cs creates an instance of everytinhg:
Handler handler;
Feeds feeds;
News news;
Users users;
Also loads the GUI elemens in its own class, but doesn't Show() them yet untill neccessary.
And i just use Hanlder.cs to handle all the button clicks and stuff like that of all the GUI class files. Instead of Loading, Showing and HidingCode:public void LoadAll() { feeds.Location = new Point(300,200); this.Controls.Add(feeds); news.Location = new Point(300,200); this.Controls.Add(news); users.Location = new Point(300,200); this.Controls.Add(users); }
all the forms.
-----
So which one is better, or are they both not good...??




Reply With Quote