Welcome!

Java IoT Authors: Yeshim Deniz, Pat Romanski, Liz McMillan, Zakia Bouachraoui, Elizabeth White

Related Topics: Adobe Flex

Adobe Flex: Article

Flex Performance: Develop Each Flex Application As a Portal

Improve the download speed of your Flex RIA

In this brief article I’d like to talk about one of the most important aspects of RIA in general and written in Flex in particular – the initial download process. 

Your application is considered fast for one of two reasons:

1. Well, it is fast
2. It’s perceived to be fast

Today I’ll cover one of the approaches that we at Farata Systems successfully use in literally every enterprise project - designing any Flex application as a portal. There is one exception: Hello World type applications that don’t have any custom styling. Such simple applications can live in a single swf.

Any serious application is technically a portal that consists of a small and light shell application that appears very fast on the user’s machines and downloads (in a smart way) the RSLs that will be needed for the modules lazy loaded modules.

Needless to say that you must always deploy Flex Framework libraries as signed RSLs, which will allow shaving off a substantial amount of downloadable bytes required by your RIA. Unless you have a virgin computer that never seen Flex app, these RSLs will be stored on the user’s disk in Flash Player’s cache (don’t confuse it with the Web browser’s cache).

Now consider an application that has one light-weight main SWF and 10 modules, seven of which include charts. In other words, they rely on datavisualization.swc. During the application startup the SystemManager reads the list of RSL’s from the SWF and loads them with the help of the class of RSLListLoader.

Without going through the advantages of using the RSLs in general, I’d like to mention the fact that Adobe’s class RSLListLoader simply performs loading of all RSLs listed in the generated SystemManager for each module. This means that if the datavisualization.swc was linked in three modules, SystemManager will download it three times (this is the case when this swc was not signed and cached).

We’ve modified the RSLListLoader a little bit so it’ll avoid downloading duplicate RSLs.

One more suggestion for working with modularized applications that use BlazeDS/LCDS – do not create separate services-config.xml files for each of the module. To avoid conflicts, let them reuse one and only services-config.xml listed with the main SWF of your application. This will also allow you to properly allocate work between developers in your team – each of them can have a small test harness application and test his/her modules without the need for waiting when the other modules are ready.

In the following 7-minute screencast I’ll show you the application that has been built in such a way.

People who will attend our Enterprise Flex symposium in New York City on August 7 and Advanced Flex training in London on September will get a chance to get familiar with these techniques in greater details.

Hope to see you there.

More Stories By Yakov Fain

Yakov Fain is a Java Champion and a co-founder of the IT consultancy Farata Systems and the product company SuranceBay. He wrote a thousand blogs (http://yakovfain.com) and several books about software development. Yakov authored and co-authored such books as "Angular 2 Development with TypeScript", "Java 24-Hour Trainer", and "Enterprise Web Development". His Twitter tag is @yfain

Comments (1) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Most Recent Comments
ssedan 08/07/09 07:51:29 PM EDT

I've been developing in Flex/Flash Builder for some time and absolutely love it! IMO, it has matured to become an amazingly professional and productive web development encironment!

I wonder how small the "light shell application" can be? It seems that even a simple Flex app with just a simple text box is at least 300kB. That's pretty big so even a shell application then appears to have a long loading time (at least until cached)...

Is there any way to reduce the size of such a shell application? Any hints would be welcome!

IoT & Smart Cities Stories
Machine learning has taken residence at our cities' cores and now we can finally have "smart cities." Cities are a collection of buildings made to provide the structure and safety necessary for people to function, create and survive. Buildings are a pool of ever-changing performance data from large automated systems such as heating and cooling to the people that live and work within them. Through machine learning, buildings can optimize performance, reduce costs, and improve occupant comfort by ...
Charles Araujo is an industry analyst, internationally recognized authority on the Digital Enterprise and author of The Quantum Age of IT: Why Everything You Know About IT is About to Change. As Principal Analyst with Intellyx, he writes, speaks and advises organizations on how to navigate through this time of disruption. He is also the founder of The Institute for Digital Transformation and a sought after keynote speaker. He has been a regular contributor to both InformationWeek and CIO Insight...
Digital Transformation: Preparing Cloud & IoT Security for the Age of Artificial Intelligence. As automation and artificial intelligence (AI) power solution development and delivery, many businesses need to build backend cloud capabilities. Well-poised organizations, marketing smart devices with AI and BlockChain capabilities prepare to refine compliance and regulatory capabilities in 2018. Volumes of health, financial, technical and privacy data, along with tightening compliance requirements by...
Early Bird Registration Discount Expires on August 31, 2018 Conference Registration Link ▸ HERE. Pick from all 200 sessions in all 10 tracks, plus 22 Keynotes & General Sessions! Lunch is served two days. EXPIRES AUGUST 31, 2018. Ticket prices: ($1,295-Aug 31) ($1,495-Oct 31) ($1,995-Nov 12) ($2,500-Walk-in)
Andrew Keys is Co-Founder of ConsenSys Enterprise. He comes to ConsenSys Enterprise with capital markets, technology and entrepreneurial experience. Previously, he worked for UBS investment bank in equities analysis. Later, he was responsible for the creation and distribution of life settlement products to hedge funds and investment banks. After, he co-founded a revenue cycle management company where he learned about Bitcoin and eventually Ethereal. Andrew's role at ConsenSys Enterprise is a mul...
Nicolas Fierro is CEO of MIMIR Blockchain Solutions. He is a programmer, technologist, and operations dev who has worked with Ethereum and blockchain since 2014. His knowledge in blockchain dates to when he performed dev ops services to the Ethereum Foundation as one the privileged few developers to work with the original core team in Switzerland.
René Bostic is the Technical VP of the IBM Cloud Unit in North America. Enjoying her career with IBM during the modern millennial technological era, she is an expert in cloud computing, DevOps and emerging cloud technologies such as Blockchain. Her strengths and core competencies include a proven record of accomplishments in consensus building at all levels to assess, plan, and implement enterprise and cloud computing solutions. René is a member of the Society of Women Engineers (SWE) and a m...
Digital Transformation and Disruption, Amazon Style - What You Can Learn. Chris Kocher is a co-founder of Grey Heron, a management and strategic marketing consulting firm. He has 25+ years in both strategic and hands-on operating experience helping executives and investors build revenues and shareholder value. He has consulted with over 130 companies on innovating with new business models, product strategies and monetization. Chris has held management positions at HP and Symantec in addition to ...
The challenges of aggregating data from consumer-oriented devices, such as wearable technologies and smart thermostats, are fairly well-understood. However, there are a new set of challenges for IoT devices that generate megabytes or gigabytes of data per second. Certainly, the infrastructure will have to change, as those volumes of data will likely overwhelm the available bandwidth for aggregating the data into a central repository. Ochandarena discusses a whole new way to think about your next...
CloudEXPO | DevOpsSUMMIT | DXWorldEXPO are the world's most influential, independent events where Cloud Computing was coined and where technology buyers and vendors meet to experience and discuss the big picture of Digital Transformation and all of the strategies, tactics, and tools they need to realize their goals. Sponsors of DXWorldEXPO | CloudEXPO benefit from unmatched branding, profile building and lead generation opportunities.