저는 데스크톱 응용 프로그램을 만들었으며 웹 응용 프로그램으로도 사용하기를 원합니다. File() 유형과 FileStream이있는 행에 오류가 발생합니다.이를 우회하는 방법이 있습니까?File() 웹 응용 프로그램의 FileStream
답변
이 @Florian F의 올바른 응답에 피기 백하려면 특정 플랫폼이 구현 사이를 전환 할 시간에 인터페이스를 사용해야합니다, 여기 당신이 그것을 구현하는 방법입니다 :
public interface IGetTheStuffService {
function getSomeTofu():Tofu;
}
파일 기반 IMPL를 작성하여 파일 액세스 추상에 대한 인터페이스를 만들기 ementation
public class FileStuffService implements IGetTheStuffService {
public function getSomeTofu():Tofu {
// File-based implementation
}
}
그리고 당신의 소비자에서 HTTP 기반 구현
public class HTTPStuffService implements IGetTheStuffService {
public function getSomeTofu():Tofu {
// HTTP-based implementation
}
}
는 IGetTheStuffService에
[Inject] public var tofuService:IGetTheStuffService;
public function doSomeStuff():void {
var tofu:Tofu = tofuService.getSomeTofu();
// act on the tofu
}
을 주목 를 주입 메타 태그를 의존하고있다. 여기서 Dependency Injection (DI) 시스템은 구성 (Air 애플 리케이션을위한 FileStuffService 또는 웹 어플리케이션을위한 HTTPStuffService)에 기반하여 의존성을 푸시합니다. 파 슬 리, RobotLegs는 이 fiex-IOC가 사용하는 [IocBind 물론
, 당신은 DI 컨테이너없이 갈 수있다 [를 주입]은 ... 그냥 직접 매개 변수를 주입 것이다 사용합니다.
그러나 당신은 아이디어를 얻습니다. 실제로는 아주 간단한 패턴입니다.
File() 클래스는 AIR 응용 프로그램에서만 사용할 수 있으므로 오류가 발생합니다.
- 당신은 플랫폼에 의존하는 코드를 분리하고 별도의 라이브러리에 넣어해야합니다
이것은 내가 어떻게 할 것입니다.
- 플랫폼이 다른 격리 된 라이브러리에 있어야하는 것과 동일하게 작동하는 다른 코드.
- 간단한 래퍼가 될 2 개의 프로젝트를 만듭니다. 공통 코드에만 결합 된 Flex 프로젝트입니다. 공통 및 플랫폼 종속 코드에 결합 된 AIR 프로젝트입니다.
그러면 아마
+1 저는 크로스 플랫폼 앱에서'File'을 서비스로 사용하는 것을 고려할 것입니다. 'IGetTheStuffService' 또는 뭔가. Parsley, RobotLegs 또는 flex-ioc와 같은 Dependency Injection 시스템을 사용하여 런타임에 적절한 서비스를 연결하는 것을 고려하십시오. –
- 1. 웹 응용 프로그램의 동기화
- 2. 웹 응용 프로그램의 주석
- 3. 웹 응용 프로그램의 타이머
- 4. 웹 응용 프로그램의 이미지
- 5. 웹 응용 프로그램의 단축키
- 6. java 웹 응용 프로그램의 라우팅을 구성하는 방법
- 7. 웹 응용 프로그램의 맞춤법 검사기
- 8. 웹 응용 프로그램의 음성 식별
- 9. 간단한 웹 응용 프로그램의 장고
- 10. django 웹 응용 프로그램의 차트
- 11. 웹 응용 프로그램의 정적 변수
- 12. 기존 응용 프로그램의 웹 서버
- 13. 웹 응용 프로그램의 Tinymce 편집기
- 14. 웹 응용 프로그램의 동적 업데이트
- 15. 웹 응용 프로그램의 클라이언트는 무엇입니까?
- 16. 웹 응용 프로그램의 인증 처리
- 17. Irrlicht 응용 프로그램의 웹 브라우저?
- 18. SharePoint와 웹 응용 프로그램의 통합
- 19. MVC2 웹 응용 프로그램의 Bing지도
- 20. 웹 응용 프로그램의 Ajax 탭
- 21. 웹 응용 프로그램의 액세스 제어
- 22. 웹 응용 프로그램의 레지스트리 액세스
- 23. C# 웹 응용 프로그램의 상수
- 24. 웹 응용 프로그램의 암호화/보안
- 25. 웹 응용 프로그램의 정적 변수
- 26. JSP 웹 응용 프로그램의 국제화?
- 27. Java 웹 응용 프로그램의 구조
- 28. 웹 응용 프로그램의 병렬 LINQ?
- 29. 웹 응용 프로그램의 데모 만들기
- 30. 웹 응용 프로그램의 문서 구조
예, 그게 제가 언급 한 것입니다! –
고마워, 그게 내가 필요한거야. – noize