473,748 Members | 9,913 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Adobe Flex vs. .NET WinForms

Guys,

I've been designing applications for the financial services industry using
MSFT technologies for many years (Win32 API, MFC, and now .NET WinForms).
All applications are Internet-based, with a "thick client" which makes calls
to my grid of servers via a socket or remoting connection.

Customers are pleased with my work but it seems that over the past twelve
months or so, those same customers have expressed a strong demand to access
my application via a browser. They don't like having to install the .NET
runtime and they don't like having to install my MSI file. Banks and large
brokerage firms in particular are wary about installing MSI files [for
obvious and legitimate reasons]. They want browser-based access. I can rely
upon Windows as the customers' OS, but not necessarily an Internet Explorer
browser. Firefox use is common.

I've never been a huge fan a developing browser-based applications,
primarily due to my hatred of JScript. I don't mind using JScript in small
doses to connect major elements on a web page but the idea of using it as my
main client-side programming language is not appealing at all.
Unfortunately, given that AJAX seems to be at the forefront of web
development technology these days, and given that the 'J' in 'AJAX' stands
for JScript, I feel as though I'm running out of options.

....but after doing some research, I ran across a technology by Adobe called
Flex. I ran some of the demo apps and was completely blown away! They have a
very modern look and they are as responsive as desktop apps. Have any of you
made the transition from WinForms to Flex? What are the pros and cons? I get
the impression that the Flex user interfaces are created using a language
called ActionScript. What are your thoughts on this language?

Recall that all of my server side logic is C# (.NET) based and can be
accessed via HTTP remoting, sockets, etc. What mechanism does a Flex
application use to retrieve information from the server?

In the C#/WinForms world, I can purchase components like grids, charts, and
fancy navigational tools from third party component vendors. Is the same
thing true in the Flex world?

Any information is appreciated.

Thanks,

Jules Winfield
Jun 12 '07 #1
10 6724
I am not much aware of .netWinForms but I feel developing a web based
application using Flex is one of the best options available now. Flex
has its own pro's n cons. let me put my thoughts below your
comments.....Fl ex is based on a xml type language called MXML and it
also uses ActionScript as and when re
On Jun 13, 1:48 am, "Jules Winfield" <ghe...@englewo od.comwrote:
Guys,

I've been designing applications for the financial services industry using
MSFT technologies for many years (Win32 API, MFC, and now .NET WinForms).
All applications are Internet-based, with a "thick client" which makes calls
to my grid of servers via a socket or remoting connection.
Flex can communicate with remote servers using HTTPService and its
pretty easy to do that.
>
Customers are pleased with my work but it seems that over the past twelve
months or so, those same customers have expressed a strong demand to access
my application via a browser. They don't like having to install the .NET
runtime and they don't like having to install my MSI file. Banks and large
brokerage firms in particular are wary about installing MSI files [for
obvious and legitimate reasons]. They want browser-based access. I can rely
upon Windows as the customers' OS, but not necessarily an Internet Explorer
browser. Firefox use is common.
Flex applicatiosn need Flash Player 9 and above to be installed on the
client machines for it to run. If Flash Player 9 is installed, it can
seemlessly run in any browsers on any OS that supports Flash Player
9 .Commonly supported OS and browsers are:- Windows, Mac OS X, Linux.
Then IE, Firefox, Opera, Safari etc...

>
I've never been a huge fan a developing browser-based applications,
primarily due to my hatred of JScript. I don't mind using JScript in small
doses to connect major elements on a web page but the idea of using it as my
main client-side programming language is not appealing at all.
Unfortunately, given that AJAX seems to be at the forefront of web
development technology these days, and given that the 'J' in 'AJAX' stands
for JScript, I feel as though I'm running out of options.
You may not encounter JScirpt but you will have to use MXML and
ActionScript to get most of your job done. You can also use CSS to
glorify your app. MXML is kind of XML based language.
>
...but after doing some research, I ran across a technology by Adobe called
Flex. I ran some of the demo apps and was completely blown away! They have a
very modern look and they are as responsive as desktop apps. Have any of you
made the transition from WinForms to Flex? What are the pros and cons? I get
the impression that the Flex user interfaces are created using a language
called ActionScript. What are your thoughts on this language?
Viewing Flex demo can make any one go crazy about Flex. I recommend
you to go thru some of cool n awesome demo of flex at
http://www.quietlyscheming.com/blog/

