PC Review


Reply
Thread Tools Rate Thread

Adobe Flex vs. .NET WinForms

 
 
Jules Winfield
Guest
Posts: n/a
 
      12th Jun 2007
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


 
Reply With Quote
 
 
 
 
Anish
Guest
Posts: n/a
 
      13th Jun 2007
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.....Flex 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...@englewood.com> wrote:
> 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





 
Reply With Quote
 
Jules Winfield
Guest
Posts: n/a
 
      13th Jun 2007
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



 
Reply With Quote
 
Mehdi
Guest
Posts: n/a
 
      13th Jun 2007
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
"traditional" 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.
 
Reply With Quote
 
Jules Winfield
Guest
Posts: n/a
 
      13th Jun 2007
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


 
Reply With Quote
 
Chris Dunaway
Guest
Posts: n/a
 
      13th Jun 2007
On Jun 13, 10:48 am, "Jules Winfield" <ghe...@englewood.com> wrote:

> 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.



 
Reply With Quote
 
Jules Winfield
Guest
Posts: n/a
 
      13th Jun 2007
> 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.


 
Reply With Quote
 
Mihai N.
Guest
Posts: n/a
 
      14th Jun 2007
> 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
 
Reply With Quote
 
Anish
Guest
Posts: n/a
 
      14th Jun 2007
On Jun 13, 6:39 pm, "Jules Winfield" <ghe...@englewood.com> wrote:
> 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 <object> tag 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

 
Reply With Quote
 
Anish
Guest
Posts: n/a
 
      14th Jun 2007
On Jun 13, 6:54 pm, Mehdi <vio...@REMOVEME.gmail.com> wrote:
> 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
> "traditional" 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

 
Reply With Quote
 
 
 
Reply

Thread Tools
Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
code fpr conditional lock in adobe flex language mukesh Microsoft Access Forms 1 8th Aug 2009 05:24 PM
Adobe Flex vs. .NET WinForms Jules Winfield Microsoft Dot NET Framework Forms 11 21st Jun 2007 04:20 PM
On Adobe's Flash & Flex in ASP.NET ASP.NET explorer Microsoft Dot NET Framework 5 5th May 2007 12:58 AM
On Adobe's Flash & Flex in ASP.NET ASP.NET explorer Microsoft ASP .NET 5 5th May 2007 12:58 AM
On Adobe's Flash & Flex in ASP.NET ASP.NET explorer Microsoft C# .NET 5 5th May 2007 12:58 AM


Features
 

Advertising
 

Newsgroups
 


All times are GMT +1. The time now is 08:23 PM.