2014-11-15 3 views
0

다트에서 앱을 개발 중이며 동적으로로드 된 플러그인을 지원할 계획입니다. 외부 소스에서 클래스를 인스턴스화하고 외부 파일 등에서 클래스를 나열하는 것을 지원하지 않으므로 미러에서이를 수행 할 수 없습니다. 반사와 같은 Java를 지원하도록 미러를 확장 할 계획입니까? 고맙습니다, Skoky.미래의 다트 미러

+0

이것은 실제로 다트의 향후 계획을 묻는 플랫폼이 아닙니다. 그리고 자바 반사 메커니즘의 일종은 이미 사용할 수 있습니다. 나는 당신이 클래스 로더와 같은 것을 찾고 있다고 생각하니? – Robert

+1

미러없이이 작업을 수행 할 수 있습니다. 임의 코드 로딩은 Isolate.spawnUri()를 통해 이루어지며, 소스 파일을 새로운 분리로로드 할 수 있습니다. 격리 된 플러그인 코드와의 통신은 api를 전달하는 메시지를 통해 수행되어야합니다. Mirrors가 임의의 코드 로딩을 ​​지원하는 것을 기다리지는 않을 것입니다. 이것은 엄청난 성능과 보안 함의를 지니고 있기 때문입니다. –

답변

2

여러 번 논의되었지만 결정되지 않았다고 생각합니다. 이 기능에 대한 논쟁으로 언급 된 것은 보안이 특히 브라우저에서 특히 심각하게 받아 들여지지만 물론이 기능을 사용하지 않으면 장점이 있으며 다트의 가능성을 제한하지 않습니다.

현재 수행 할 수있는 작업은 외부 코드 파일로부터 추가 격리 파일을 실행하는 것입니다. 이것은 브라우저에서 고립 된 것이 DOM뿐만 아니라 극히 제한적인 모든 브라우저 API에 대한 액세스를 제공하지 않기 때문에 현재 브라우저에서 성가시다. 그러나 내가 알고 있듯이 개선이 계획되어 있거나 이미 진행중 일 수도 있습니다.

+1

방금 ​​[spawnDomUri] (https://api.dartlang.org/apannocs/channels/stable/dartdoc-viewer/dart:html#id_spawnDomUri)에 주목했습니다. –

+0

좋아요! 이미 그곳에 무언가가 있다는 것을 깨닫지 못했습니다. –

+0

나도 그래! ___ –