Migrating from flex 3 to flex 4 pros and cons

276 views Asked by At

We have a very big application which built on flex 3 SDK. What are all the pros and cons if we don't migrate and continue using flex 3 SDK.

Here are some questions:

1.Can we sustain without migrating from flex 3 to flex 4 for at least 5 years?

2.Can we upgrade to Flash Builder 4.6 + SDK 4.11 ?(but continue to run the flash builder in backward compatibility mode)

3.Is there any future support issues for application that are built on Flex 3 SDK.

Here are some points i read in stackoverflow:

If Adobe didn't seem to be pushing so hard for us NOT to use Halo, I think I'd be comfortable with that. But since they say in the actual docs that we "shouldn't use such and such" Halo components and should use the Spark ones instead, it's worrisome. It also seems like support for Halo in FB has become an afterthought (I can't get design mode to display a Halo style, even with Halo selected as the theme), so Adobe's making it difficult just to continue using it. Personally I don't see why we can't have two parallel component sets since Halo's design may work better in some use-cases. – Crusader Aug 21 '10 at 2:59 1

Actually the wording Adobe authoritatively uses (say if you're going to use "Canvas") is "use spark.components.BorderContainer instead". Well what if we don't want to? They haven't explained why we should use Spark instead, and due to it's "half complete" status now with tons of missing components, I don't really like the idea of almost guaranteeing maintenance work and updates needed to my code once SDK 5 comes out. On the other hand if we just use Halo permanently (assuming Adobe isn't going to pull the rug from it later, who knows), the code is "done" the first time. Frustrating

Thanks in advance.

3

There are 3 answers

0
Christofer Dutz On BEST ANSWER

Two things I particularly like with Flex4 in contrast to Flex3 (No matter if Adobe or Apache Flex) is that the new Flex4 components (Called Spark components) are much more lightweight implementations. The coolest new concept introduced with Flex4 however are the skinnable components.

It allows you to implement your components completely independent from the look & feel of the component (Skin). You can locate a components skin in separate modules which allows you to implement an application and depending on the client to load a "desktop", "android", "ios" or whatsoever skin-module which completely changes how your component looks and is used. Most skinning approaches of other frameworks merely allow one skin or can only change the formatting (colory, borders, margins, font sizes). In flex you could have a dialog displaying 20 Input fields at once in the desktop skin, but on mobile one, you have a step-by-step wizard approach only displaying 5 of them per page (just as an example).

Especially with the FalconJS initialive at Apache Flex it will be possible to have the compiler generate not only flash, but also a HTML+JS+CSS based output. I doubt this will be possible for the old Flex3 components.

The downside is that if you get used to Flex4 and you have to work with any other technology, you will be missing a lot of stuff. I at least got addicted to some of the concepts pretty fast.

5
zenbeni On

Adobe Flex 4 is dying, Adobe Flex 3 is already dead (hard to find developers, no patches, no new frameworks etc...), the only option I think is durable is to migrate to Apache Flex 4 as Adobe has stopped developping Flex and given it to Apache that actually has upgraded it on some points.

For the "Halo" case, if you want to use it in Flex 4 with your Flex 3 codebase you will probably get troubles such as layouts / fonts / texts that will need to be fixed. This is due to a change in font management in widgets and on some components whose properties have changed.

Also, the dependencies have changed in the SDK, be careful with produced swc as they can sometimes be only compatible with Flex 3 of only with Flex 4 (which is a pain). It will be more and more difficult to find libraries that will work with Flex 3!

There was a question a few months ago on Flex 3 with FB debug not working anymore with last Flash Player Debug, I don't know if you met this case.

To sum up, Flex 3 is already deprecated and Adobe won't support it anymore, maybe Apache will but it is not their main aim. Even Flash Builder development could be stopped, be warned. There are alternatives such as Flash Develop or Intellij hopefully.

0
aktell On

I do agree mostly with the mail above about FLEX 3 as such it seem to be dead if it comes to the web item yet I myself will continue using it as long as it is possible! OK there mite be not much new yet I think that it has still enough life in it. People just talk too much about it all yet without that there are or where many Application on the web which seem to be build in FLEX!

I just saw on a German FLEX forum something Interesting which mentioned the very same as here discussed, but what came up and what I did not knew was that the FLEX AIR Application development is still with ADOBE & that it is fully further developed by them even so they gave FLEX itself away! regards aktell