Tag Info

Hot answers tagged

69

You don't explain MVC. What you do is explain that this is a restructuring of the codebase. A restructuring that simplifies the codebase and therefore enables the developers to make faster and better changes to bug reports and feature requests, with less bugs. They don't need to know the technical details, just why it was done, what was achieved by doing ...


39

While I endorse the gist of Oded's answer, that you should explain technical projects to business managers in "their language," I have a qualm about "they don't need to know technical details, just why it was done." If you are in a project or investment review meeting with department heads, and you declare "this is what we're doing," they may want to ask ...


9

Model - Wires/electricity View - Light Fixture Controller - Light Switch Relatively easy to switch out components (light fixture, light switch/dimmer). Maybe not so much the wiring, but still can be done without effecting other components. Everyone should be able to visualize that in thier head, even marketing/sales types. (Clear separation, etc.) ...


9

in order to improve flexibility of making changes to the software Managers are interested in the end result. The less technical they are the less likely they are concerned with how you get there. MVC is very common, popular and proven. When change requests are made in the future, you can let management know they can be made easier and faster. Everybody ...


3

No, having the View observe the Model (or perform other read actions on the Model) is a valid implementation of the MVC pattern. There are two main ways that the MVC pattern is typically implemented and they differ mostly in how the information from the Model gets to the View. In the first form, all information passes through the Controller, who is made ...


3

I halfway-agree with Oded - learning how to convince your non-technical peers and managers that what you are doing is important and useful, without explaining the gritty details, is a necessary skill that you would be wise to develop. However, I believe that having the ability to explain complex concepts in simple terms actually helps with that - one ...


2

An easy way to understand MVC: the model is the data, the view is the window on the screen, and the controller is the glue between the two. The best rubric ever: "We need SMART Models, THIN Controllers, and DUMB Views" As with other software design patterns, MVC expresses the "core of the solution" to a problem while allowing it to be adapted for ...


2

While views shouldn't contain business logic, they still can contain basic conditional logic, loops, etc. Since your website is “very heavily based on whether an event has occurred or will occur”, this is definitively a case where you'll have two views, not one. What questions could I ask myself to help me determine the best approach to take to this in ...


2

There are a lot of overloaded terms in programming. The "model" in Model-View-Controller has nothing to do with the "model" in Document Object Model. Arguably the DOM should have been called something like the Document Manipulation Interface, since that's what it actually is: an interface. More importantly, it's an interface for manipulating the content ...


1

I don't know if this is what you're looking for but here goes. Methods like save, get, getBy, getAll, etc, are generic and would ideally work across multiple models. For the most part, the only difference is going to be SPECIFICALLY where that data is. So why not make a super model of sorts for all your models to extend. class Super_Model { public ...


1

Well, I can only assume this changes along different platforms. On the android library, you create the view from the controller. i.e., in your Activity you call setContentView... to "awake" you XML (The view) and create it. On the other hand, in the iOS world, you would ask the View (storyboard or .xib file) to awake (Actually you ask the system to go to ...


1

What you suggest is the usual way to achieve this - the alternative is to directly communicate with the other devices in a per-to-peer topology, but that breaks down quickly as devices are added. So your requirement is to check and detect errors. You could implement a heartbeat to the server so you know its alive, and/or you can add a version number that ...


1

I've never used Laravel, so I'm not 100% sure this will work for you, but one method I've used in the past is to include either a list or an optional value in my viewmodel that contains the name of another model to render and the data to put there. The view then iterates over the list/checks for presence of the value and includes the appropriate view ...


1

Explain the advantages I would explain MVC in terms of business benefits. Your managers will be able to understand this, and will get on board if the advantages are convincing. MVC allows you to break down your application into sensible units, each of which exists independently of the others. You get clean, maintainable, testable code, and potentially code ...


1

Benefits of MVC is primarily in the separation of concerns: It lets people concentrate on what they do best. Database admins develop the model Programmers write the controllers and Graphic designers can design the views. It lowers costs because intertwined systems require staff to be either experts in all of these areas, or you are more likely to have ...


1

I would tell them that MVC separates my concerns. My first concern is the code logic - what I do behind the scenes to make the website perform the actions they want it to. My second concern is the business logic - what they (the user) want the application to do. My third concern is how the site looks - The page they visit to do what they want. (I ...



Only top voted, non community-wiki answers of a minimum length are eligible