2008-08-26 7 views
3

매우 큰 지리적 데이터를 표시하는 웹 응용 프로그램을 설계하는 데 비용이 부과됩니다. 그리고 요구 사항 중 하나는 최적화되어있어 우리 교외 지역의 일반 전화 접속 시스템에서도 PC를 사용할 수 있다는 것입니다.저 대역폭 최적화

제한된 개발 시간과 사용자 경험이 도움이 될 경우 Flash 및/또는 Silverlight를 사용할 수 있습니다.

지형 데이터의 무거운 부분은 타일로 덩어리로 만들어지고 Google지도에서지도 타일처럼로드되지만 이는 많은 HTTP 요청이 필요하다는 것을 의미합니다.

자바 스크립트 + HTML 만 사용해야하나요? 내가 플래시/실버 라이트에 관한 더 빠른 애플리케이션으로 끝날 것인가? 이후 나는 그 두 기술 (DeepZoom 같은)에 대한 몇 가지 복잡한 알고리즘을 할 수 있습니다. 데스크톱 응용 프로그램을 배포하는 것은 많은 유지 보수 자금이 없기 때문에 문제가되지 않습니다.

그냥 빠르면 ... 정말 빠릅니다.

p.s. 더 빨리 "다운로드 속도"가 향상됩니다.

답변

1

Flash를 찾거나 Silverlight가이 응용 프로그램에 너무 많은 도움이 될 것 같지 않습니다. 어느 쪽이든 당신은 바둑판 식으로 된 이미지를 활용할 것이고 이미지는 두 시나리오에서 같은 크기가 될 것입니다. Flash 또는 Silverlight를 사용하면 응용 프로그램에 깔끔한 애니메이션을 추가 할 수 있지만 여기서 얻는 모든 내용은 전화 접속 연결에서 클라이언트에 대한 추가 오버 헤드가됩니다. 일반 Javascript/HTML을 사용합니다.

2

Gears과 같은 것이 허용됩니까? 이렇게하면 데이터를 로컬에 저장하여 재 요청을 제한 할 수 있습니다.

나는 플래시와 실버 라이트에서 멀리 떨어져 자바 스크립트/AJAX로 곧바로 갈 것이다. jQuery는 톤 오 재미입니다. 내가 제안

2

당신은 실버로보고

0

DeepZoom 나는 마이크로 소프트의 Seadragon 답 믿습니다. 그러나 개발자가 사용할 수 있는지 확실하지 않습니다.

그것은 그것의 일부는 실버

1

에 그것의 방법을 발견했다처럼 당신은 또한 사용할 수있는 아약스 라이브러리 중 하나를 통해 타일을 다운로드에서 비동기 적으로보고 할 수 있습니다 보인다. 사용자가 한 번에 9 개의 타일을보고 스크롤/확대/축소 할 수 있다고 가정 해 봅시다. 다운로드 할 수있는 9 개의 타일과 첫 번째로드에서 타일을 확대/축소하는 데 필요한 모든 것을 다운로드하십시오. 다른 정보를 비동기 적으로 프리 페치하기위한 캐싱 전략을 가지고 놀 필요가 있습니다.

한 곳에서 나는 규칙 엔진을 사용하여 결과를 반환하기에는 너무 오랜 시간이 걸렸으므로 사용자에게 "확인"화면을 표시하기로 선택했습니다. 사용자가 검토하고 다음을 클릭하는 데 몇 초가 걸리므로 결과를 반환 할 충분한 시간이었습니다. 실제로 앱이 조금 더 오래 걸렸을 때 앱이 사용자에게 빠르게 번쩍 거리게했습니다. 기억해야 할 점은 성능에 대한 사용자의 인식이 실제 성능과 마찬가지로 중요하다는 점입니다.