>
Recall that all of my server side logic is C# (.NET) based and can be
accessed via HTTP remoting, sockets, etc. What mechanism does a Flex
application use to retrieve information from the server?
You can retain your server-side logic. You can request an HTTPService
to access your server-side logics. no worries here.
>
In the C#/WinForms world, I can purchase components like grids, charts, and
fancy navigational tools from third party component vendors. Is the same
thing true in the Flex world?
Things that you may need to purchase for flex development is
1. Adobe Flex Builder - the default IDE used to develop flex
applications.
2. Flex Charting SDK - An SDK package that will make creating fancy n
interesting charts quite easier. (check charting demos at
http://www.quietlyscheming.com/blog/)
3. Lots of custom components are available for free as well as for
some money. Most of the commonly used components comes free with Flex
SDK.
If you are an expert coder, you can skip Flex Builder IDE and code
even in your notepad and compile it using the freely available Flex
SDK.

One of the advantages of Flex is you can convert your Flex web based
applications to Apollo (now Adobe AIR) desktop based application with
minimal changes. ( Oh yeah you need Adobe Apollo runtime to be
installed on the client machine for this.)

And Finally WELCOME TO THE WONDERFUL WORLD OF FLEX.

regards,
-Anish
>
Any information is appreciated.

Thanks,

Jules Winfield

Jun 13 '07 #2
Thanks, Anish, for the thoughtful reply. I'll investigate the web site to
which you referred. I'd like to ask a followup question to one of the points
you rasied:
You may not encounter JScirpt but you will have to use MXML and
ActionScript to get most of your job done. You can also use CSS to
glorify your app. MXML is kind of XML based language.
You mentioned CSS. So it sounds like FlexBuilder not only allows you to
build the dynamic application(s) that are built into a web page, but it also
allows you to build the web page itself. So would I use DreamWeaver to build
the site and FlexBuilder to build the embedded applications, or would I use
FlexBuilder for both the site (HTML and CSS) and the embedded applications?

Thanks,

Jules

Jun 13 '07 #3
On Tue, 12 Jun 2007 15:48:12 -0500, Jules Winfield wrote:
...but after doing some research, I ran across a technology by Adobe called
Flex. I ran some of the demo apps and was completely blown away! They have a
very modern look and they are as responsive as desktop apps. Have any of you
made the transition from WinForms to Flex? What are the pros and cons? I get
the impression that the Flex user interfaces are created using a language
called ActionScript. What are your thoughts on this language?
I haven't any experience in either AJAX or Flex application so I won't be
able to give you definitive advices on either but I've got a few general
thoughts about that. Just like you, I dislike web browser based application
both as an end-user and as a developer point of view. I have been
unfortunate enough to have to do some simple Flash developement with
ActionScript and integrate that into a .NET application and, boy, that was
painful... But I'm sure that Flex being specifically targeted as developing
application (as oposed to Flash animations), it is perfectly usable by
"traditiona l" software developers without too much pain.

If I had to switch from tradtional desktop application development to
browser based application development using either AJAX or Flex, I would be
extremely careful before taking the plunge and choosing Flex in favor of
AJAX for a number of reasons:

- Flex applications are nothing else than Flash files. This means that by
choosing Flex, you are tying yourself to a proprietary format, runtime and
environment. Of course, it is unlikely that a company like Adobe will
collapse in the near future or that they'll pull the plug on Flash. AJAX on
the other side is based on (now) standards and is widely supported by all
the major players in the industry.

- Flex requires Flash 9 to be installed on the client machine while AJAX
applications require nothing but a resonably recent web browser. This might
or might not be an issue. On the other side, AJAX probably requires a lot
more testing and tweaking to make sure that the application works fine in
most browser while Flex applications should work the same in every browser
as they run on top of the Flash runtime.

- Support: with the explosion of the AJAX buzz and number of AJAX based
application, the amount of available books and online resources (web sites,
discussion forums...) dedicated to AJAX development is almost limitless.
What about Flex?

- Development tools: with AJAX being well on its way of becoming the next
main development platform after Windows, there are loads of tools and
environment developed by many different companies to make development
easier. And this is probably just the beginning. With Flex, you'll probably
always be stuck with what Adobe has to offer.

- Whenever you'll need to hire a developer or a consultant to work on your
applications, how easy will it be find a suitable candidate? With ASP .NET
and AJAX it should be reasonably easy these days and in the future to find
good developers with all the required expertise and experience. I have my
doubts on the Flex side. On top of that, I guess that a number of Flex
developers are former Flash designers who are great at designing
fancy-looking UIs but have little to no experience and background knowledge
in developing robust and secure business applications. Also, if you choose
Flex and need to find somebody able to work on both the front-end and
back-end of your system, you'll need to find somebody with expertise in
both Flex and .NET. I suppose these kind of people are quite thin on the
ground.

- Of course, given the type of applications you're developing, I suppose
that security is a paramount in every aspect of your work. I can't comment
on this but obviously what each framework offers in terms of security
features would be an important parameter.

These are just some random thought, I probably forgot the most important
ones but what's for sure is that the look & feel or either Flex or AJAX
applications is definitely not the only or even the most important point to
take into account here.
Jun 13 '07 #4
Hi Mehdi,

Thanks so much for the comments. They are much appreciated.

It's a very tough decision for me. I wish I could stick with the
traditional Windows desktop model as I highly favor mature technologies over
the "bleeding edge" stuff like Flex or Silverlight. This isn't to say that
competing technologies like AJAX aren't mature; JScript and DHTML have
obviously been around for many years. Perhaps it's just my perspective
coming from a Windows application development background, but AJAX seems to
have a certain "hack" feel to it. I can't quite put my finger on it but
using AJAX to design complex applications gives me the distinct feeling that
I'm torturing older technologies into doing something that they weren't
really designed to do.

Sure, we can point to large companies like Google and Microsoft that
have created absolutely incredible AJAX-based solutions that meet or exceed
their desktop counterparts -- and don't get me wrong, I'm absolutely blown
away by what they've done. But these large companies have access to hundreds
of developers and QA testers to investigate and iron out all of the various
browser-specific quirks and provide a consistent user experience. I don't
have that; All I have is myself (the main developer with a C#/C++
background) and a couple of really good designers. I think Flex is a better
fit for my specific situation.

All things considered though, I'm still planning to heed your advice.
I'll play it safe and weight the pros and cons. I'll buy some books on Flex,
train myself on the technology, and then reevaluate whether or not the
project is feasible in a Flex environment. Time will tell. If Flex isn't
suitable and AJAX is my only alternative, it's probably time for me to
retire. :)

