Jefferson Andrade - Esri Dev Summit 2016 #02 - Dev Tools

95
Jefferson Andrade de Oliveira Júnior Abril de 2016 ESRI DEVELOPER SUMMIT 2016 P ALM S PRINGS - USA #2

Transcript of Jefferson Andrade - Esri Dev Summit 2016 #02 - Dev Tools

Jefferson Andrade de Oliveira Júnior

Abril de 2016

ESRI DEVELOPER SUMMIT 2016PALM SPRINGS - USA

#2

AGENDA

2

3

Jefferson Andrade

Apps

APIs & SDKs

ArcGIS Desktop

ArcGIS for Server

including PortalArcGIS Online

Scene Layers

Scenes

http:

http:http:

TileLayers

Maps

Services

Data

FeatureLayers

ImageLayers

Analytics Analytics

The ArcGIS Platform The GeoInformation Model

Jefferson Andrade

Apps Making ArcGIS Available Everywhere

Public

Story Maps

Open Data

Office

ArcGIS EarthDashboardMaps for OfficeField

Navigator

Collector

Survey123

Workforce

ExplorerInsightsDrone2Map

Adobe Creative Cloud

Crowdsourcing

Jefferson Andrade

Portal

Servers

Servers can access data from external

as well as built in data stores

A Portal can integrate multiple Servers

10.4 enhancements include:• Resiliency

• Enterprise Integration

• Security

• Functionality

• Smart Mapping

• Spatial Analysis

• Vector Tiles

• Online Content Integration

ArcGIS for Server

Enables Web GIS in your own

infrastructure

Portal is part of and included with

ArcGIS for Server

Amazon

Azure

+

Jefferson Andrade

Roadmap Incremental and Groundbreaking Advancements

Pro 1.1

Crowdsourcing

Real-time

Utility networks

Location awareness

Massive 3D

Vector tiles

Web raster analysis

Advanced navigation

Modeling

Big data GeoAnalytics

Insights10.3.1

Pro 1.210.4

Incremental Software Release

Mobile

UAV/Drone

Continuous Online Improvements

Distributed GIS

10.4.1

10.5

Analytic Engines

Raster Analytics

Pro 1.4

Pro 1.3

User Roles

2015

2016

2017

8

Jefferson Andrade

Android

Python

REST Java

Web

Windows JavaScript

HTML5

Swift

QtApple

.NET

Build Apps !

Extend the PlatformConfigurable Apps

APIs &

SDKs

App

Builders

QML

Xamarin

Objective-C

C++

C#

Developer Tools Software and Content to Build Your Own Apps

10

Plans tailored to what you build

NEW DEVELOPER SUBSCRIPTION

Improved Accessibility and Delivery

Build Apps Extend ArcGIS

12

13

14

15

APPSTUDIO FOR ARCGIS

• Native apps made very

easy

• You focus on content

• AppStudio takes care of

the rest

https://appstudio.arcgis.com/

Jefferson Andrade

iOS

Android

Linux

Windows

Mac

1App

AppStudio for ArcGIS

CROSS-PLATFORM NATIVE APPS

Jefferson Andrade

Offline Powerful Native

AppStudio for ArcGIS

CROSS-PLATFORM NATIVE GIS APPS

19

WEB APPBUILDER

• Provides more control than

templates

• Creating apps using

configurable widgets

• Supports 2D and 3D

• Developer edition enables

custom widgets and themes

https://developers.arcgis.com/web-appbuilder/

WEB APPBUILDER 2.0

21

WHAT’S NEW 2.0 – MARÇO 2016HTTPS://DEVELOPERS.ARCGIS.COM/WEB-APPBUILDER/GUIDE/WHAT-S-NEW.HTM

• 3D Apps (Beta)

• Novo design da página inicial

• Opção de salvar estado do mapa (extensão do mapa e camadas)

• Widget Análise de Incidente

• Widget Próximo a Mim: features próximas e direções.

• Widget Busca por Distrito: polígonos e pontos relacionados e direções.

• Widget Gráficos da Tabela Relacionada: barra ou pizza.

• Widget Info Summary: mostra número de feições visíveis no mapae permite fazer cluster.

• Novo tema Plateau

• Atributos escolhidos podem ser exibidos somente na edição.

• Pode-se abrir o Widget de Edição diretamente da janela Pop-up.

• Adição de shapefiles no Widget Geoprocessamento.

• Entre outras.

WEB APPBUILDER

Jefferson Andrade 22

HTTP://GAVINR.GITHUB.IO/WEB-APPBUILDER-TOOLS-TECHNIQUES-DEV-SUMMIT-2016/#/

WEB APPBUILDER

Jefferson Andrade 23

WEB APPBUILDER

