SlideShare una empresa de Scribd logo
1 de 44
Discover the Unknown Flex 4.5
       Piotr Walczyszyn | Adobe Enterprise Evangelist

       Blog: riaspace.com
       Twitter: @pwalczyszyn




©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
ls -al




                                                                            AS3 secrets
                                                                            Flex secrets
                                                                            Flash Builder secrets




                                                                                      2
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
**      ******** ****
                                                                             ****    **////// */// *
                                                                            **//** /**        /      /*
                                                                          ** //** /*********      ***
                                                                         **********////////** /// *
                                                                        /**//////**        /** *     /*
                                                                        /**      /** ******** / ****
                                                                        //       // ////////    ////



                                                                                       3
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
AS3: Short conditional statements




                                                                            var someVar:Number;


                                                                            if (someVar)
                                                                                 doSomething();




                                                                                       4
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
AS3: Short constructors




                                                                            var point:Point = new Point;




                                                                                          5
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
AS3: Throwing objects



                                                                            try
                                                                            {
                                                                               throw 1;
                                                                            } 
                                                                            catch (n:Number)
                                                                            {
                                                                              trace(n); // outputs 1
                                                                            }




                                                                                        6
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
AS3: arguments class




                                                                            dispatcher.addEventListener(
                                                                              SomeEvent.TYPE,
                                                                              function(event:SomeEvent):void
                                                                              {
                                                                                EventDispatcher(event.target).
                                                                                  removeEventListener(
                                                                                    event.type,
                                                                                     arguments.callee
                                                                                  );
                                                                              });




                                                                                              7
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
AS3: ||= logical or assignment (by Sönke Rohde)



                                                                            var num:Number;
                                                                            num ||= 10;
                                                                            trace(num); // outputs 10


                                                                            num = 5;
                                                                            trace(num); // outputs 5


                                                                            num ||= 10;
                                                                            trace(num); // outputs 5




                                                                                             8
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
AS3: Getting object class type




                                                                     var clazz:Class = Object(obj).constructor;




                                                                                        9
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
AS3: Labels & continue (by Christian Cantrell)

                                      outerLoop: for (var i:uint = 0; i < outerArray.length; ++i)
                                      {
                                        var foo:String = outerArray[i];
                                        innerLoop: for (var j:uint = 0; j < innerArray.length; ++j)
                                        {
                                            var bar:String = innerArray[j];
                                            if (foo == bar)
                                            {
                                                continue outerLoop;
                                            }
                                        }
                                        trace(foo);
                                      }




                                                                            10
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
AS3: Label & break (by Christian Cantrell)



                                                 dateCheck:
                                                {
                                                  trace("Good morning.");
                                                  var today:Date = new Date();
                                                  if (today.month == 11 && today.date == 24)   // Christmas!
                                                  {
                                                      break dateCheck;
                                                  }
                                                  trace("Time for work!");
                                                }




                                                                            11
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
AS3: with statement

                                                                            function polar(r:Number):void
                                                                            {
                                                                            
 
   var a:Number, x:Number, y:Number;
                                                                            
 
   with (Math)
                                                                            
 
   {
                                                                            
 
   
     a = PI * pow(r, 2);
                                                                            
 
   
     x = r * cos(PI);
                                                                            
 
   
     y = r * sin(PI / 2);
                                                                            
 
   }
                                                                            
 
   trace("area = " + a);
                                                                            
 
   trace("x = " + x);
                                                                            
 
   trace("y = " + y);
                                                                            }
                                                                            
 
   
     
                                                                            polar(3);



                                                                                                     12
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
AS3: global functions




                                                     // globalFunction.as file
                                                     package
                                                     {
                                                     
 public function globalFunction(text:String):void
                                                     
{
                                                     
 
 trace(text);
                                                     
}
                                                     }




                                                                             13
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
AS3: internal functions



                                    protected function someFunction():void
                                    {
                                    

             var internalFunction:Function = function(text:String):void
                                    

             {
                                    

             
          trace(text);
                                    

             };
                                    

             
          
                                    

             internalFunction("Hello World!");
                                    }




                                                                             14
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
AS3: custom namespaces (by Mihai Corlan)


                                           // online.as file
                                           package org.corlan
                                           {
                                                 public namespace online = "http://corlan.org/apps/online";
                                           }


                                           // offline.as file
                                           package org.corlan
                                           {
                                                 public namespace offline = "http://corlan.org/apps/offline";
                                           }




                                                                             15
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
AS3: custom namespaces (by Mihai Corlan)
                                                                        online function save(object:Object):void
                                                                        {
                                                                            //save the object back to server
                                                                            trace("online");
                                                                        }


                                                                        offline function save(object:Object):void
                                                                        {
                                                                            //save the object locally
                                                                            trace("offline");
                                                                        }


                                                                        ...
                                                                        online::save(obj);
                                                                        offline::save(obj);
                                                                                                16
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
AS3: Proxy class
                                 dynamic class MyProxy extends Proxy
                                 {
                                                 flash_proxy override function callProperty(name:*, ...rest):*
                                                 {
                                                              // function call proxy
                                                 }
                                                 flash_proxy override function getProperty(name:*):*
                                                 {
                                                              // getter call proxy
                                                 }
                                                 flash_proxy override function setProperty(name:*, value:*):void
                                                 {
                                                              // setter call proxy
                                                 }
                                 }
                                                                                       17
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
********
                                                                            /**/////
                                                                            /**        **   **
                                                                            /******* //** **
                                                                            /**////    //***
                                                                            /**         **/**
                                                                            /**        ** //**
                                                                            //        //   //




                                                                                    18
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Fx: ObjectProxy class




                   warning: unable to bind to property 'propName' on class 'Object' (class is not an IEventDispatcher)




                                                                            19
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Fx: ObjectProxy class
                   warning: unable to bind to property 'propName' on class 'Object' (class is not an IEventDispatcher)




                                                                            19
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Fx: ObjectProxy class
                   warning: unable to bind to property 'propName' on class 'Object' (class is not an IEventDispatcher)




                                                                            var obj:Object = {propName : “prop value”};
                                                                            var objProxy:ObjectProxy = new ObjectProxy(obj);


                                                                            ...


                                                                            <s:Label text=”{objProxy.propName}” />




                                                                                                  19
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Fx: <fx:Library> & <fx:Definition>
                                                                   <?xml version="1.0" encoding="utf-8"?>
                                                                   <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
                                                                            xmlns:mx="library://ns.adobe.com/flex/mx"
                                                                            xmlns:s="library://ns.adobe.com/flex/spark">
                                                                             <fx:Library>
                                                                                  <fx:Definition name="MySquare">
                                                                                       <s:Group>
                                                                                             <s:Rect width="100%" height="100%">
                                                                                                    <s:stroke>
                                                                                                         <s:SolidColorStroke color="red"/>
                                                                                                    </s:stroke>
                                                                                             </s:Rect>
                                                                                       </s:Group>
                                                                                  </fx:Definition>
                                                                             </fx:Library>


                                                                             <fx:MySquare x="0" y="0" height="20" width="20"/>
                                                                   </s:Application>

                                                                                                    20
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Fx: <fx:Private>

                                                                <?xml version="1.0" encoding="utf-8"?>
                                                                <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
                                                                             xmlns:mx="library://ns.adobe.com/flex/mx"
                                                                             xmlns:s="library://ns.adobe.com/flex/spark">

                                                                
 <fx:Declarations>
                                                                
 </fx:Declarations>

                                                                      <!-- has to be last tag in MXML doc -->
                                                                      <fx:Private>
                                                                            <!-- content must be in XML format -->
                                                                            <Date>10/22/2008</Date>
                                                                            <Author>Nick Danger</Author>
                                                                      </fx:Private>

                                                                </s:Application>


                                                                                                21
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Fx: <fx:Reparent>
                                                      
 <s:states>
                                                      
 
            <s:State name="portrait" />
                                                      
 
            <s:State name="landscape" />
                                                      
 </s:states>
                                                      
 <s:VGroup includeIn="portrait" width="100%" height="100%">
                                                      
 
            <s:Rect id="redRect" includeIn="portrait" width="100%" height="100%">
                                                      
 
            
      <s:fill>
                                                      
 
            
      
   <s:SolidColor color="#FF0000" />
                                                      
 
            
      </s:fill>
                                                      
 
            </s:Rect>
                                                      
 
            <s:Rect id="blackRect" includeIn="portrait" width="100%" height="100%">
                                                      
 
            
      <s:fill>
                                                      
 
            
      
   <s:SolidColor color="#000000" />
                                                      
 
            
      </s:fill>
                                                      
 
            </s:Rect>
                                                      
 </s:VGroup>
                                                      
 <s:HGroup includeIn="landscape" width="100%" height="100%">
                                                      
 
            <fx:Reparent target="redRect" includeIn="landscape" />
                                                      
 
            <fx:Reparent target="blackRect" includeIn="landscape" />
                                                      
 </s:HGroup>
                                                                                                     22
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Fx: states (by Steve Hartley)
                                                                     <s:states>
                                                                     
 <s:State name="portrait" />
                                                                     
 <s:State name="landscape" />
                                                                     </s:states>

                                                                     <s:Group width="100%" height="100%">
                                                                     
 
    <s:layout.portrait>
                                                                     
 
    
   <s:VerticalLayout />
                                                                     
 
    </s:layout.portrait>
                                                                     
 
                                                                     
 
    <s:layout.landscape>
                                                                     
 
    
   <s:HorizontalLayout />
                                                                     
 
    </s:layout.landscape>
                                                                     
 
                                                                     
 
    <fx:RedRectangle width="100%" height="100%" />
                                                                     
 
    <fx:BlackRectangle width="100%" height="100%" />
                                                                     
 </s:Group>

                                                                                                   23
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Fx: state groups (by Narciso (nj) Jaramillo)

                      <s:states>
                      
 <s:State name="portraitPhone" stateGroups="portrait,phone" />
                      
 <s:State name="landscapePhone" stateGroups="landscape,phone" />
                      
 <s:State name="portraitTablet" stateGroups="portrait,tablet" />
                      
 <s:State name="landscapeTablet" stateGroups="landscape,tablet" />
                      </s:states>


                      <s:ViewNavigator id="mainNavigator"
                                    left="0" left.landscapeTablet="{LIST_WIDTH}"
                                    top="0" top.portraitTablet="{ACTIONBAR_HEIGHT + LIST_HEIGHT}"
                                    right="0" bottom="0" firstView="views.SummaryView"
                      
           firstView.tablet="views.DetailView”
                                                                     />          



                                                                            24
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Fx: IMXMLObject
                                       package
                                       {
                                       
 import mx.core.IMXMLObject;
                                       
                                       
 public class MyMXMLObject implements IMXMLObject
                                       
 {
                                       
 
             public function initialized(document:Object, id:String):void
                                       
 
             {
                                       
 
             
         trace("Added to:", document, "with id:", id);
                                       
 
             }
                                       
 }
                                       }
                                       ...
                                       <fx:Declarations>
                                       
 <local:MyMXMLObject id="myMXMLObject" />
                                       </fx:Declarations>


                                                                                            25
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Fx: FlexGlobals.topApplication




                                                        <?xml version="1.0" encoding="utf-8"?>
                                                        <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
                                                        
 
             
   
    xmlns:s="library://ns.adobe.com/flex/spark">
                                                        
                                                        
 <fx:Declarations>
                                                        
 
             <fx:String id="myString">Hello World?!</fx:String>
                                                        
 </fx:Declarations>
                                                        
                                                        </s:Application>




                                                                                               26
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Fx: FlexGlobals.topApplication
                                     <?xml version="1.0" encoding="utf-8"?>
                                     <s:View xmlns:fx="http://ns.adobe.com/mxml/2009"
                                     
 
             xmlns:s="library://ns.adobe.com/flex/spark" title="FlexGlobals" xmlns:local="*"
                                     
 
             creationComplete="view_creationCompleteHandler(event)">
                                     
                                     
 <fx:Script>
                                     
 
             <![CDATA[
                                     
 
             
         import mx.core.FlexGlobals;
                                     
 
             
         import mx.events.FlexEvent;
                                     
 
             
                                     
 
             
         protected function view_creationCompleteHandler(event:FlexEvent):void
                                     
 
             
         {
                                     
 
             
         
            lbl.text = FlexGlobals.topLevelApplication.myString;
                                     
 
             
         }
                                     
 
             ]]>
                                     
 </fx:Script>
                                     
 <s:Label id="lbl" verticalCenter="0" horizontalCenter="0" />
                                     </s:View>

                                                                                                      27
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Fx: conditional compilation

                          CONFIG::android
                          protected function view_creationCompleteHandler(event:FlexEvent):void
                          {
                          

              lbl.text = "Android: " + FlexGlobals.topLevelApplication.myString;
                          }
                          

              
                          CONFIG::ios
                          protected function view_creationCompleteHandler(event:FlexEvent):void
                          {
                          

              lbl.text = "iOS: " + FlexGlobals.topLevelApplication.myString;
                          }




                                                                            28
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Fx: conditional compilation




                                                                            29
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
FB: keeping generated ActionScript




                                                                            30
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
******** ******
                                                                            /**///// /*////**
                                                                            /**      /*   /**
                                                                            /******* /******
                                                                            /**//// /*//// **
                                                                            /**      /*    /**
                                                                            /**      /*******
                                                                            //       ///////




                                                                                    31
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
FB: Press Ctrl+Space to invoke Content Assist.




                                                                            32
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
FB: Metadata code completion




                                                                            33
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
FB: Code completion when using states




                                                                            34
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
FB: Camel-case code hinting




                                                                            35
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
FB: Quick Assist - Press Cmd/Ctrl+1




                                                                            * Rename in file
                                                                            * Rename in workspace
                                                                            * Generate getter/setter
                                                                            * Convert local variable to field
                                                                            * Assign to variable
                                                                            * Split variable declaration
                                                                            * Organize imports



                                                                                              36
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
FB: Quick Outline - Press Cmd/Ctrl+O




                                                                            37
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
FB: Code templates




                                                                            38
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
FB: Organize imports




                                                     Place your cursor on an import statement, press
                                                     Cmd/Ctrl+1, and select Organize Imports.

                                                     To sort the import statements alphabetically by
                                                     package name, press Cmd/Ctrl+Shift+O.




                                                                             39
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
FB: Call Hierarchy (Cmd/Ctrl+Alt+H)




                                                                            40
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
FB: other shortcuts


                                                      Cmd/Ctrl+I - Fixing indentation
                                                      Cmd/Ctrl+Shift+C - Code commenting
                                                      Cmd/Ctrl+Shift+D - Adding CDATA blocks (<![CDATA[ ]]>)
                                                      Cmd/Ctrl+Shift+F - Format MXML documents


                                                                 - Block selection and edit mode



                                                      Cmd/Ctrl+Shift+L - Complete list of shortcuts




                                                                                     41
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Más contenido relacionado

Destacado

Ruby Plugins for Jenkins
Ruby Plugins for JenkinsRuby Plugins for Jenkins
Ruby Plugins for Jenkinscowboyd
 
『ユーザーストーリーマッピング ~再演~』第4回 POStudy 〜プロダクトオーナーシップ勉強会〜
『ユーザーストーリーマッピング ~再演~』第4回 POStudy 〜プロダクトオーナーシップ勉強会〜『ユーザーストーリーマッピング ~再演~』第4回 POStudy 〜プロダクトオーナーシップ勉強会〜
『ユーザーストーリーマッピング ~再演~』第4回 POStudy 〜プロダクトオーナーシップ勉強会〜満徳 関
 
『アジャイルとスクラム』第1回 POStudy 〜プロダクトオーナーシップ勉強会〜
『アジャイルとスクラム』第1回 POStudy 〜プロダクトオーナーシップ勉強会〜『アジャイルとスクラム』第1回 POStudy 〜プロダクトオーナーシップ勉強会〜
『アジャイルとスクラム』第1回 POStudy 〜プロダクトオーナーシップ勉強会〜満徳 関
 
ユーザーストーリー:ファースト・ジェネレーション
ユーザーストーリー:ファースト・ジェネレーションユーザーストーリー:ファースト・ジェネレーション
ユーザーストーリー:ファースト・ジェネレーションMasanori Kado
 
ユーザーストーリー作り(DevLOVE道場第二回)
ユーザーストーリー作り(DevLOVE道場第二回)ユーザーストーリー作り(DevLOVE道場第二回)
ユーザーストーリー作り(DevLOVE道場第二回)Kiichi Kajiura
 
『ユーザーストーリーマッピング ~前編~』第2回 POStudy 〜プロダクトオーナーシップ勉強会〜
『ユーザーストーリーマッピング ~前編~』第2回 POStudy 〜プロダクトオーナーシップ勉強会〜『ユーザーストーリーマッピング ~前編~』第2回 POStudy 〜プロダクトオーナーシップ勉強会〜
『ユーザーストーリーマッピング ~前編~』第2回 POStudy 〜プロダクトオーナーシップ勉強会〜満徳 関
 
Jenkins実践入門目次チラ見せしちゃいます
Jenkins実践入門目次チラ見せしちゃいますJenkins実践入門目次チラ見せしちゃいます
Jenkins実践入門目次チラ見せしちゃいますMasanori Satoh
 
Jenkins the definitive guide lt(第四回jenkins勉強会)
Jenkins the definitive guide lt(第四回jenkins勉強会)Jenkins the definitive guide lt(第四回jenkins勉強会)
Jenkins the definitive guide lt(第四回jenkins勉強会)Ryuji Tamagawa
 
Jenkins user conference 2011
Jenkins user conference 2011Jenkins user conference 2011
Jenkins user conference 2011Kohsuke Kawaguchi
 
輪るビングドラム.NET
輪るビングドラム.NET輪るビングドラム.NET
輪るビングドラム.NETbleis tift
 
アジャイルサムライ読書会(湯島道場) 第一回 地の巻「アジャイルをはじめる前に」
アジャイルサムライ読書会(湯島道場) 第一回 地の巻「アジャイルをはじめる前に」アジャイルサムライ読書会(湯島道場) 第一回 地の巻「アジャイルをはじめる前に」
アジャイルサムライ読書会(湯島道場) 第一回 地の巻「アジャイルをはじめる前に」Takahiro Nohdomi
 
アジャイルサムライ読書会湯島道場開催概要
アジャイルサムライ読書会湯島道場開催概要アジャイルサムライ読書会湯島道場開催概要
アジャイルサムライ読書会湯島道場開催概要Kiichi Kajiura
 
Introduction to facilitation
Introduction to facilitationIntroduction to facilitation
Introduction to facilitationEiichi Hayashi
 
【Agile Conference tokyo 2011】 継続的フィードバック
【Agile Conference tokyo 2011】 継続的フィードバック【Agile Conference tokyo 2011】 継続的フィードバック
【Agile Conference tokyo 2011】 継続的フィードバック智治 長沢
 
アジャイルサムライ読書会湯島道場第一回Lt
アジャイルサムライ読書会湯島道場第一回Ltアジャイルサムライ読書会湯島道場第一回Lt
アジャイルサムライ読書会湯島道場第一回LtKiichi Kajiura
 

Destacado (20)

Ruby Plugins for Jenkins
Ruby Plugins for JenkinsRuby Plugins for Jenkins
Ruby Plugins for Jenkins
 
『ユーザーストーリーマッピング ~再演~』第4回 POStudy 〜プロダクトオーナーシップ勉強会〜
『ユーザーストーリーマッピング ~再演~』第4回 POStudy 〜プロダクトオーナーシップ勉強会〜『ユーザーストーリーマッピング ~再演~』第4回 POStudy 〜プロダクトオーナーシップ勉強会〜
『ユーザーストーリーマッピング ~再演~』第4回 POStudy 〜プロダクトオーナーシップ勉強会〜
 
『アジャイルとスクラム』第1回 POStudy 〜プロダクトオーナーシップ勉強会〜
『アジャイルとスクラム』第1回 POStudy 〜プロダクトオーナーシップ勉強会〜『アジャイルとスクラム』第1回 POStudy 〜プロダクトオーナーシップ勉強会〜
『アジャイルとスクラム』第1回 POStudy 〜プロダクトオーナーシップ勉強会〜
 
ユーザーストーリー:ファースト・ジェネレーション
ユーザーストーリー:ファースト・ジェネレーションユーザーストーリー:ファースト・ジェネレーション
ユーザーストーリー:ファースト・ジェネレーション
 
ユーザーストーリー作り(DevLOVE道場第二回)
ユーザーストーリー作り(DevLOVE道場第二回)ユーザーストーリー作り(DevLOVE道場第二回)
ユーザーストーリー作り(DevLOVE道場第二回)
 
『ユーザーストーリーマッピング ~前編~』第2回 POStudy 〜プロダクトオーナーシップ勉強会〜
『ユーザーストーリーマッピング ~前編~』第2回 POStudy 〜プロダクトオーナーシップ勉強会〜『ユーザーストーリーマッピング ~前編~』第2回 POStudy 〜プロダクトオーナーシップ勉強会〜
『ユーザーストーリーマッピング ~前編~』第2回 POStudy 〜プロダクトオーナーシップ勉強会〜
 
Jenkins実践入門目次チラ見せしちゃいます
Jenkins実践入門目次チラ見せしちゃいますJenkins実践入門目次チラ見せしちゃいます
Jenkins実践入門目次チラ見せしちゃいます
 
20110118 scrum 10 mins
20110118 scrum 10 mins20110118 scrum 10 mins
20110118 scrum 10 mins
 
Jenkins the definitive guide lt(第四回jenkins勉強会)
Jenkins the definitive guide lt(第四回jenkins勉強会)Jenkins the definitive guide lt(第四回jenkins勉強会)
Jenkins the definitive guide lt(第四回jenkins勉強会)
 
Jenkins user conference 2011
Jenkins user conference 2011Jenkins user conference 2011
Jenkins user conference 2011
 
SCM Boot Camp
SCM Boot CampSCM Boot Camp
SCM Boot Camp
 
Jenkinsstudy#4kokawa
Jenkinsstudy#4kokawaJenkinsstudy#4kokawa
Jenkinsstudy#4kokawa
 
輪るビングドラム.NET
輪るビングドラム.NET輪るビングドラム.NET
輪るビングドラム.NET
 
アジャイルサムライ読書会(湯島道場) 第一回 地の巻「アジャイルをはじめる前に」
アジャイルサムライ読書会(湯島道場) 第一回 地の巻「アジャイルをはじめる前に」アジャイルサムライ読書会(湯島道場) 第一回 地の巻「アジャイルをはじめる前に」
アジャイルサムライ読書会(湯島道場) 第一回 地の巻「アジャイルをはじめる前に」
 
アジャイルサムライ読書会湯島道場開催概要
アジャイルサムライ読書会湯島道場開催概要アジャイルサムライ読書会湯島道場開催概要
アジャイルサムライ読書会湯島道場開催概要
 
Grails 2.0.0.M1の話
Grails 2.0.0.M1の話 Grails 2.0.0.M1の話
Grails 2.0.0.M1の話
 
Introduction to facilitation
Introduction to facilitationIntroduction to facilitation
Introduction to facilitation
 
【Agile Conference tokyo 2011】 継続的フィードバック
【Agile Conference tokyo 2011】 継続的フィードバック【Agile Conference tokyo 2011】 継続的フィードバック
【Agile Conference tokyo 2011】 継続的フィードバック
 
アジャイルサムライ読書会湯島道場第一回Lt
アジャイルサムライ読書会湯島道場第一回Ltアジャイルサムライ読書会湯島道場第一回Lt
アジャイルサムライ読書会湯島道場第一回Lt
 
TDD Boot Camp
TDD Boot CampTDD Boot Camp
TDD Boot Camp
 

Similar a Discover The Unknown Flex 4.5 (MAX 2011)

iOS overview
iOS overviewiOS overview
iOS overviewgupta25
 
Towards JVM Dynamic Languages Toolchain
Towards JVM Dynamic Languages ToolchainTowards JVM Dynamic Languages Toolchain
Towards JVM Dynamic Languages ToolchainAttila Szegedi
 
Symbian OS - Memory Management
Symbian OS - Memory ManagementSymbian OS - Memory Management
Symbian OS - Memory ManagementAndreas Jakl
 
Defcon 22 - Stitching numbers - generating rop payloads from in memory numbers
Defcon 22 - Stitching numbers - generating rop payloads from in memory numbersDefcon 22 - Stitching numbers - generating rop payloads from in memory numbers
Defcon 22 - Stitching numbers - generating rop payloads from in memory numbersAlexandre Moneger
 
Swift 2.0: Apple’s Advanced Programming Platform for Developers
Swift 2.0: Apple’s Advanced Programming Platform for DevelopersSwift 2.0: Apple’s Advanced Programming Platform for Developers
Swift 2.0: Apple’s Advanced Programming Platform for DevelopersAzilen Technologies Pvt. Ltd.
 
Scalaz By Example (An IO Taster) -- PDXScala Meetup Jan 2014
Scalaz By Example (An IO Taster) -- PDXScala Meetup Jan 2014Scalaz By Example (An IO Taster) -- PDXScala Meetup Jan 2014
Scalaz By Example (An IO Taster) -- PDXScala Meetup Jan 2014Susan Potter
 
A brief overview of java frameworks
A brief overview of java frameworksA brief overview of java frameworks
A brief overview of java frameworksMD Sayem Ahmed
 
Browser exploitation SEC-T 2019 stockholm
Browser exploitation SEC-T 2019 stockholmBrowser exploitation SEC-T 2019 stockholm
Browser exploitation SEC-T 2019 stockholmJameel Nabbo
 
Getting Started with ECS: An Easy Way to Run Docker Containers - AWS Summit A...
Getting Started with ECS: An Easy Way to Run Docker Containers - AWS Summit A...Getting Started with ECS: An Easy Way to Run Docker Containers - AWS Summit A...
Getting Started with ECS: An Easy Way to Run Docker Containers - AWS Summit A...Tung Nguyen
 
Openframworks x Mobile
Openframworks x MobileOpenframworks x Mobile
Openframworks x MobileJanet Huang
 
eZ publish 5[-alpha1] Introduction & Architecture
eZ publish 5[-alpha1] Introduction & ArchitectureeZ publish 5[-alpha1] Introduction & Architecture
eZ publish 5[-alpha1] Introduction & ArchitectureAndré Rømcke
 
Getting Started with Amazon ECS: Run Docker Containers on AWS
Getting Started with Amazon ECS: Run Docker Containers on AWSGetting Started with Amazon ECS: Run Docker Containers on AWS
Getting Started with Amazon ECS: Run Docker Containers on AWSTung Nguyen
 
Sony C#/.NET component set analysis
Sony C#/.NET component set analysisSony C#/.NET component set analysis
Sony C#/.NET component set analysisPVS-Studio
 
Composing an App with Free Monads (using Cats)
Composing an App with Free Monads (using Cats)Composing an App with Free Monads (using Cats)
Composing an App with Free Monads (using Cats)Hermann Hueck
 
Rein_in_the_ability_of_log4j
Rein_in_the_ability_of_log4jRein_in_the_ability_of_log4j
Rein_in_the_ability_of_log4jRazorsight
 
AWS Summit Santa Slara 2019 Mar ECS
AWS Summit Santa Slara 2019 Mar ECSAWS Summit Santa Slara 2019 Mar ECS
AWS Summit Santa Slara 2019 Mar ECSTung Nguyen
 

Similar a Discover The Unknown Flex 4.5 (MAX 2011) (20)

Extending and scripting PDT
Extending and scripting PDTExtending and scripting PDT
Extending and scripting PDT
 
iOS overview
iOS overviewiOS overview
iOS overview
 
55j7
55j755j7
55j7
 
Using the Windows 8 Runtime from C++
Using the Windows 8 Runtime from C++Using the Windows 8 Runtime from C++
Using the Windows 8 Runtime from C++
 
Towards JVM Dynamic Languages Toolchain
Towards JVM Dynamic Languages ToolchainTowards JVM Dynamic Languages Toolchain
Towards JVM Dynamic Languages Toolchain
 
Symbian OS - Memory Management
Symbian OS - Memory ManagementSymbian OS - Memory Management
Symbian OS - Memory Management
 
Defcon 22 - Stitching numbers - generating rop payloads from in memory numbers
Defcon 22 - Stitching numbers - generating rop payloads from in memory numbersDefcon 22 - Stitching numbers - generating rop payloads from in memory numbers
Defcon 22 - Stitching numbers - generating rop payloads from in memory numbers
 
Swift 2.0: Apple’s Advanced Programming Platform for Developers
Swift 2.0: Apple’s Advanced Programming Platform for DevelopersSwift 2.0: Apple’s Advanced Programming Platform for Developers
Swift 2.0: Apple’s Advanced Programming Platform for Developers
 
Scalaz By Example (An IO Taster) -- PDXScala Meetup Jan 2014
Scalaz By Example (An IO Taster) -- PDXScala Meetup Jan 2014Scalaz By Example (An IO Taster) -- PDXScala Meetup Jan 2014
Scalaz By Example (An IO Taster) -- PDXScala Meetup Jan 2014
 
A brief overview of java frameworks
A brief overview of java frameworksA brief overview of java frameworks
A brief overview of java frameworks
 
Browser exploitation SEC-T 2019 stockholm
Browser exploitation SEC-T 2019 stockholmBrowser exploitation SEC-T 2019 stockholm
Browser exploitation SEC-T 2019 stockholm
 
Getting Started with ECS: An Easy Way to Run Docker Containers - AWS Summit A...
Getting Started with ECS: An Easy Way to Run Docker Containers - AWS Summit A...Getting Started with ECS: An Easy Way to Run Docker Containers - AWS Summit A...
Getting Started with ECS: An Easy Way to Run Docker Containers - AWS Summit A...
 
Openframworks x Mobile
Openframworks x MobileOpenframworks x Mobile
Openframworks x Mobile
 
eZ publish 5[-alpha1] Introduction & Architecture
eZ publish 5[-alpha1] Introduction & ArchitectureeZ publish 5[-alpha1] Introduction & Architecture
eZ publish 5[-alpha1] Introduction & Architecture
 
Getting Started with Amazon ECS: Run Docker Containers on AWS
Getting Started with Amazon ECS: Run Docker Containers on AWSGetting Started with Amazon ECS: Run Docker Containers on AWS
Getting Started with Amazon ECS: Run Docker Containers on AWS
 
Sony C#/.NET component set analysis
Sony C#/.NET component set analysisSony C#/.NET component set analysis
Sony C#/.NET component set analysis
 
Composing an App with Free Monads (using Cats)
Composing an App with Free Monads (using Cats)Composing an App with Free Monads (using Cats)
Composing an App with Free Monads (using Cats)
 
Type-safe DSLs
Type-safe DSLsType-safe DSLs
Type-safe DSLs
 
Rein_in_the_ability_of_log4j
Rein_in_the_ability_of_log4jRein_in_the_ability_of_log4j
Rein_in_the_ability_of_log4j
 
AWS Summit Santa Slara 2019 Mar ECS
AWS Summit Santa Slara 2019 Mar ECSAWS Summit Santa Slara 2019 Mar ECS
AWS Summit Santa Slara 2019 Mar ECS
 

Más de Piotr Walczyszyn

Flex/AS3 Architecture And Dependency Injection Frameworks Overview
Flex/AS3 Architecture And Dependency Injection Frameworks OverviewFlex/AS3 Architecture And Dependency Injection Frameworks Overview
Flex/AS3 Architecture And Dependency Injection Frameworks OverviewPiotr Walczyszyn
 
Środowisko adobe air jako platforma do budowania gier
Środowisko adobe air jako platforma do budowania gierŚrodowisko adobe air jako platforma do budowania gier
Środowisko adobe air jako platforma do budowania gierPiotr Walczyszyn
 
Presentation Model pattern with Flex and Swiz framework
Presentation Model pattern with Flex and Swiz frameworkPresentation Model pattern with Flex and Swiz framework
Presentation Model pattern with Flex and Swiz frameworkPiotr Walczyszyn
 
Budowanie aplikacji kontekstowych z użyciem Adobe AIR i Flex
Budowanie aplikacji kontekstowych z użyciem Adobe AIR i FlexBudowanie aplikacji kontekstowych z użyciem Adobe AIR i Flex
Budowanie aplikacji kontekstowych z użyciem Adobe AIR i FlexPiotr Walczyszyn
 
Augmented Reality in the browser and on the desktop with Flash Platform
Augmented Reality in the browser and on the desktop with Flash PlatformAugmented Reality in the browser and on the desktop with Flash Platform
Augmented Reality in the browser and on the desktop with Flash PlatformPiotr Walczyszyn
 
Budowanie Nowoczesnych Aplikacji Internetowych (RIA)
Budowanie Nowoczesnych Aplikacji Internetowych (RIA)Budowanie Nowoczesnych Aplikacji Internetowych (RIA)
Budowanie Nowoczesnych Aplikacji Internetowych (RIA)Piotr Walczyszyn
 

Más de Piotr Walczyszyn (7)

Flash - Pogromcy Mitów
Flash - Pogromcy MitówFlash - Pogromcy Mitów
Flash - Pogromcy Mitów
 
Flex/AS3 Architecture And Dependency Injection Frameworks Overview
Flex/AS3 Architecture And Dependency Injection Frameworks OverviewFlex/AS3 Architecture And Dependency Injection Frameworks Overview
Flex/AS3 Architecture And Dependency Injection Frameworks Overview
 
Środowisko adobe air jako platforma do budowania gier
Środowisko adobe air jako platforma do budowania gierŚrodowisko adobe air jako platforma do budowania gier
Środowisko adobe air jako platforma do budowania gier
 
Presentation Model pattern with Flex and Swiz framework
Presentation Model pattern with Flex and Swiz frameworkPresentation Model pattern with Flex and Swiz framework
Presentation Model pattern with Flex and Swiz framework
 
Budowanie aplikacji kontekstowych z użyciem Adobe AIR i Flex
Budowanie aplikacji kontekstowych z użyciem Adobe AIR i FlexBudowanie aplikacji kontekstowych z użyciem Adobe AIR i Flex
Budowanie aplikacji kontekstowych z użyciem Adobe AIR i Flex
 
Augmented Reality in the browser and on the desktop with Flash Platform
Augmented Reality in the browser and on the desktop with Flash PlatformAugmented Reality in the browser and on the desktop with Flash Platform
Augmented Reality in the browser and on the desktop with Flash Platform
 
Budowanie Nowoczesnych Aplikacji Internetowych (RIA)
Budowanie Nowoczesnych Aplikacji Internetowych (RIA)Budowanie Nowoczesnych Aplikacji Internetowych (RIA)
Budowanie Nowoczesnych Aplikacji Internetowych (RIA)
 

Último

From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024SynarionITSolutions
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 

Último (20)

From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 

Discover The Unknown Flex 4.5 (MAX 2011)

  • 1. Discover the Unknown Flex 4.5 Piotr Walczyszyn | Adobe Enterprise Evangelist Blog: riaspace.com Twitter: @pwalczyszyn ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 2. ls -al AS3 secrets Flex secrets Flash Builder secrets 2 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 3. ** ******** **** **** **////// */// * **//** /** / /* ** //** /********* *** **********////////** /// * /**//////** /** * /* /** /** ******** / **** // // //////// //// 3 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 4. AS3: Short conditional statements var someVar:Number; if (someVar)      doSomething(); 4 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 5. AS3: Short constructors var point:Point = new Point; 5 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 6. AS3: Throwing objects try { throw 1; }  catch (n:Number) { trace(n); // outputs 1 } 6 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 7. AS3: arguments class dispatcher.addEventListener( SomeEvent.TYPE, function(event:SomeEvent):void { EventDispatcher(event.target). removeEventListener( event.type, arguments.callee ); }); 7 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 8. AS3: ||= logical or assignment (by Sönke Rohde) var num:Number; num ||= 10; trace(num); // outputs 10 num = 5; trace(num); // outputs 5 num ||= 10; trace(num); // outputs 5 8 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 9. AS3: Getting object class type var clazz:Class = Object(obj).constructor; 9 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 10. AS3: Labels & continue (by Christian Cantrell) outerLoop: for (var i:uint = 0; i < outerArray.length; ++i) { var foo:String = outerArray[i]; innerLoop: for (var j:uint = 0; j < innerArray.length; ++j) { var bar:String = innerArray[j]; if (foo == bar) { continue outerLoop; } } trace(foo); } 10 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 11. AS3: Label & break (by Christian Cantrell) dateCheck: { trace("Good morning."); var today:Date = new Date(); if (today.month == 11 && today.date == 24) // Christmas! { break dateCheck; } trace("Time for work!"); } 11 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 12. AS3: with statement function polar(r:Number):void { var a:Number, x:Number, y:Number; with (Math) { a = PI * pow(r, 2); x = r * cos(PI); y = r * sin(PI / 2); } trace("area = " + a); trace("x = " + x); trace("y = " + y); } polar(3); 12 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 13. AS3: global functions // globalFunction.as file package { public function globalFunction(text:String):void { trace(text); } } 13 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 14. AS3: internal functions protected function someFunction():void { var internalFunction:Function = function(text:String):void { trace(text); }; internalFunction("Hello World!"); } 14 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 15. AS3: custom namespaces (by Mihai Corlan) // online.as file package org.corlan { public namespace online = "http://corlan.org/apps/online"; } // offline.as file package org.corlan { public namespace offline = "http://corlan.org/apps/offline"; } 15 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 16. AS3: custom namespaces (by Mihai Corlan) online function save(object:Object):void { //save the object back to server trace("online"); } offline function save(object:Object):void { //save the object locally trace("offline"); } ... online::save(obj); offline::save(obj); 16 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 17. AS3: Proxy class dynamic class MyProxy extends Proxy { flash_proxy override function callProperty(name:*, ...rest):* { // function call proxy } flash_proxy override function getProperty(name:*):* { // getter call proxy } flash_proxy override function setProperty(name:*, value:*):void { // setter call proxy } } 17 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 18. ******** /**///// /** ** ** /******* //** ** /**//// //*** /** **/** /** ** //** // // // 18 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 19. Fx: ObjectProxy class warning: unable to bind to property 'propName' on class 'Object' (class is not an IEventDispatcher) 19 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 20. Fx: ObjectProxy class warning: unable to bind to property 'propName' on class 'Object' (class is not an IEventDispatcher) 19 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 21. Fx: ObjectProxy class warning: unable to bind to property 'propName' on class 'Object' (class is not an IEventDispatcher) var obj:Object = {propName : “prop value”}; var objProxy:ObjectProxy = new ObjectProxy(obj); ... <s:Label text=”{objProxy.propName}” /> 19 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 22. Fx: <fx:Library> & <fx:Definition> <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:mx="library://ns.adobe.com/flex/mx" xmlns:s="library://ns.adobe.com/flex/spark"> <fx:Library> <fx:Definition name="MySquare"> <s:Group> <s:Rect width="100%" height="100%"> <s:stroke> <s:SolidColorStroke color="red"/> </s:stroke> </s:Rect> </s:Group> </fx:Definition> </fx:Library> <fx:MySquare x="0" y="0" height="20" width="20"/> </s:Application> 20 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 23. Fx: <fx:Private> <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:mx="library://ns.adobe.com/flex/mx" xmlns:s="library://ns.adobe.com/flex/spark"> <fx:Declarations> </fx:Declarations> <!-- has to be last tag in MXML doc --> <fx:Private> <!-- content must be in XML format --> <Date>10/22/2008</Date> <Author>Nick Danger</Author> </fx:Private> </s:Application> 21 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 24. Fx: <fx:Reparent> <s:states> <s:State name="portrait" /> <s:State name="landscape" /> </s:states> <s:VGroup includeIn="portrait" width="100%" height="100%"> <s:Rect id="redRect" includeIn="portrait" width="100%" height="100%"> <s:fill> <s:SolidColor color="#FF0000" /> </s:fill> </s:Rect> <s:Rect id="blackRect" includeIn="portrait" width="100%" height="100%"> <s:fill> <s:SolidColor color="#000000" /> </s:fill> </s:Rect> </s:VGroup> <s:HGroup includeIn="landscape" width="100%" height="100%"> <fx:Reparent target="redRect" includeIn="landscape" /> <fx:Reparent target="blackRect" includeIn="landscape" /> </s:HGroup> 22 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 25. Fx: states (by Steve Hartley) <s:states> <s:State name="portrait" /> <s:State name="landscape" /> </s:states> <s:Group width="100%" height="100%"> <s:layout.portrait> <s:VerticalLayout /> </s:layout.portrait> <s:layout.landscape> <s:HorizontalLayout /> </s:layout.landscape> <fx:RedRectangle width="100%" height="100%" /> <fx:BlackRectangle width="100%" height="100%" /> </s:Group> 23 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 26. Fx: state groups (by Narciso (nj) Jaramillo) <s:states> <s:State name="portraitPhone" stateGroups="portrait,phone" /> <s:State name="landscapePhone" stateGroups="landscape,phone" /> <s:State name="portraitTablet" stateGroups="portrait,tablet" /> <s:State name="landscapeTablet" stateGroups="landscape,tablet" /> </s:states> <s:ViewNavigator id="mainNavigator" left="0" left.landscapeTablet="{LIST_WIDTH}" top="0" top.portraitTablet="{ACTIONBAR_HEIGHT + LIST_HEIGHT}" right="0" bottom="0" firstView="views.SummaryView" firstView.tablet="views.DetailView” /> 24 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 27. Fx: IMXMLObject package { import mx.core.IMXMLObject; public class MyMXMLObject implements IMXMLObject { public function initialized(document:Object, id:String):void { trace("Added to:", document, "with id:", id); } } } ... <fx:Declarations> <local:MyMXMLObject id="myMXMLObject" /> </fx:Declarations> 25 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 28. Fx: FlexGlobals.topApplication <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark"> <fx:Declarations> <fx:String id="myString">Hello World?!</fx:String> </fx:Declarations> </s:Application> 26 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 29. Fx: FlexGlobals.topApplication <?xml version="1.0" encoding="utf-8"?> <s:View xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" title="FlexGlobals" xmlns:local="*" creationComplete="view_creationCompleteHandler(event)"> <fx:Script> <![CDATA[ import mx.core.FlexGlobals; import mx.events.FlexEvent; protected function view_creationCompleteHandler(event:FlexEvent):void { lbl.text = FlexGlobals.topLevelApplication.myString; } ]]> </fx:Script> <s:Label id="lbl" verticalCenter="0" horizontalCenter="0" /> </s:View> 27 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 30. Fx: conditional compilation CONFIG::android protected function view_creationCompleteHandler(event:FlexEvent):void { lbl.text = "Android: " + FlexGlobals.topLevelApplication.myString; } CONFIG::ios protected function view_creationCompleteHandler(event:FlexEvent):void { lbl.text = "iOS: " + FlexGlobals.topLevelApplication.myString; } 28 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 31. Fx: conditional compilation 29 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 32. FB: keeping generated ActionScript 30 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 33. ******** ****** /**///// /*////** /** /* /** /******* /****** /**//// /*//// ** /** /* /** /** /******* // /////// 31 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 34. FB: Press Ctrl+Space to invoke Content Assist. 32 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 35. FB: Metadata code completion 33 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 36. FB: Code completion when using states 34 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 37. FB: Camel-case code hinting 35 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 38. FB: Quick Assist - Press Cmd/Ctrl+1 * Rename in file * Rename in workspace * Generate getter/setter * Convert local variable to field * Assign to variable * Split variable declaration * Organize imports 36 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 39. FB: Quick Outline - Press Cmd/Ctrl+O 37 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 40. FB: Code templates 38 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 41. FB: Organize imports Place your cursor on an import statement, press Cmd/Ctrl+1, and select Organize Imports. To sort the import statements alphabetically by package name, press Cmd/Ctrl+Shift+O. 39 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 42. FB: Call Hierarchy (Cmd/Ctrl+Alt+H) 40 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 43. FB: other shortcuts Cmd/Ctrl+I - Fixing indentation Cmd/Ctrl+Shift+C - Code commenting Cmd/Ctrl+Shift+D - Adding CDATA blocks (<![CDATA[ ]]>) Cmd/Ctrl+Shift+F - Format MXML documents - Block selection and edit mode Cmd/Ctrl+Shift+L - Complete list of shortcuts 41 ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 44. ©2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Notas del editor

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. Other types can be thrown also\n
  7. An arguments object is used to store and access a function&apos;s arguments. Within a function&apos;s body, you can access its arguments object by using the local arguments variable.\n
  8. Assigns expression1 the value of expression1 || expression2.\n\nhttp://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/operators.html\n
  9. You can also do this: Class(getDefinitionByName(getQualifiedClassName(obj)))\n
  10. Inspired by Christian Cantrells post: http://blogs.adobe.com/cantrell/archives/2009/12/labels_in_actionscript_3.html\n
  11. \n
  12. \n
  13. \n
  14. \n
  15. Inspired by Mihai Corlan: http://corlan.org/flex-for-php-developers/#c7\n
  16. Inspired by Mihai Corlan: http://corlan.org/flex-for-php-developers/#c7\n
  17. http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/utils/Proxy.html\n
  18. \n
  19. http://help.adobe.com/pl_PL/FlashPlatform/reference/actionscript/3/mx/utils/ObjectProxy.html\n\nDynamic ObjectProxy (by Andrea Bresolin) - http://www.devahead.com/blog/2009/12/dynamic-objectproxy/\n\nExtending model objects with ObjectProxy class: http://www.riaspace.com/2010/11/extending-model-objects-with-objectproxy-class/\n
  20. http://help.adobe.com/pl_PL/FlashPlatform/reference/actionscript/3/mx/utils/ObjectProxy.html\n\nDynamic ObjectProxy (by Andrea Bresolin) - http://www.devahead.com/blog/2009/12/dynamic-objectproxy/\n\nExtending model objects with ObjectProxy class: http://www.riaspace.com/2010/11/extending-model-objects-with-objectproxy-class/\n
  21. http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/mxml/definition.html\nhttp://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/mxml/library.html\n
  22. http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/mxml/private.html\n
  23. \n
  24. \n
  25. http://www.rictus.com/muchado/wp-content/uploads/2011/04/multiscreen-dev-with-flex-360flex-2011.pptx.pdf\n
  26. \n
  27. \n
  28. \n
  29. \n
  30. http://blogs.adobe.com/flexdoc/files/flexdoc/conditionalcompilation.pdf\n
  31. \n
  32. \n
  33. http://www.adobe.com/devnet/flash-builder/articles/tips-tricks.html\n\nCode proposal cycling - Press Ctrl+Space multiple times to filter the list of suggestions that Content Assist provides, and show only properties, events, effects, and so on.\n
  34. http://www.adobe.com/devnet/flash-builder/articles/tips-tricks.html\n\nCode proposal cycling - Press Ctrl+Space multiple times to filter the list of suggestions that Content Assist provides, and show only properties, events, effects, and so on.\n
  35. http://www.adobe.com/devnet/flash-builder/articles/tips-tricks.html\n\nCode proposal cycling - Press Ctrl+Space multiple times to filter the list of suggestions that Content Assist provides, and show only properties, events, effects, and so on.\n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n