Wish me luck!

Jules
Jun 13 '07 #5
On Jun 13, 10:48 am, "Jules Winfield" <ghe...@englewo od.comwrote:
have that; All I have is myself (the main developer with a C#/C++
background) and a couple of really good designers. I think Flex is a better
fit for my specific situation.
You mentioned Silverlight earlier, if you use that, you can program in
C#, much like you do now and it supports IE, Firefox, and Safari on
Mac. Consider that alternative.

Jun 13 '07 #6
You mentioned Silverlight earlier, if you use that, you can program in
C#, much like you do now and it supports IE, Firefox, and Safari on
Mac. Consider that alternative.
I'm keeping a close eye on Silverlight too. I was a bit turned off when I
read that there are no built in controls (i.e. labels, text boxes, etc.),
but it turned out that the reason for this is that Silverlight is still in
"alpha" stage. It's not ready yet. Do you happen to know anything about the
Silverlight release timeline?

Thanks for reminding me though. I'll investigate a bit further.
Jun 13 '07 #7
You mentioned CSS. So it sounds like FlexBuilder not only allows you to
build the dynamic application(s) that are built into a web page, but it
also
allows you to build the web page itself. So would I use DreamWeaver to
build
the site and FlexBuilder to build the embedded applications, or would I use
FlexBuilder for both the site (HTML and CSS) and the embedded applications?
No, FlexBuilder does not edit html.
FlexBuilder is just the Flex IDE, based on Eclipse.
A bit slow, not fancy wizards, ok UI designer.
But the debugger part is worth it.

BTW, why don't you just give it a try?
Version 3 beta is available at the Adobe labs:
http://labs.adobe.com/technologies/flex/

--
Mihai Nita [Microsoft MVP, Windows - SDK]
http://www.mihai-nita.net
------------------------------------------
Replace _year_ with _ to get the real email
Jun 14 '07 #8
On Jun 13, 6:39 pm, "Jules Winfield" <ghe...@englewo od.comwrote:
Thanks, Anish, for the thoughtful reply. I'll investigate the web site to
which you referred. I'd like to ask a followup question to one of the points
you rasied:
You may not encounter JScirpt but you will have to use MXML and
ActionScript to get most of your job done. You can also use CSS to
glorify your app. MXML is kind of XML based language.