Jefferson Andrade 24

25

APPS CONFIGURÁVEIS

• Great way to share your web

maps

• Focused User Experiences

• Many new templates

APPS CONFIGURÁVEIS

http://www.arcgis.com/home/gallery.html#c=esri&t=apps&o=modified&f=configurable

27

APPS CONFIGURÁVEIS

http://www.arcgis.com/home/gallery.html#c=esri&t=apps&o=modified&f=configurable

28

APPS CONFIGURÁVEIS

http://www.arcgis.com/home/gallery.html#c=esri&t=apps&o=modified&f=configurable

29

STORY MAPS

30

HTTP://STORYMAPS.ARCGIS.COM/EN/GALLERY/#S=0

31

32

• 2D & 3D visualization

• Read & write web scenes

& web maps

• A simpler, more consistent

API design

• Mobile-first design

• Better integration with frameworks

4.0 ArcGIS JavaScript API Reimagined

Jefferson Andrade

ARCGIS JAVASCRIPT API 4.X

ROADMAP

• Final release Q2

• Releases in Q3 and Q4

– More renderers

– More layer types

Jefferson Andrade

ARCGIS JAVASCRIPT API 3.X

ROADMAP

• Spring release 3.16

• Active development through

2016

• Primary innovation will shift

to 4.x

• Technical support through

2018

ArcGIS Online uses 3.x JS API

36

ARCGIS RUNTIME SDKS

Runtime built using C++EXPLOITS THE CAPABILITIES OF THE DEVICE

Functionality exposed to developers via an API

native to the platformINTUITIVE TO LEARN

Common functionality set and conceptual modelEASES MULTI-PLATFORM DEVELOPMENT

ARCGIS RUNTIME SDKS

• Work connected or disconnected form the Internet

• Exploits device capabilities

• Works with sensors connected to the device

• High performance

CONTENT ANALYSIS 3DNEW APIs CROSS PLATFORM

ARCGIS RUNTIME QUARTZ RELEASE

HTTPS://DEVELOPERS.ARCGIS.COM/IOS/BETA/

QUARTZ API DESIGNED FOR PRODUCTIVITY

• Supports Web GIS

• Mapping API enhanced

• Seamless use of platform

identity

• All the runtime APIs reflect

new model

ARCGIS RUNTIME SDK FOR XAMARIN

• Supports developers building .Net

C# apps for iOS and Android

• API Surface matches ArcGIS

Runtime .Net API

• Strong community of Xamarin

developers building and deploying

apps

BRINGING IOS AND ANDROID DEVELOPMENT TO .NET

https://developers.arcgis.com/xamarin/

ARCGIS RUNTIME SDK FOR XAMARIN

Jefferson Andrade 42

ARCGIS RUNTIME SDK FOR XAMARIN

Jefferson Andrade 43

ARCGIS RUNTIME SDK FOR XAMARIN

Jefferson Andrade 44

ArcGIS Runtime Quartz Release Timeline

Today

Q2Final

iOS, Android

Q3Beta

iOS & Android

Working with Maps

• Connected

• Routing

• Geocoding

Q1Beta

iOS, Android

Working with Maps

• …

• Disconnected

• Vector tiles

• Mobile Map Package

Q2Beta

.Net, Xamarin,

Java, Qt

Working with Maps

And Scenes

• …

• 3D

• Advanced symbology

• Cross platform

Q3Final

iOS, Android,

.Net, Xamarin,

Java, Qt

Working with Maps

And Scenes

• …

• 3D for iOS and

Android APIs

• WFS...

46

Jefferson Andrade

ARCOBJECTS UPDATE 10.4+

Building Blocks of ArcGIS . . . Most Comprehensive Collection of GIS Functionality

• Customizing and Extending ArcMap

• Supporting VS2013/2015 and .NET 4.5 now• ArcObjects will continue to be supported on latest Visual Studio

• ArcObjects resources available on github:

• https://github.com/Esri/arcobjects-sdk-community-samples

• Extending Server using .NET or Java

– Building SOEs and SOIs

– Supporting the latest version of Eclipse

Customizing and

Extending ArcGIS

ArcGIS Server

Preserve API compatibility with clients

Extend existing GeoServices

Program in Java or C#

Administrators manage deployment

Developers

Users

Apps

Administrators

build

deploy

extend

preserve

Publishers activate as desired

Portal

EXTENDING THE PLATFORM USING SERVER

OBJECT INTERCEPTORS

http://server.arcgis.com/en/server/latest/publish-services/windows/about-extending-services.htm

Functional SOI

Security SOI

Server Object

Or

Server Object Extension

GeoServices API

Client Apps & APIs

SERVER OBJECT INTERCEPTORS

• Pre-process requests

