Au premier abord, on ne voit pas de gros changement. L'interface est quasi identique, on retrouve les composants que l'on connait déjà, ainsi que les principales fonctions. Mais les nouveautés sont bien là, un peu cachées il est vrai.

L'éditeur css : enfin un éditeur de css dans Flex. Ce n 'est pas encore le Pérou, mais cela permet de gagner du temps.

On dispose aussi d'un outil pour importer des skins réalisé avec PhotoshopCS3 ou autre produit de la gamme CS3.

Le datawizard : un peu à la manière de Dreamweaver, il est possible d'utiliser un datawizard pour se connecter rapidement et facilement à divers SGBD. Là encore, un gain de temps non négligeable.

Le composant Advanced Datagrid : pas de long discours, un exemple sera plus parlant.

          import mx.collections.HierarchicalData;
 
private var planets:Array = [
    { planet : 'Terrestrial',
      children : [
                    { planet : 'Mercury',
                      kind : 'terrestrial',
                      year_duration : 0.24,
                      moons : 0,
                      cost : 1250 },
                    { planet : 'Venus',
                      type : 'terrestrial',
                      year_duration : 0.62,
                      moons : 0,
                      cost : 2400 },
                ]
    },
    { planet : 'Gas giant',
      children : [
                    { planet : 'Jupiter',
                      kind : 'gas giant',
                      year_duration : 11.86,
                      moons : 63,
                      cost : 500 },
                    { planet : 'Neptune',
                      kind : 'gas giant',
                      year_duration : 164.8,
                      moons : 13,
                      cost : 3000 },
                ]
    },
    { planet : 'Ice dwarf',
      children : [
                    { planet : 'Ceres',
                      kind : 'Ice dwarf',
                      year_duration : 4.60,
                      moons : 0,
                      cost : 4000 },
                    { planet : 'Pluto',
                      kind : 'Ice dwarf',
                      year_duration : 248.09,
                      moons : 3,
                      cost : 4500 },
                    { planet : 'Eris',
                      kind : 'Ice dwarf',
                      year_duration : 557,
                      moons : 1,
                      cost : 3000 }
                ]
    }
];
		]]>
	</mx:Script>
	    <mx:AdvancedDataGrid id="adg" dataProvider="{new HierarchicalData(planets)}" x="10" y="10" width="459" height="244">
        <mx:columns>
            <mx:AdvancedDataGridColumn dataField="planet"
                                       headerText="Planet" />
            <mx:AdvancedDataGridColumn dataField="year_duration"
                                       headerText="Year duration" />
            <mx:AdvancedDataGridColumn dataField="moons"
                                       headerText="Moons" />
            <mx:AdvancedDataGridColumn dataField="cost"
                                       headerText="Cost" />
        </mx:columns>
    </mx:AdvancedDataGrid>

Ce qui nous donne :

;

Enfin, concernant AIR (ex Apollo), il y a plein de nouvelles choses, mais là encore je n'ai pas eu le temps de tout tester. Juste un petit avant-gout avec ce fichier :

<?xml version="1.0" encoding="UTF-8"?>
<application xmlns="http://ns.adobe.com/air/application/1.0.M4" appId="myApp" version="1.0 Beta">
    <name>Mon application</name>
    
    <title/>
    <description></description>
    <copyright></copyright>
    <rootContent systemChrome="standard" transparent="false" visible="true">[SWF reference is generated]</rootContent>
    <installFolder>Program Files</installFolder>
    <icon>
            <image16x16>icons/AIRApp_16.png</image16x16>     
            <image32x32>icons/AIRApp_32.png</image32x32>   
            <image48x48>icons/AIRApp_48.png</image48x48>    
            <image128x128>icons/AIRApp_128.png</image128x128>
    </icon>
    
    <!-- 
        If the handleUpdates element is present in the application descriptor, 
        then the AIR runtime will defer version updates to this application.
    -->
    <!-- <handleUpdates/> -->
    
    <!--
        One or more file types to register when this application is installed.
    -->  
	
	<!--  
        <fileTypes>
            <fileType>
                <name>com.example</name>
                <extension>xmpl</extension>
                <description>Example file</description>
                <contentType>example/x-data-type</contentType>
            </fileType>
        </fileTypes>
    -->
	
</application>

Vous noterez la nouvelle balise <installFolder>, qui nous permet donc de spécifier le répertoire d'installation d'une appli AIR 8-) .

Voilà pour aujourd'hui...la suite bientôt (code refactoring, profiling,etc...)