TDC 2015 - Java 8 em 256 KB de memória RAM

27
Globalcode Open4education Trilha Internet das Coisas Marco Antonio Maciel Java + Embedded + IoT + Maker @marcomaciel

Transcript of TDC 2015 - Java 8 em 256 KB de memória RAM

Globalcode – Open4education

Trilha – Internet das Coisas

Marco Antonio Maciel

Java + Embedded + IoT + Maker

@marcomaciel

Globalcode – Open4education

Java 8 em 256KB de RAM

Marco Antonio Maciel

Java + Embedded + IoT + Maker

@marcomaciel

Globalcode – Open4education

Agenda

Por que Java ME 8?

Java ME 8: Overview e características

Java 8 on Freescale FRDM-K64F

Demonstração

Conclusão

Globalcode – Open4education

PORQUE JAVA ME 8?

Globalcode – Open4education

Java Embedded para

Serviços de IoT

Globalcode – Open4education

Desafios Atuais:

Indústria de embarcaods

Variedade de dispositivos

Segurança e privacidade

Automatização (sem o

controle humano)

Ciclo de vida do

dispositivo longo

Conectividade, custo de

infra-estrutura, largura de

banda

Custo de dispositivos,

requisitos de energia

Globalcode – Open4education

Desafios Atuais:

Indústria de embarcaods

Variedade de dispositivos

Segurança e privacidade

Automatização (sem o

controle humano)

Ciclo de vida do

dispositivo longo

Conectividade, custo de

infra-estrutura, largura de

banda

Custo de dispositivos,

requisitos de energia

Gerenciamento e

monitoramento

O fluxo de dados e análise

Padrões e Interoperabilidade

Produtividade do

desenvolvedor

Custo de desenvolvimento,

re-uso, conjuntos de

habilidades

Time-to-market

Globalcode – Open4education

Java ME 8: Motivadores

Exigências Descrição

Plataforma moderna

de software

embarcado

• Ambiente robusto, seguro, multi-plataforma

• Sistema de software modular e de operação remota que estende

valor do produto e reduz o custo / risco

• Plataforma rica em recursos e focada em valor agregado

Desenvolvimento de

software e modelo de

implantação eficientes

• Aborda os desafios do desenvolvimento incorporado tradicional

• Acelera o time-to-market

• Habilita a portabilidade de software e economias de escala

• Entrega um grande ecossistema de especialização e parceiros

Aumento do alcance

de mercado

• Plataforma permite abordar vasta gama de casos de uso e

mercados-alvo com um modelo de software único, a partir de

dispositivos de baixa capacidade até os mais poderosos

Aberto, baseado em

padrões e

interoperável

• Evita vendor lock-in

• Beneficia a inovação tecnológica

• Integrável com muitos padrões da indústria

Globalcode – Open4education

JAVA ME 8: OVERVIEW E

CARACTERÍSTICAS

Globalcode – Open4education

Unificar o Ecossistema

Java para o Embedded

Princípios fundamentais

Java ME 8 é o "irmão menor" de Java SE 8

Portabilidade de aplicações e bibliotecas entre as

plataformas Java

Java ME vs Java SE agora é uma decisão baseada em

footprint/funcionalidades

Ciclos de lançamento Java ME e Java SE estão em

sincronia

Globalcode – Open4education

Unificar o Ecossistema

Java para o Embedded

Benefícios

Plataforma moderna e flexível para a entrega de

software embarcado

Unificação da experiência de desenvolvimento e

comunidade Java

Alinhamento da linguagem Java, APIs, desenvolvimento

e ferramentas

Habilitar 9+ milhões de desenvolvedores Java para

desenvolver para o Java Embedded

Globalcode – Open4education

Mercado Alvo

Small to mid-embedded cobrindo uma ampla gama

de Casos de uso / mercados

Dispositivos da borda (edge) inteligentes

Nós de comunicação

Dispositivos de cuidados de saúde (helthcare)

Sensores inteligentes (smart sensors)

Medidores inteligentes (smart meter)

Soluções gerais da Internet das coisas / M2M

Globalcode – Open4education

Espectro Java Embedded

Globalcode – Open4education

Java ME 8

Overview da Plataforma

Globalcode – Open4education

Ferramentas:

Java ME SDK e IDEs

Java ME SDK

Ferramentas e emulação para desenvolvimento rápido

de aplicações Java ME embarcadas

NetBeans & Eclipse

Integração com o Java ME SDK

Ambiente de desenvolvimento completo e integrado

Experiência de desenvolvimento unificada

Mesmo modelo de desenvolvimento para Java ME, Java

SE e Java EE

Globalcode – Open4education

Diagrama

Globalcode – Open4education

JAVA 8 ON FRDM-K64F

Globalcode – Open4education

Freescale FRDM-K64F

Kinetis K64

120 MHz, 1 MB flash memory, 256 KB RAM

Rodando mbed RTOS

Compatível com Arduino

Aproximadamente $30.00

19

Globalcode – Open4education

Java 8 for ARM Cortex-

M3/M4 Micro-Controllers

Java ME Embedded 8.1 Supports Freescale FRDM-K64F

Kinetis K64F, 120 MHz, 256 KB RAM /1 MB Flash, running ARM mbed OS

Arduino form-factor and pin-out. Approx. $30 street price

Java ME 8 functionality on small embedded & IoT devices Feature-rich, optimized Java ME 8 runtime in 190 KB RAM, enabling highly functional Java Embedded applications on single-chip micro-controller systems

Simple installation

Support for Java 8 language, core APIs, networking, device I/O, storage, and more

Rich development and tooling via Java ME SDK 8.1 and NetBeans 8 IDE

Complements existing Java ME 8 platforms such as Raspberry Pi, scaling Java ME 8 from large to small

Ideal for evaluation and prototyping of small embedded & IoT solutions

FREE download available now via Oracle Technology Network (OTN)

Globalcode – Open4education

Java ME 8 on FRDM-K64F

Globalcode – Open4education

DEMONSTRAÇÃO

Globalcode – Open4education

CONCLUSÃO

Globalcode – Open4education

Java ME 8:

Principais Recursos

Alinhamento com a plataforma Java SE

Concebido para ser embarcado

Altamente portável e escalável

Consistente entre dispositivos

Plataforma avançada para aplicações

Compatível com APIs padrões existentes

Ferramentas dedicadas ao desenvolvimento

embarcado

Globalcode – Open4education

Java ME 8 Resources

Java ME 8 Oracle Technology Network (OTN) Free for development and evaluation purposes

Oracle Java ME Embedded 8.1

Oracle Java ME SDK 8.1

http://bit.ly/Java-ME-Embedded-Downloads

Java ME 8 Documentation Developer Preview on FRDM-K64F: Release Notes, Getting Started Guide

Java ME 8 Developer Guide, plus new chapter: Java ME Optimization Techniques

Full Java ME 8 API doc set

http://docs.oracle.com/javame/8.0/

Globalcode – Open4education

Java on K64F get started

http://docs.oracle.com/javame/8.1/get-started-freescale-k64/toc.htm

Globalcode – Open4education

Perguntas e Obrigado

Marco Antonio Maciel Java Embedded & Internet of Things

[email protected]

@marcomaciel

http://mmaciel.com.br