Um conhecimento só é válido quando compartilhado.

sexta-feira, 5 de setembro de 2014

Lançamento Oficial do RAD Studio XE7 (Delphi e C++ Builder)

Embarcadero está lançando a release de número 7 da série XE do Delphi e C++ Builder, com foco em multi-dispositivos, aplicações conectadas e computação paralela.
Esta versão aperfeiçoa nosso suporte para aplicações móveis, e amplia o suporte para aplicações conectadas com Bluetooth e Bluetooth LE completamente integrados a RTL. Isso vai nos permitir a construção de apps que se conectam ao mundo, a chamada "Internet das Coisas".
Neste artigo você encontrará as principais novidades da versão XE7 para todas as áreas do produto, desde aplicações desktop até sensores bluetooth de monitoramento cardíaco

FireUI

Trata-se de um enorme avanço na maneira de construir interfaces para multi-dispositivos. Em outras palavras, estamos tornando ainda mais simples para você criar uma aplicação que vai se comportar adequadamente em qualquer dispositivo (ou tamanho de tela). O "Multi-Device Designer", aliado a novos componentes com o "MultiView" e aos "Behavior Services" (serviços que captam o comportamento do device em tempo de execução) permitem a criação de uma única app com interfaces apropriadas a cada dispositivo. Sim, isto significa um único formulário sendo compilado para desktop, smartphones, tablets, óculos, relógios e toda sorte de dispositivo onde voce encontrar um Android ou iOS rodando…


































Veja neste vídeo introdutório como tornamos isso possível: https://www.youtube.com/watch?v=QOfmoAtqh9E

Aplicações Conectadas

O novo suporte a bluetooth, totalmente integrado a RTL, permite conexão com qualquer device (gadget) que suporte esta tecnologia. Estamos falando de interagir com relógios inteligentes, medidores de batimento cardíaco, e uma infinidade de dispositivos que já estão no mercado. Suportamos bluetooth tradicional e também bluetooth LE (low energy), para aplicações de aproximação por exemplo.
Além disso, através do AppTethering, você pode conectar suas aplicações existentes em VCL ou FMX com aplicações móveis, via WiFi (introduzido no XE6) ou o novo suporte a Bluetooth.


















Nesta página você encontra uma série de exemplos e vídeos de integrações com os mais diversos dispositivos, utilizando Delphi e C++ Builder: http://www.embarcadero.com/br/products/rad-studio/gadgets-wearables
Aqui um vídeo demonstrando a integração com um sensor para prática de esportes: https://www.youtube.com/watch?v=oeyGzuC_QqU#t=53















