Return-Path: X-Original-To: apmail-incubator-flex-dev-archive@minotaur.apache.org Delivered-To: apmail-incubator-flex-dev-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 804EC98B1 for ; Thu, 5 Jan 2012 23:13:30 +0000 (UTC) Received: (qmail 61629 invoked by uid 500); 5 Jan 2012 23:13:30 -0000 Delivered-To: apmail-incubator-flex-dev-archive@incubator.apache.org Received: (qmail 61467 invoked by uid 500); 5 Jan 2012 23:13:29 -0000 Mailing-List: contact flex-dev-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: flex-dev@incubator.apache.org Delivered-To: mailing list flex-dev@incubator.apache.org Received: (qmail 61457 invoked by uid 99); 5 Jan 2012 23:13:29 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 05 Jan 2012 23:13:29 +0000 X-ASF-Spam-Status: No, hits=-2.3 required=5.0 tests=RCVD_IN_DNSWL_MED,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of aharui@adobe.com designates 64.18.1.25 as permitted sender) Received: from [64.18.1.25] (HELO exprod6og110.obsmtp.com) (64.18.1.25) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 05 Jan 2012 23:13:21 +0000 Received: from outbound-smtp-1.corp.adobe.com ([192.150.11.134]) by exprod6ob110.postini.com ([64.18.5.12]) with SMTP ID DSNKTwYufLP6xF+yBZ2p1ukdVRA8IuAoP3b7@postini.com; Thu, 05 Jan 2012 15:13:01 PST Received: from inner-relay-1.corp.adobe.com ([153.32.1.51]) by outbound-smtp-1.corp.adobe.com (8.12.10/8.12.10) with ESMTP id q05NBAaa019526 for ; Thu, 5 Jan 2012 15:11:10 -0800 (PST) Received: from nahub02.corp.adobe.com (nahub02.corp.adobe.com [10.8.189.98]) by inner-relay-1.corp.adobe.com (8.12.10/8.12.10) with ESMTP id q05N4bLC016340 for ; Thu, 5 Jan 2012 15:12:59 -0800 (PST) Received: from NAMBX02.corp.adobe.com ([10.8.127.96]) by nahub02.corp.adobe.com ([10.8.189.98]) with mapi; Thu, 5 Jan 2012 15:12:30 -0800 From: Alex Harui To: "flex-dev@incubator.apache.org" Date: Thu, 5 Jan 2012 15:12:26 -0800 Subject: Re: Flex modularity through composition and interfaces (Dependency Injection) Thread-Topic: Flex modularity through composition and interfaces (Dependency Injection) Thread-Index: AczL83e6qFDExub0RTClVkhXTUHpZgADAU0U Message-ID: In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Microsoft-Entourage/13.11.0.110726 acceptlanguage: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Virus-Checked: Checked by ClamAV on apache.org On 1/5/12 1:45 PM, "Tink" wrote: >=20 > Couldn't we inject at compile time.As the compiler does with other > metadata it could find injection points, and using Singletons hidden > behind the scenes to give the correct values to the correct properties > in the generated code? This would remove the current bottlenecks we > have with DI. >=20 > Tink >=20 You can inject at compile time unless you can only determine what to inject at runtime. Like locales, automated testing engines, themes. There are use cases for both. A good DI implementation will support both. I have a further goal that compile-time DI would be "legal ActionScript" in that you could output the AS that is going to run. (Sort of like the -keep-generated-actionscript option today). That would make it a whole lot easier to debug. --=20 Alex Harui Flex SDK Team Adobe Systems, Inc. http://blogs.adobe.com/aharui