This post has been edited by AdamSpeight2008: 24 February 2012 - 08:21 PM
19 Replies - 10556 Views - Last Post: 06 August 2012 - 10:06 AM
#1
Do you GUI First? [Poll & Discussion]
Posted 24 February 2012 - 08:21 PM
Replies To: Do you GUI First? [Poll & Discussion]
#2
Re: Do you GUI First? [Poll & Discussion]
Posted 24 February 2012 - 08:40 PM
Once the data storage is designed I start working on functions that I've written and can re-use or need to write. Now though, more and more, I look at creating various classes to handle the objects.
Then it's on to the GUI although I must admit, I'm not real strong with encompassing everything in objects so I still find myself going back and tweaking them. Sadly enough, this part of the process still seems to dictate how some of those classes are designed and the end result still leaves be knowing that I have room for improvement.
I guess my rationale as to why the database first is that the data is the important factor in the end result and as long as I have the proper data, I can write code to manipulate it as I see fit.
Since you started this topic, and anyone who's been here for a bit knows you don't start with a GUI, I would personally like to hear your response to your topic Adam. You should also edit your post and include what type of program you typically are involved in. I know not everyone has certain type but there are people that do a lot with graphics, math etc... and I guess I feel like that could be a huge factor in where each person starts their projects.
This post has been edited by CharlieMay: 24 February 2012 - 08:49 PM
#3
Re: Do you GUI First? [Poll & Discussion]
Posted 25 February 2012 - 03:02 AM
But what I code first is usually the Models in MVVM application as far as I can think of. At the same time with models I create the data access stuff, at least to a basic level where the select/insert works. Then comes the View and ViewModel and while doing them I update my data access stuff with more advanced queries when I need them. Models might also be affected by some minor changes if I hadn't thought about something when doing them.
#4
Re: Do you GUI First? [Poll & Discussion]
Posted 25 February 2012 - 07:09 AM
#5
Re: Do you GUI First? [Poll & Discussion]
Posted 25 February 2012 - 04:14 PM
#6
Re: Do you GUI First? [Poll & Discussion]
Posted 25 February 2012 - 04:50 PM
woodjom, on 25 February 2012 - 10:09 AM, said:
I agree whole-heartedly. I have tried to do "GUI First", but in the end my backend was completely un-readable and full of bugs.
#7
Re: Do you GUI First? [Poll & Discussion]
Posted 25 February 2012 - 06:52 PM
Some may think this is a lot to keep track of, so the solution is made up of sub-projects and various namespaces.
So the various sub-projects, which build into separate DLLs and EXEs
- Interfaces
- Base Classes
- Exceptions
- Component Objects
- GUI
The first GUI is often Console-based as it makes for rapid prototyping and testing of the design.
When beginners learn by doing GUI applications they tend to do the following.
Example: Convert Celsius to Fahrenheit
This is what I'd write.
So the core of the problem (temperature conversion) is solved. Building a GUI especially a Windows Forms application on top of the framework components I've created is simple. You want to change to design of the GUI, does that effect how the conversion works?
Of course it doesn't.
DIC is full of examples of bad designs and coding horrors because GUI first design approach.
This post has been edited by AdamSpeight2008: 25 February 2012 - 06:55 PM
#8
Re: Do you GUI First? [Poll & Discussion]
Posted 25 February 2012 - 07:15 PM
Now, the problem with this is as you stated, you do a lot to ensure that you keep the scope and visibility to a minimum. By default, and someone correct me if I'm wrong because as I understand it, VB.Net creates everything is such a wide scope that it takes these extra steps to limit it. So for the average user, VB.Net is still a R.A.D. Language UNLESS you want to tighten it up which takes more time.
Not to mention, classes still teach the use of the controls for the information, so it takes someone with a little extra interest in providing secure, manageable code to move out of this "school" of thought.
This post has been edited by CharlieMay: 25 February 2012 - 07:16 PM
#9
Re: Do you GUI First? [Poll & Discussion]
Posted 27 February 2012 - 11:38 PM
#10
Re: Do you GUI First? [Poll & Discussion]
Posted 07 March 2012 - 04:25 AM
If there's no GUI, then I actually find myself listing example outputs; Which has the same effect.
#11
Re: Do you GUI First? [Poll & Discussion]
Posted 09 May 2012 - 11:48 AM
No sense building database architecture only to have someone explain (once they fit you into their busy schedule six months into the project) that we have the business rules all wrong, and we find that we have to redesign our database to accommodate the correct ones.
This post has been edited by BobRodes: 09 May 2012 - 11:57 AM
#12
Re: Do you GUI First? [Poll & Discussion]
Posted 09 May 2012 - 11:56 AM
#13
Re: Do you GUI First? [Poll & Discussion]
Posted 09 May 2012 - 01:04 PM
BobRodes, on 09 May 2012 - 01:48 PM, said:
No sense building database architecture only to have someone explain (once they fit you into their busy schedule six months into the project) that we have the business rules all wrong, and we find that we have to redesign our database to accommodate the correct ones.
There is actually no sense in spending an exorbidant amount of time developing (prototype) the GUI if all they are going to do is throw your knowledgeable design in the trash and then have you redesign based on their needs, that they of course failed to express during the "discovery phase"
Yes I had that happen to me once, and i never make the same mistake twice, so now i spend maybe 16hrs of a project on prototyping the GUI and the majority of the project is spent on content and design and then i spend usually the last 1/3, usually last 1/4, of the project on GUI LAF (look and feel) with the functionality already attached just waiting on client making decisions on placement of controls and how menus are designed.
#14
Re: Do you GUI First? [Poll & Discussion]
Posted 10 May 2012 - 06:21 AM
woodjom, on 09 May 2012 - 03:04 PM, said:
BobRodes, on 09 May 2012 - 01:48 PM, said:
No sense building database architecture only to have someone explain (once they fit you into their busy schedule six months into the project) that we have the business rules all wrong, and we find that we have to redesign our database to accommodate the correct ones.
There is actually no sense in spending an exorbidant amount of time developing (prototype) the GUI if all they are going to do is throw your knowledgeable design in the trash and then have you redesign based on their needs, that they of course failed to express during the "discovery phase"
Yes I had that happen to me once, and i never make the same mistake twice, so now i spend maybe 16hrs of a project on prototyping the GUI and the majority of the project is spent on content and design and then i spend usually the last 1/3, usually last 1/4, of the project on GUI LAF (look and feel) with the functionality already attached just waiting on client making decisions on placement of controls and how menus are designed.
I don't think there's any sense spending an "exorbitant" amount of time doing anything. It takes as long as it takes to get signoff on the requirements, so if it can get done in maybe 16 hours, well and good. If it takes 200 hours, well and good. How long it takes really depends on the size of the problem domain.
As far as I'm concerned, and this is the point I'm making, GUI prototypes often uncover hidden requirements. People look at it and say no, that's not quite what I'm looking for, I need one of these, and so on. That's why I start with the GUI, although of course I really start with a problem statement.
My point is that including prototyping in the "discovery phase" leads to better discovery. A visual representation of an answer to the question "what do you want to do" seems to be effective in refining that answer.
It would seem that you don't disagree, given that you appear to be saying that you design the GUI first, whether you refine it later or not.
This post has been edited by BobRodes: 10 May 2012 - 06:23 AM
#15
Re: Do you GUI First? [Poll & Discussion]
Posted 10 May 2012 - 07:13 AM
In the past i have dealt with developer that make the car look like a Corvette even though when put on the road performs like a Pinto. Which means they spent 80% of their time on the GUI and 20% of their time on the content of the development. Which is "bass ackwards" and leads to developers getting a bad rapoire cause of a few "idgiots"
I just dont put alot of time or effort in developing the interface as it is fluid and can be easily changed with a few mouse clicks, drag-and-drop, or ultimately the delete. The content of the software is a different point in case and is almost always the opposite of the GUI.
This post has been edited by woodjom: 10 May 2012 - 07:13 AM
|
|

New Topic/Question
Reply



MultiQuote










|