Esri oferuje obecnie 3 różne internetowe interfejsy API, które można bezpłatnie pobrać.
Czy wszystkie są równe?
Jeśli nie, jakie są względne mocne / słabe strony każdego z tych API?
arcgis-silverlight-api
arcgis-flex-api
arcgis-javascript-api
Kirk Kuykendall
źródło
źródło
Odpowiedzi:
Z całkowicie abstrakcyjnego punktu widzenia zarządzania trzy interfejsy API są równe. Reprezentują kod działający w przeglądarce internetowej, którego celem jest wyświetlanie danych mapy użytkownikowi w Internecie. Możesz stworzyć udaną, znaczącą aplikację do mapowania z dowolnym interfejsem API.
Ponadto wpływ każdej siły / słabości (różnicy) w każdym interfejsie API będzie różny w zależności od odbiorców. Programiści będą bardzo zainteresowani funkcjami językowymi lub wadami, twoi ludzie w sieci będą chcieli poznać wymagania dotyczące przepustowości i wymagania wstępne dla serwerów, ludzie z GIS będą głęboko zaniepokojeni faktem, że wyświetlana mapa jest naprawdę renderowana, a twoi użytkownicy końcowi mogą mniej obchodzić to wszystko i po prostu chcę robić cokolwiek oni zaczęli.
Oto kilka kluczowych elementów dotyczących trzech interfejsów API:
Obsługa zasobów między domenami : Silverlight i Flex mogą korzystać z pliku „zasady domeny międzydomenowej”, który istnieje na serwerze TARGET. Tak więc zewnętrzni wydawcy map mogą przyznać ci do nich dostęp. Dzięki JavaScript API żądania między domenami są zwykle obsługiwane przez implementację „strony proxy” przy użyciu wybranego przez użytkownika języka (PHP, JSP, ASP itp.). To „miękkie wymaganie” nie jest dużym problemem dla większości serwerów, ale dodaje kolejną warstwę złożoności. Pamiętaj, że nic nie stoi na przeszkodzie, abyś korzystał z tej samej strony proxy z interfejsami API wtyczek, gdyby żądany zasób NIE ujawniał niezbędnych plików między domenami.
Grafika : Silverlight i Flex pozwalają na łatwe malowanie dowolnych pikseli na interfejsie użytkownika. Javascript także pozwala na to, ale możesz szybko przeciążać pojemność przeglądarki bez starannego kodu i przygotowania. Podobnie bezpośrednia obsługa formatów binarnych lub ruchu sieciowego może odbywać się wyłącznie w JavaScript za pomocą usług sieciowych.
Środowisko programistyczne : jestem tutaj stronniczy. Silverlight to mój ulubiony programista. środowisko Visual Studio jest dojrzałe, szybkie i ma doskonały debugger. Javascript zajmuje drugie miejsce; narzędzia dostępne teraz są lepsze niż kiedykolwiek i zawsze się poprawiają, ale nigdy nie możemy uniknąć przekleństwa „musisz przetestować na wszystkich obsługiwanych przeglądarkach, a następnie naprawić te dziwne rzeczy, które się zdarzają”. Środowisko Flex wydaje się przestarzałe i nadęte i zasadniczo utrudnia rozwój.
źródło
Silverlight / WPF Cons
Silverlight / WPF Plusy
źródło
Sądzę, że wszystkie te odpowiedzi są dobre, ale trochę przestarzałe. Flex i Silverlight były z pewnością bardzo popularne w porównaniu z Javascriptem i niektórzy mogą twierdzić, że tworzenie aplikacji przy użyciu tych interfejsów API było naprawdę łatwe, ale NAJWIĘKSZYM DEFICYTEM, jaki mają Flex i Silverlight, jest to, że są WTYCZKAMI . I to jest przyczyną ich anihilacji.
Wraz z pojawieniem się HTML5 i Javascript, które są integralną częścią rozwoju aplikacji internetowych, Future to JavaScript API. Ponieważ Adobe porzuca Flash i Silverlight 5 jako ostatnią aktualizację firmy Microsoft, Flex i Silverlight są teraz technologiami nadmiarowymi.
Jeśli więc zaczynasz tworzenie aplikacji Web GIS przy użyciu interfejsów API ESRI, zacznij uczyć się JavaScript API, ponieważ jest to jedyna przyszłość w najbliższej przyszłości.
źródło
Silverlight i Flex API to zdecydowanie najpopularniejsze API ArcGIS i mają tę zaletę, że są wtyczkami do przeglądarek, które zapewniają znacznie bogatsze i spójniejsze wrażenia użytkownika, co jest często bardzo ważne w aplikacjach internetowych GIS. Silverlight jest prawdopodobnie najlepszym wyborem, jeśli faworyzujesz programowanie .NET, a Flex byłby najlepszy dla programistów preferujących środowisko Adobe. Zaletą Flex jest także szersze zastosowanie jako wtyczki do przeglądarki niż Silverlight.
Zaletą interfejsu API JavaScript jest większy zasięg między platformami, ponieważ wtyczki przeglądarki nie są potrzebne, więc można go używać na urządzeniach z iOS, takich jak iPhone i iPad. Minusem jest to, że często widać różnice w zachowaniu aplikacji w różnych przeglądarkach, takich jak IE, Chrome, Firebox, Safari itp.
Jeśli chodzi o ich cechy, są one bardzo podobne, co esri zawsze starało się z nimi zrobić i wydaje się być zobowiązana do dalszego utrzymywania silnej parytetu cech między nimi, idąc naprzód. Myślę więc, że tak naprawdę sprowadza się to do siły Flexa i Silverlight jako bogatych klientów i wieloplatformowego zasięgu Javascript.
źródło
Dostępna jest ArcGIS Viewer dla Flex .
Dostępna jest ArcGIS Viewer dla Silverlight .
Ale obecnie nie ma ArcGIS Viewer obsługiwanego przez Esri dla Javascript, ani nie jest planowany .
Zobacz powiązane pytanie .
„Przeglądarka” jest terminem używanym przez Esri dla aplikacji internetowych, które pozwalają użytkownikowi tworzyć mapowe aplikacje internetowe bez pisania kodu. Zazwyczaj tymi utworzonymi aplikacjami do mapowania sieci będą przeglądarki, ale dzięki odpowiednim dodatkom (lub widżetom) można tworzyć przeglądarki z możliwościami edycji.
źródło
Żaden z nich nie obsługuje otwartych standardów, więc cierpisz na blokadę dostawcy i ryzyko utraty inwestycji, jeśli ESRI zdecyduje, że 3 to 1 lub 2 za dużo.
źródło