You mentioned CSS. So it sounds like FlexBuilder not only allows you to
build the dynamic application(s) that are built into a web page, but it also
allows you to build the web page itself. So would I use DreamWeaver to build
the site and FlexBuilder to build the embedded applications, or would I use
FlexBuilder for both the site (HTML and CSS) and the embedded applications?

Thanks,

Jules
The output you get from a Flex is a .swf flash file. Generally its a
trend that people use the .swf file alone and bare little HTML just to
embed that .swf . Infact you can check most of the flex demo's are
entirely of flash (right click anywhere on the page and you can see
its flash).

But that said, its not a constrain that you should use .swf only. We
can take that .swf output and just embed into out existing HTML code
using the <objecttag just as we embed any .swf files. So you can
build most of your app using dreamweaver and embed the .swf file
whereever its required.( But here again you can do all the stuff you
do in dreamweaver in flex too)

regards,
-Anish

Jun 14 '07 #9
On Jun 13, 6:54 pm, Mehdi <vio...@REMOVEM E.gmail.comwrot e:
On Tue, 12 Jun 2007 15:48:12 -0500, Jules Winfield wrote:
...but after doing some research, I ran across a technology by Adobe called
Flex. I ran some of the demo apps and was completely blown away! They have a
very modern look and they are as responsive as desktop apps. Have any of you
made the transition from WinForms to Flex? What are the pros and cons? I get
the impression that the Flex user interfaces are created using a language
called ActionScript. What are your thoughts on this language?

I haven't any experience in either AJAX or Flex application so I won't be
able to give you definitive advices on either but I've got a few general
thoughts about that. Just like you, I dislike web browser based application
both as an end-user and as a developer point of view. I have been
unfortunate enough to have to do some simple Flash developement with
ActionScript and integrate that into a .NET application and, boy, that was
painful... But I'm sure that Flex being specifically targeted as developing
application (as oposed to Flash animations), it is perfectly usable by
"traditiona l" software developers without too much pain.
Yes I agree. its lots more easier to develop web based applications
using Flex.
If I had to switch from tradtional desktop application development to
browser based application development using either AJAX or Flex, I would be
extremely careful before taking the plunge and choosing Flex in favor of
AJAX for a number of reasons:

- Flex applications are nothing else than Flash files. This means that by
choosing Flex, you are tying yourself to a proprietary format, runtime and
environment. Of course, it is unlikely that a company like Adobe will
collapse in the near future or that they'll pull the plug on Flash. AJAX on
the other side is based on (now) standards and is widely supported by all
the major players in the industry.

- Flex requires Flash 9 to be installed on the client machine while AJAX
applications require nothing but a resonably recent web browser. This might
or might not be an issue. On the other side, AJAX probably requires a lot
more testing and tweaking to make sure that the application works fine in
most browser while Flex applications should work the same in every browser
as they run on top of the Flash runtime.
AJAX based apps require lots of testing n tweaks before we can make
sure it runs as expected on all web browsers. With flex we have the
luxury that we can develop for one web browser and be sure that it
runs exactly the same way on other browsers too provided they have
flash player 9 or above ;-)

- Support: with the explosion of the AJAX buzz and number of AJAX based
application, the amount of available books and online resources (web sites,
discussion forums...) dedicated to AJAX development is almost limitless.
What about Flex?
Even I feel there arn't as much supporting sites for Flex when
compared to AJAX. but definetly Flex has some good books and good
start up tutorials. TotalTraining has some nice video tutorials on
flex. http://www.totaltraining.com/prod/adobe/flex2_ria.asp

- Development tools: with AJAX being well on its way of becoming the next
main development platform after Windows, there are loads of tools and
environment developed by many different companies to make development
easier. And this is probably just the beginning. With Flex, you'll probably
always be stuck with what Adobe has to offer.
The chances of being struck with Adobe is more, but that said now we
can expect more as Flex is open sourced (http://www.adobe.com/go/
opensourceflex)