Parallel Programming Library
Disponível para VCL e FireMonkey, permite o uso efetivo de equipamentos multi-core, incluindo aqui dispositivos móveis! Estamos falando de "parallel for loops, futures, task, thread pooling, automatic task scheduling" e outros recursos que permitem, por exemplo, executar uma consulta complexa em segundo plano sem que sua interface fique bloqueada, de uma maneira muito simples.
Neste vídeo você pode observar uma implementação do algoritmo do "Jogo da Vida" (http://pt.wikipedia.org/wiki/Jogo_da_vida) proposto pelo matemático John Horton Conway em 1970. Daí o nome de "Conway’s Game of Life":https://www.youtube.com/watch?v=Ni3JDxNFiiw. Observe no detalhe as CPUs "trabalhando" em paralelo… todo o poder de um servidor multi-core em suas mãos!















Enterprise Mobility Services (EMS)
Refere-se a uma infraestrutura pronta para aplicações distribuídas, altamente escalável, com módulos customizados carregáveis, controle de usuários e estatísticas de acesso, e armazenamento de dados.
Ficou muito difícil de compreender? Mas na verdade não é… vamos abordar por outro ângulo:
Recordem que no XE6 introduzimos um novo framework para suportar BaaS (Backend as a Service). O framework BaaS permite, entre outras coisas, que você armazene dados nas núvens em um dos provedores suportados (Kinvey, Parse, App42), em formato de objetos JSON, sem que você tenha que construir uma aplicação servidora para isso. São infra-estruturas prontas que oferecem gestão de usuários, estatísticas de uso e armazenagem de dados, entre outras como push notification para qualquer plataforma. Neste post você aprende como criar sua primeira app conectada a um serviço como estes: http://blogs.embarcadero.com/sarinadupont/2014/04/15/introducing-rad-studio-xe6-and-baas/.
Muito bem, nosso EMS, presente no Delphi e C++ Builder XE7, permite que você crie e hospede seu próprio serviço BaaS. Seria algo como possuir seu "Kinvey" ou "Parse" particular, incluindo serviços como gestão de usuários, estatísticas de uso das APIs e armazenamento de dados, tudo em um único pacote.





















Um servidor EMS pode ser distribuído como um módulo do IIS ou do Apache, neste momento apenas para plataforma Windows.
O RAD Studio traz uma licença de desenvolvimento do EMS para até 5 usuários, a partir da edição Professional. Este produto terá uma licença de distribuição sempre baseada em quantidade de usuários finais. Ou seja, este produto deverá ser licenciado a parte do RAD Studio, Delphi e C++ Builder para distribuição final. E isto se justifica porque, além da tratar-se de uma infraestrutura pronta para distribuição imediata, ele ainda traz de forma integrada licenças do Interbase Server (para servidores e desktops) e Interbase ToGo (para mobile), ambos com criptografia e capacidade ilimitadas.
Em resumo: uma solução completa que inclui suporte a APIs customizadas, acesso a dados, gestão de usuários, estatísticas e armazenamento, tudo integrado e pronto para deployment. E o melhor, tudo baseado em tecnologia standard, acessível por qualquer outra plataforma ou linguagem de desenvolvimento.
ps: em outras tecnologias você pode também encontrar esta infraestrutura referenciada como MEAP (Mobile Enterprise Application Platform).
Maiores detalhes sobre formas de licenciamento e custos em breve.

IDE, VCL, FireMonkey, FireDAC e muito mais!

Vou tentar resumir aqui os principais pontos em termos de novidades e melhorias para a IDE, VCL, FMX, FireDAC e Utilitários. Todos os demais detalhes você pode conferir diretamente nesta página do Wiki do produto: http://goo.gl/7fnf9K.
IDE = Guided Tours (permite aprender sobre o RAD Studio de maneira interativa), gerenciamento do "Entitlement List" via Project Options, controle de versão GIT integrado, além de SubVersion, adição de bibliotecas Java externas via Project Manager…
FMX = Mapeamento nativo de controles iOS (TEdit e TCalendar), suporte para Multi-Monitor, Full-Screen para Android KitKat, Pull-to-Refresh para TListView no iOS e Android, FMX Save State…
VCL = Novo JumpList para o ToolBar no Win7 e Win8, TParallel (System.Threading), AppTethering e Bluetooth - incluindo BlueTooth LE para Windows 8, OmniXML para melhor performance no processamento de arquivos XML…
FireDAC = Suporte para streaming no MSSQL, suporte para ETL através do novo TFDBatchMove (TFDBatchMove, TFDBatchMoveTextReader, TFDBatchMoveTextWriter, TFDBatchMoveDataSetReader, TFDBatchMoveDataSetWriter, TFDBatchMoveSQLReader, and TFDBatchMoveSQLWriter), novo driver específico para IBLite/IBToGo, novos recursos de serialização, leitura e gravação de Metadata (CreateTable, GenerateCreateTable, GenerateDropTable, etc.)…
Novo PAServer para MAC = com suporte a multiplas instâncias e interface visual de configuração em OSX…
Novo Java2OP.exe = Java para Object Pascal! Permite a geração das classes correspondentes em Object Pascal para chamadas a bibliotecas Java, podendo importar um JAR, uma classe ou um subset de uma classe da API do Android…











Resumo
Como vocês podem ver trata-se de uma das mais completas versões já lançadas pela Embarcadero. E observem que ainda não abordamos todos os assuntos, como suporte a "Bluetooth Proximity" nativo, assunto de nosso próximo post/vídeo.
Tentado em provar o novo RAD Studio, Delphi ou C++ Builder XE7??? O trial já está disponível para download: https://downloads.embarcadero.com/free/rad_studio

RAD Studio XE7 permite criar aplicações para diferentes dispositivos com um só código


A Embarcadero lançou, nesta última terça-feira, a nova versão de seu RAD Studio, a XE7. Dedicada a desenvolvedores de aplicações Delphi/Object Pascal e C++, a edição da IDE traz como diferencial a capacidade de criar programas para múltiplas plataformas baseados em um só código, como explicou a INFO Fernando Rizzato, Lead Software Consultant da empresa na América Latina.
Para isso, a solução usa diferentes compiladores nativos, voltados para arquiteturas (ARM, x86 e x64) e plataformas (Android, iOS, Windows e Mac) distintas. Conforme contou Rizzato, o resultado são aplicativos com interfaces adaptadas para os respectivos aparelhos, baseados em um mesmo código-fonte e compatíveis com cada um dos sistemas – mais ou menos como faz a Microsoft com o Visual Studio e a Apple com o XCode, mas limitados aos próprios SOs.
A ideia da empresa com isso é, basicamente, acabar com a necessidade de duas equipes de desenvolvimento especializadas em ferramentas distintas – como o XCode, da Apple, e o Java, para o Android. Além disso, a solução quer fazer desenvolvedores “fugirem” do HTML5 e do JavaScript para a criação de aplicações multiplataforma, consideradas por Rizzato menos eficientes, seguras e integradas ao hardware do que as de código nativo – ponto que, segundo ele,  fez o Facebook desistir de aplicativos do tipo, por exemplo.
Junto com  José Eugênio Braga, presidente da Embarcadero no Brasil, o executivo da empresa conversou rapidamente com INFO para falar de algumas das novidades do novo RAD Studio XE7 e explicar um pouco do funcionamento da solução. Confira a entrevista a seguir – e se tiver interesse, baixe a versão demo, que traz o Delphi XE7 por aqui.
Primeiro, quais as principais diferenças da versão XE7 para as anteriores do RAD Studio?
Fernando Rizzato: O grande diferencial é que agora, em um só produto, você pode criar uma aplicação para vários sistemas com um só código. Nós compilamos de forma nativa para cada uma das plataformas, gerando uma compilação nativa para processador ARM, tanto no Android quanto no IOS, ou para Intel de 32 ou 64-bits, em Mac ou Windows.
O produto também suporta Bluetooth de uma maneira extremamente simples, aproveitando essa visão de conectividade relacionada à internet das coisas. Arrastando e soltando componentes, é possível fazer uma aplicação falar com qualquer dispositivo Bluetooth – um medidor de batimentos cardíacos, smartwatches e até um Google Glass. Sensores de presença também entram nessa linha, mesmo aqueles de tecnologia mais específica da Apple, os iBeacons. Se você está em uma exposição e usando um app do museu no smartphone, basta se aproximar de um determinado objeto para receber informações de um aparelho próximo ao quadro ou escultura, por exemplo. Ou caso esteja em um shopping, andando, você pode receber um alerta de promoção da loja que está na sua frente. Suportamos esse tipo de função no produto, e com o desenvolvimento ainda 100% visual.
Como vocês conseguem tornar essa compilação para múltiplas plataformas possível? E há planos de incluir o Windows Phone e outros sistemas nessa lista?
Fernando Rizzato: Temos um compilador para cada uma das plataformas suportadas. Um funciona para Intel, x86, enquanto outro é dedicado aos dispositivos com chip ARM. E ainda abriremos novos horizontes, porque outros concorrentes estão por vir. Não acreditamos que o mercado vá ficar polarizado, já que ele é muito grande para apenas dois ou três jogadores [como é o caso do mercado de smartphones]. Outros nomes devem surgir – temos a iniciativa do pessoal do Ubuntu, que tem ganhado apoio, só para citar um exemplo. Quanto ao WP, ainda não suportamos, mas é algo que ainda está no cronograma do produto.
Essa estratégia envolvendo múltiplas plataformas foi consolidada no RAD Studio XE6, mas quando exatamente a Embarcadero começou a olhar para os dispositivos móveis?
Fernando Rizzato: Falando um pouco do histórico, a versão XE4 – hoje lançamos duas edições por ano – foi nossa primeira a suportar smartphones e tablets rodando iOS. O XE5 agregou a compilação para Android, enquanto o XE6 e agora o XE7 trouxeram outros frameworks, como esses para conectividade Bluetooth, Wi-Fi e Tethering. Hoje, consigo fazer tethering entre aplicações mesmo de desktop para mobile e vice-versa. Ou seja, assim como posso parear dois dispositivos e trocar música, posso parear uma aplicação desktop em Delphi – mesmo as desenvolvidas em VCL, o framework Windows – e enviar ações e dados para um aplicativo mobile, em um smartphone conectado ao computador por Bluetooth ou Wi-Fi.
São frameworks que estão sendo agregados para aumentar essa integração entre os dois lados. As pessoas ainda falam muito de migração para mobile, mas não vemos como uma migração. Estamos estendendo aplicações para o mobile. Há certas características e programas que vão continuar nos desktops – eles precisam de um processamento, de um banco de dados, de um “input” rápido de comandos por teclado. Mas ao mesmo estendemos o suporte dessas aplicações para os dispositivos móveis, e tentamos integrar esses dois “mundos” com nosso produto.
E qual a participação do RAD Studio hoje no mercado?
José Eugênio: Na verdade, não temos nenhuma pesquisa feita sobre isso. Mas o mercado de C++ é grande, atualmente, e algo que temos visto acontecer com o Delphi é um aumento muito grande na procura vinda de universidades. A partir do momento que conseguimos torná-lo uma linguagem cujo código-fonte serve em diferentes aplicações, o mercado acadêmico o procurou para ensinar a alunos com desenvolver para múltiplas plataformas.
Fernando Rizzato: Exatamente. A partir das versões XE, quando começamos a suportar as plataformas móveis, evoluímos ano a ano, com nossa base de usuários e número de licenças obtidas aumentando mundialmente. E com base em pesquisas, a comunidade de desenvolvedores C e C++ é a maior [ou ao menos uma das maiores].

SAC Automação Delphi e Lazarus

SAC Automação Delphi e Lazarus
Assine nosso SAC Automação Delphi e Lazarus para ter suporte técnico especializado em desenvolvimento

Quem sou eu

Minha foto

Proprietário/Administrador de Empresa em TI (Tecsis Informática)
  • Autor dos projetos OpenSource ORMBr, e DBCBr
  • Autor dos componentes ACBrInstall, ACBrSped, ACBrPaf, ACBrInStore, ACBrDownload.

Total de visualizações

Postagem em destaque

ORMBr - Mapeamento objeto-relacional

Mapeamento objeto-relacional ( ou ORM, do inglês: Object-relational mapping ) é uma técnica de desenvolvimento utilizada para reduzir...

Todo os direitos reservados.. Tecnologia do Blogger.

Seguidores

Google+ Seguindores