[ 
https://issues.apache.org/jira/browse/FLEX-22220?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Justin Mclean updated FLEX-22220:
---------------------------------

    Labels: performance  (was: )
    
> BindabilityInfo and DescribeTypeCache Memoization
> -------------------------------------------------
>
>                 Key: FLEX-22220
>                 URL: https://issues.apache.org/jira/browse/FLEX-22220
>             Project: Apache Flex
>          Issue Type: Improvement
>          Components: Data Binding
>    Affects Versions: Adobe Flex SDK 4.5 (Release)
>         Environment: Affected OS(s): All OS Platforms
> Affected OS(s): All OS Platforms
> Browser: Safari
> Language Found: English
>            Reporter: Adobe JIRA
>              Labels: performance
>
> Steps to reproduce:
> 1. Watch DescribeTypeCache rack up time in parsing xml of classes, which 
> don't change at runtime.
> 2.
> 3.
>  
>  Actual Results:
> Many of the Binding-related functions involved in initialization are largely 
> methods that calculate values that aren't dependent on state.  This means 
> that they can be calculated pre-compile-time, in some sort of generated 
> class, thereby increasing startup time performance.  There is no need to 
> calculate these values before hand.
> Specifically, in mx.binding.BindabilityInfo, when 
> mx.binding.PropertyWatcher-and-related call Watcher#updateParent, they 
> calculate the DescribeTypeCache, and the events for the class, by processing 
> the metadata from the class.  This information does not change at runtime.  
> It can and should be either processed by the compiler, which could spit out a 
> generated class of the pre-computed values, or the properties in these 
> classes that are "private" and that store the values 
> (BindabilityInfo#typeDescription, BindabilityInfo#classChangeEvents, 
> BindabilityInfo#childChangeEvents, and DescribeTypeCache#typeCache) should be 
> made "mx_internal".  This would allow us to precompute them using our own 
> methods if it seems too much work to solve this problem with the compiler.
> There are easily 30+ classes that must go through this "DescribeType" phase 
> in an application, and this requires significant resources to calculate.  It 
> should be precomputed, or the properties should be "mx_interal" so we can 
> figure out our own means for adding the precomputed values to the cache.
> Please let me know if you could make this change immediately.  It should only 
> take 5 minutes to make the properties mx_internal, and no harm would be done.
> Thanks so much.
>  
>  Expected Results:
>  mx_internal properties, so we can precalculate values and add them to the 
> cache as a mixin.
>  
>  Workaround (if any):
> There is no work around.  This should be a very simple enhancement and should 
> be easily included in the Flex 4 release.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to