>
- Whenever you'll need to hire a developer or a consultant to work on your
applications, how easy will it be find a suitable candidate? With ASP .NET
and AJAX it should be reasonably easy these days and in the future to find
good developers with all the required expertise and experience. I have my
doubts on the Flex side. On top of that, I guess that a number of Flex
developers are former Flash designers who are great at designing
fancy-looking UIs but have little to no experience and background knowledge
in developing robust and secure business applications. Also, if you choose
Flex and need to find somebody able to work on both the front-end and
back-end of your system, you'll need to find somebody with expertise in
both Flex and .NET. I suppose these kind of people are quite thin on the
ground.
Getting a Flex developer is not an easy task. May be Flex is quite new
and it still needs to generate lots of enthu for developers to begin
learning it.
- Of course, given the type of applications you're developing, I suppose
that security is a paramount in every aspect of your work. I can't comment
on this but obviously what each framework offers in terms of security
features would be an important parameter.
I feel Adobe has taken security in consideration. But again it depands
on what kind of applications we are developing.
>
These are just some random thought, I probably forgot the most important
ones but what's for sure is that the look & feel or either Flex or AJAX
applications is definitely not the only or even the most important point to
take into account here.

Open Lazlo :- This is one of the competing technologies with Flex and
open Lazlo is open source. But i felt its not quite easy to develop
apps using Open lazlo. It lacked Flex Builder kind of IDE
http://www.openlaszlo.org/

Hope all this thoughts will help you decide the best.

regards,
-Anish

Jun 14 '07 #10

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

4
3614
by: Peter Kleiweg | last post by:
Hi, I am looking for a Python equivalent of Flex. After some browsing, it seems that Plex is my best bet, but I would like to hear suggestions before I dive in. I have been using Flex a lot in combination with C programming. I never use Yacc (or Bison), though Flex and Yacc are supposed to be used together. But I found Yacc too cumbersome, and unnecessary. Yacc is about context-free grammars, nice if you
2
6593
by: olig9 | last post by:
Hello, is there a way to feed an ifstream to a parser generated with flex and bison? I could see that flex wants a FILE* for reading, but I only have an ifstream (actually and ifstream*) for input. It seems that flex++ can use an ifstream; but how does the generated lexer then work with bison? Or is there a (portable) way to get a FILE* from an ifstream? Thanks in advance, Oliver Gerlich
5
5948
by: ASP.NET explorer | last post by:
I have been asked to create some simple animation using Adobe Flash player in ASP.NET(C#) web application. While I am fairly well versed with ASP.NET C#, I absolutely have NO IDEA about how to say "Hello World" in a Flash enabled web page rendered via ASP.NET. Can any one let me get started? ---
1
2961
by: abbasnaqvi | last post by:
Hi All, I am developing Employee Management system in Adobe Flex and I am coding a web service to get data from the database and return it to Adobe Flex application but I can find a better way to handle my data in Adobe Flex application. Is there any sample project to do that, then it will be very helpfull. Or if anyone can suggest some technology to receive and handle...
3
3529
by: Tarik Monem | last post by:
Hi Everyone, Still a newbie with FLEX, and I've passed arrays using AJAX to FLEX before, but I've never passed links to FLEX. Basically, this is the OUTPUT, which I wanted, but I'm given an error of "illegal character," from the JavaScript console: Error: illegal character Source Code:
1
1466
by: Sells, Fred | last post by:
please excuse slightly off-topic; cannot access turbogears mailing list at the moment. There was an excellent video by James Ward that showed using turbogears to return json data to adoble's flex UI. It simply used @expose("JSON") def xxxx(): ... return dict(x=1, ...) Is there any equivalent for xml, such as
1
1231
by: Sells, Fred | last post by:
Diez wrote: sounds good. Does that "py:strip" remove the <divand anything outside it. I'll be doing a flex style ajax call and it wants just the xml data tree.
3
2692
by: susheela s | last post by:
Hi, Im interested in learning how to create an adobe air application using Flex 3SDK.I need some links to refer.In google i serached about this i got many.But, im confused which one to follow.So,can anyone plz guide me. Thank u.
0
1666
by: susheela s | last post by:
Hi. I followed the link which is given below to develop an air application .The procedure i followed is there in this link "http://help.adobe.com/en_US/AIR/1.5/devappsflex/WS5b3ccc516d4fbf351e63e3d118666ade46-7fd8.html" I could able to generate swf file by compliling and i also tested the application. But while packageing air installation file i am not able to do. Here first i need to create a certificaticate i did that. Then i entered...
0
8987
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
8826
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
9534
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
9366
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
0
8239
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
1
6793
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
6073
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
2
2777
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
3
2211
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.