I'm trying to determine what the differences between WPF and Flash / Flex are. Also, isn't SVG a competitor as well?
Specifically, why would I choose one over the other? I'm not trying to troll, but I do need to create some sort of a vector-based (preferably) application in .NET, that I can re-use code (like User Controls in WinForms). I need to connect to an SQL database,
and my platform is only Windows. Although, we might try to expand in the future.
Can anyone --peacefully-- compare the two?
-
-
Microsoft said Flash isn't competing with WPF. Flash is used more for animations and (really bad) websites rather than "rich" applications.
WPF is competing more with XUL and to a lesser extent, XForms. -
Jack Poison wrote:
I'm trying to determine what the differences between WPF and Flash / Flex are. Also, isn't SVG a competitor as well?
Specifically, why would I choose one over the other? I'm not trying to troll, but I do need to create some sort of a vector-based (preferably) application in .NET, that I can re-use code (like User Controls in WinForms). I need to connect to an SQL database, and my platform is only Windows. Although, we might try to expand in the future.
Can anyone --peacefully-- compare the two?
Funnily enough I've been looking at Flex recently for a long-term project I am just about to undertake (hopefully), unfortunately I can't tell you a lot about WPF but I am sure there are some here that can. Like WMF, the Flash is generated from an XML description.
The obvious advantage to using flex is that it is available now - in fact version 2 is out (although we're still waiting for the Mac version) and because of that I'd argue it was a bit more mature - more time to remove bugs etc. Other advantages .. people already have Flash, it runs on the vast majority of Operating Systems, you can develop on the vast majority of operating systems. The back-end of Flex (Flex Data Services) is also pretty flexible, it doesn't really tie you down to one set of technology meaning that you can provide data from J2EE, .Net or my fave - Ruby.
If you have Flash installed (and I betcha do) there are a few demos of Flex apps on the Adobe site. The on-line video editing and Amazon store are reasonable examples.
I don't think I would include SVG as a competitor to either as both provide a lot more than a method of showing vectors and interacting with Javascript - plus with current support you have to rely on the Adobe SVG viewer.
-
W3bbo wrote:Flash is used more for animations and (really bad) websites rather than "rich" applications
That's just nonsense. See above.
-
W3bbo wrote:Microsoft said Flash isn't competing with WPF. Flash is used more for animations and (really bad) websites rather than "rich" applications.
WPF is competing more with XUL and to a lesser extent, XForms.
After viewing the "The north Face" demo at PDC last year, it sure seems they were competingwith Flash / Flex.
I know of at least one company that's building a desktop app in Flash, and it's a 'mission critical' app as well.
Anyone else have more quantitive comparisons between WPF and Flash / Flex?
-
Rossj wrote:

W3bbo wrote:Flash is used more for animations and (really bad) websites rather than "rich" applications
That's just nonsense. See above.
Rich desktop applications, I count web-apps as websites.
Okay, so some of them aren't bad, some are quite nice, I'm sticking with the W3C camp
-
Thanks, Ross, for the input. Hopefully more will come down..
One thing I don't quite buy is the "maturity" argument. Just because an app has been released for a longer amount of time doesn't mean fewer bugs (like, Sendmail for example). Usually, people who have a product out call it "maturity" and if you don't, well, it doesn't count for very much.
As to the runtime being available now, that likely will change once Vista is released and .NET 3.0 is finalized. Windows based machines will likely be able to update via Windows update, and I don't really care about Mac users / Non-IE users now. My clients almost exclusively have PCs having to test in cross-platform environments isn't worth my time unless there is a huge migration.
I appreciate your comments, though.
So, is the only difference the availablility of Runtime and a flexible backend?
-
Jack Poison wrote:As to the runtime being available now, that likely will change once Vista is released and .NET 3.0 is finalized. Windows based machines will likely be able to update via Windows update, and I don't really care about Mac users / Non-IE users now. My clients almost exclusively have PCs having to test in cross-platform environments isn't worth my time unless there is a huge migration.
Also consider:
1) Vista adoption rate -- you probably won't see any significant adoption for another 3 yrs
2) If Vista spreads wildly, this will be bad for Flash -- IIRC, Vista will be the first version of Windows (in a long time) NOT to include the Flash run-time
3) Re: Windows Update -- the .NET 3.0 runtime will most likely be available as an OPTIONAL upgrade -- and WONT be automatically installed -- which for all intended purposes, won't be available to non-Vista user.
-
- Flex/WPF both use XML for vector layout.
- XAML (WPF) is a published opened standard, Flex's (sorry, have forgotten the name) is a one-off. In fact, there's already a heap of support with XAML in the convertor department, like XAM3D (ala SWF3D).
- Working with WPF means you can code in .NET and work with a compiled object oriented language. Not sure if Flex uses Actionscript 3.0 or not, but pre-3.0 reminds me of VB in that it permits you to make stupid mistakes. In addition, standard stuff like regular
expressions and xpath are unavailable pre-3.0 as well (yes I know about XPathAPI - but its a really limited implementation, and it doesn't work most of the time).
- I like the animation systems of both.
- If working with WPF you can create your webservices as another project in the same solution. If you work with Flex, you need to work with 2 different IDE's. I know that's not much of an argument, but hey.
- Flex/WPF both use XML for vector layout.
-
I've not used Flex so I can't compare but the following blog might be useful.
theWPFblog
It a blog about a Flash expert's adventures in WPF. It might give you some insight into the platforms comparitive strengths and weaknesses. -
Flex is (or was last time I checked) expensive, as in 5 digits USD.
-
I appreciate everyone's reply.
I just bought Charles Peizold's book on WPF. Hopefully it, too, will be helpful.
-
Minh wrote:
1) Vista adoption rate -- you probably won't see any significant adoption for another 3 yrs
Flash player 9.0 is at 50% adoption, after just a couple of months.
Minh wrote:
2) If Vista spreads wildly, this will be bad for Flash -- IIRC, Vista will be the first version of Windows (in a long time) NOT to include the Flash run-time
The new flash runtime includes auto updating.
-
PreachingLlama wrote:
- Flex/WPF both use XML for vector layout.
In Flex you can also do this in ActionScript.
PreachingLlama wrote:- XAML (WPF) is a published opened standard, Flex's (sorry, have forgotten the name) is a one-off. In fact, there's already a heap of support with XAML in the convertor department, like XAM3D (ala SWF3D).
It is open, with the sdk(free) you get full access to the architecture. Extend as you see fit.
PreachingLlama wrote:- Working with WPF means you can code in .NET and work with a compiled object oriented language. Not sure if Flex uses Actionscript 3.0 or not, but pre-3.0 reminds me of VB in that it permits you to make stupid mistakes. In addition, standard stuff like regular expressions and xpath are unavailable pre-3.0 as well (yes I know about XPathAPI - but its a really limited implementation, and it doesn't work most of the time).
It uses AS 3.0, a true OOP language, built from the ground up true jit compiling. Includes Regular expressions and E4X standards (to name a few).
PreachingLlama wrote:
- If working with WPF you can create your webservices as another project in the same solution. If you work with Flex, you need to work with 2 different IDE's. I know that's not much of an argument, but hey.
As3 is very similar to C# and java, very small learning curve.
-
DCMonkey wrote:Flex is (or was last time I checked) expensive, as in 5 digits USD.
It was expensive..
technewsworld.com wrote:
With Flex 2, Adobe is permitting free single CPU (central processing unit) deployments of Flex applications using the Flex Data Services 2 Express or XML (extensible markup language) and Web Services.Previously, Flex users paid US$15,000 per CPU to get started with the Flex SDK, which was part of the Flex Presentation Server.
link
Its the Flex data services that are expensive, and not at all required to build a decent application.
SDK = Free (notepad + command line compiling).
Flex Builder = 449 (Eclipse)
Flex Builder + Charting = 699
-
W3bbo wrote:Microsoft said Flash isn't competing with WPF. Flash is used more for animations and (really bad) websites rather than "rich" applications.
WPF is competing more with XUL and to a lesser extent, XForms.
Foobar.
Flex2.0 - WPF/E
Apollo (next gen Flex) - WPF
Flex 2.0 By definition is for RIA (Rich internet applications).
Apollo by definition is for RIA (but on the desktop, no browser).
Seeing as how SAP (3rd largest software company in the world) is using flex for it's next gen interface, I think that flash is quickly moving past the intro animation day's.
Mentions
Lot's more info about SAP and Flex
Thread Closed
This thread is kinda stale and has been closed but if you'd like to continue the conversation, please create a new thread in our Forums,
or Contact Us and let us know.