Reputation: 49978
I was reading Pro WPF in C# 2008 yesterday (in anonymous bookstore) and in chapter 2 they mention that XAML allows for the graphic design and the programmer to be completely independent. It got me wondering if most companies are moving toward having dedicated design specialists for implementing there UI’s? I know at our company we have had less than encouraging comments about our displays/UI's and we have even considered bringing in consultants. All of our UI development is done by the developer.
Should we have/hire a graphic design specialist, or hire a consultant to look at our work, or will WPF be the savior for our lack luster UI’s?
Upvotes: 0
Views: 463
Reputation: 115701
The one you need is not graphics designer, but rather a UI/UX designer.
Generally speaking, developers are notoriously bad at two things for sure: finding bottlenecks in applications (profilers should be used to do so) and creating interfaces:
(source: mac.com)
The thing with WPF is that it separates UI layout from actual UI code thus allowing developers and designers to work on these two parts separately, each using proper tools: Visual Studio for developers and Expression suite for designers.
And yes, if you want to have a nice-looking UI, you should hire a designer.
Upvotes: 3
Reputation: 363
i'm reading the exact chapter of Pro WPF 4.5, five years after this question was posted.
And my thoughts are: 1) For all internal business applications i've worked with in the past 10 years, there has been absolutely no need whatsoeer for a dedicated UI designer. As long as the developer is intelligent, the UI design of the developer is far better than the flashy junk produced by designers that no business users care about (they only care about functionality, not the frills)
2) The separation of UI from code that XAML offers is a mixed blessing at best. I still remember the days when developing X-Window apps in Unix, and everything was defined in code. The beauty of this is that everything was under precise control, and if something was wrong, it's super simple to debug and fix. WinForms followed pretty much the same pattern as X-Windows, but with a solid GUI designer IDE which simplified the job. What WinForms lacked is a flexible way to do complicated UI layout, which was offered by WPF containers.
3) Doing WPF with XAML + code is quite error prone and hard to debug, esp with complicated data bindings. In short, it's a rather unnatural way to writing code (it works against how most developers think). Charles Petzold understood this psychology pretty well and explained how to write WPF apps in pure code in his book App = Code + Markup. However, given that most developers prefer to use the IDE to compose a UI rather than coding from scratch, pretty much all WPF apps I've seen so far still uses XAML + Code Behind. There is a quite a lot of religious fervor about MVVM, but none of the business apps I've seen uses that pattern.
Upvotes: 0
Reputation: 1077
We've started using WPF, but we have no UI designers - and it shows. Some of our user interfaces here (99% in Windows Forms, rough guesstimate) could be filed under "crime against humanity." I've done something relatively pleasing to the eyes with my first WPF application, but it still could use some TLC. I must say that even though WPF drove me nuts at first, now I hope I won't have to go back to Windows Forms for future projects.
WPF offers the potential, but it's very likely that the majority of companies who don't use UI designers now won't start just because they're using WPF. Hell, most don't have dedicated test teams, so don't even dare mentioning the idea of dedicated UI designers. The mentality here is: "As long as it works, it doesn't matter how it looks." It drives me mad every time.
Stephan mentioned laziness. That's not un-true (we have people who display actual cryptic database field names on screen rather than user-friendly names, for instance), but as Mario pointed out, UI skills are a different beast from programming skills. We have some excellent programmers who should never be allowed to go near the interface.
Upvotes: 5
Reputation: 8255
While interface design in WPF can be independent from programming, it is not purely graphic design work. A person can work on interface independently, but this person must have reasonable knowledge of software development, .NET and WPF internals.
Probably the most common approach is for designer to create templates and guidelines for developers, and then review resulting interfaces.
Upvotes: 2
Reputation: 15907
WPF is not going to save you. Even in plain html/css it is possible to create much better user interfaces than are now commonly seen. The problem is lack of attention to UI design (laziness), not lack of tools. Having someone around who tells everyone that they can do a much better job (and show them how) might provide better results
Upvotes: 1
Reputation: 11608
WPF itself won't automatically make your applications look better. In fact, I think most attempts at a first WPF app usually look worse than if the dev had just stuck to Windows Forms. What WPF does is allow the creative/design type a lot of freedom in designing the application outside of the normal code-focused dev workflow. If your current UIs scream "I was made by a developer" then I'd say you need a designer regardless of whether you use WPF or not.
Upvotes: 1