• Post-process responses

• Chain multiple SOIs

Asset Data715 gauges

Layer and map is not time aware…

Observation/Time Series Data> 5 million observations

(daily, over 20 years)

Join multiple datasets, enable time, aggregate values, give me a rewindable map …

AVG_WaterLevel MAX_WaterLevel MIN_WaterLevel

1.03 1.05 1.02

Observation/Time Series Data> 5 million observations

(daily, over 20 years)

Time enabled, aggregated

rewindable map

Rewindable map

- moving average, computed on-the-fly

- dynamic time range

Security SOI

Viewer role vs Analyst role

Functional SOI

Asset + Observation data in a Re-windable map

Latest Operational map

- current water level

53

54

PYTHON IS A POWERFUL PROGRAMMING LANGUAGE

• Portable

• Rapid development

• API is self-documenting

• As a glue to other languages

• ArcPy is Esri’s Python Module

Jefferson Andrade

ARCGIS PLATFORM PYTHON API

What is it?

• A new Python API for your GIS, which could be Online or On-premises

(Server w/Portal).

• This API is intended for use by org administrators, content publishers,

power users, developers, analysts and data scientists – who have

workflows that require scripting or automation.

INTEGRAÇÃO DO ARCGIS COM CONDA

• Discover and utilize the most relevant Python

modules

– It just works!

• Use a single version of Python across the platform

• Works behind the firewall

https://4326.us/esri/conda/

https://github.com/scw/conda-devsummit-2016-talk

CONDA

Jefferson Andrade

HTTP://CONDA.PYDATA.ORG/DOCS/INDEX.HTML

59

ARCGIS RUNTIME COM WINDOWS 10 IOT CORE

Jefferson Andrade 60

ARCGIS RUNTIME COM WINDOWS 10 IOT CORE

Jefferson Andrade 61

ARCGIS RUNTIME COM WINDOWS 10 IOT CORE

Jefferson Andrade 62

ARCGIS RUNTIME COM WINDOWS 10 IOT CORE

Jefferson Andrade 63

REACT NATIVE

Jefferson Andrade 64

HTTPS://CDN.RAWGIT.COM/GLAZOU/REACT-NATIVE-ARCGIS-SDK-

DEMO/MASTER/NATIVE%20APPS%20IN%20JAVASCRIPT%20WITH%20REACT%20NATIVE%20-%20LESSONS%20FROM%20A%20PROTOTYPE.PDF

REACT NATIVE

Jefferson Andrade 65

REACT NATIVE

Jefferson Andrade 66

REACT NATIVE

Jefferson Andrade 67

REACT NATIVE

Jefferson Andrade 68

REACT NATIVE

Jefferson Andrade 69

REACT NATIVE

Jefferson Andrade 70

REACT NATIVE WITH ARCGIS RUNTIME SDK

Jefferson Andrade 71

HTTP://GITHUB.COM/GLAZOU/REACT-NATIVE-ARCGIS-SDK-DEMO

72

ANGULARJS E JS API

Jefferson Andrade 73

HTTP://PROCEEDINGS.ESRI.COM/LIBRARY/USERCONF/DEVSUMMIT16/PAPERS/DEV_INT_193.PDF

ANGULARJS E JS API

Jefferson Andrade 74

ANGULARJS E JS API

Jefferson Andrade 75

ANGULARJS E JS API

Jefferson Andrade 76

HTTPS://GITHUB.COM/ESRI/ANGULAR-ESRI-MAP

ANGULARJS E JS API

Jefferson Andrade 77

ANGULAR2 E JS API

Jefferson Andrade 78

79

EMBERJS

Jefferson Andrade 80

EMBERJS

Jefferson Andrade 81

EMBERJS

Jefferson Andrade 82

HTTP://ODOE.NET/BLOG/UPDATE-ON-EMBER-WITH-ARCGIS-JS-API/

REDUX

Jefferson Andrade 83

HTTP://REDUX.JS.ORG/DOCS/BASICS/USAGEWITHREACT.HTML

84

TYPESCRIPT

Jefferson Andrade 85

HTTP://PROCEEDINGS.ESRI.COM/LIBRARY/USERCONF/DEVSUMMIT16/PAPERS/DEV_INT_202.PDF

TYPESCRIPT

Jefferson Andrade 86

TYPESCRIPT

Jefferson Andrade 87

88

GDB PROGRAMMING

Jefferson Andrade 89

GDB PROGRAMMING

Jefferson Andrade 90

GDB PROGRAMMING

Jefferson Andrade 91

GDB PROGRAMMING

Jefferson Andrade 92

GDB PROGRAMMING

Jefferson Andrade 93

GDB PROGRAMMING

Jefferson Andrade 94