What`s going on. Rede social para eventos geo-referenciados. Fernando Bunn Paul Eipper Jonatan



Documentos relacionados
SCE-557. Técnicas de Programação para WEB. Rodrigo Fernandes de Mello

Programação WEB.

dados abertos cartilha para desenvolvedores

Projeto mgov2 Redes Sociais e Dispositivos Móveis. Projeto mgov2 Redes Sociais e Dispositivos Móveis

Ficha da Unidade Curricular

DESENVOLVIMENTODE APLICAÇÕESPARAINTERNET:PHP. VitorFariasCoreia

MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO PIAUÍ - IFPI CAMPUS FLORIANO

BEM-VINDOS AO CURSO DE ORIENTADO A OBJETOS

SCC Técnicas de Programação para WEB. Rodrigo Fernandes de Mello

Daniel Paulo de Assis

MAPEAMENTO E LOCALIZAÇÃO DE REGIÕES DE INTERESSE UTILIZANDO REALIDADE AUMENTADA EM DISPOSITIVOS MÓVEIS COM PLATAFORMA ANDROID

Introdução à Tecnologia Web. Ferramentas e Tecnologias de Desenvolvimento Web. Profª MSc. Elizabete Munzlinger

Fundamentos da Computação Móvel

PÓS-GRADUAÇÃO EM MATEMÁTICA COMPUTACIONAL INFORMÁTICA INSTRUMENTAL Aula 06: Introdução Linguagem HTML

Desenvolvimento Web. Introdução Geral. Prof. Vicente Paulo de Camargo

Frameworks para criação de Web Apps para o Ensino Mobile

Sistema de Informação para Coleções de Interesse Biotecnológico

Manual de Procedimentos para Desenvolvimento de Softwares


O que é o Android? O que é o Android

Miguel Fernando Aniceto Nobre. Engenheiro Informático

WWW - World Wide Web

Capítulo 3. Redes Sociais 24

Modelagem UML com. Marcio Junior Vieira Ambiente Livre - Marcio Junior Vieira

UMA FERRAMENTA WEB PARA AUXILIAR O DESENVOLVIMENTO DE RELATÓRIOS EM PDF PARA SISTEMAS EM PHP

Aula 1 Desenvolvimento Web. Curso: Técnico em Informática / 2º módulo Disciplina: Desenvolvimento Web Professora: Luciana Balieiro Cosme

Ricardo R. Lecheta. Novatec

Desenvolvimento em Ambiente Web. HTML - Introdução

Vitor Diogo Faria Pereira. Programador / Analista de Sistemas e Software

Desenvolvimento de Grandes Aplicações Web

PODER JUDICIÁRIO FEDERAL JUSTIÇA FEDERAL DE PRIMEIRO GRAU Seção Judiciária do Rio Grande do Norte Rua Dr. Lauro Pinto, nº 245, Lagoa Nova, Natal/RN

CURSO DESENVOLVEDOR JAVA Edição 2010

Informações importantes

Conceitos Web. Prof. Msc. Juliano Gomes Weber Notas de Aula Aula 13 1º Semestre UNIJUÍ DETEC Ciência da Computação

GEOCODIFICAÇÃO DE ENDEREÇOS

Desenvolvimento de Sites. Subtítulo

Modelagem UML com Software Livre. Palestrante: Marcio Junior Vieira

SenchaTouch + PhoneGap

TERMO DE REFERÊNCIA COTAÇÃO PRÉVIA DE PREÇO Nº 025/2015 TIPO: MENOR PREÇO

Conceitos de Ajax Exemplos de uso do Ajax no braço, muitos exemplos, muito código (HTML, CSS, JavaScript, PHP, XML, JSON)

Criando e consumindo Web service REST com PHP e JSON. Palestrante: Weiberlan Garcia

História e Evolução da Web. Aécio Costa

Luiz Carlos Querino Filho

UNIVERSIDADE ESTADUAL DA PARAÍBA CENTRO DE CIÊNCIAS E TECNOLOGIA DEPARTAMENTO DE QUÍMICA CURSO DE LICENCIATURA EM QUÍMICA LINDOMÁRIO LIMA ROCHA

Adessowiki. Visão Geral do Sistema. Roberto A. Lotufo e Rubens C. Machado. Abril de 2009 UNICAMP / CTI

Sistemas Distribuídos na Web. Pedro Ferreira DI - FCUL

SOLUÇÃO EM DISPOSITIVO MÓVEL PARA ATENDIMENTO DE RESTAURANTES E LANCHONETES EM VIÇOSA-MG 1

Aprendendo Programação. ios. Alasdair Allan. Novatec

Aplicativos para Internet Aula 01

ÍNDICE. Introdução 19

CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA

Introdução à Tecnologia Web HTML HyperText Markup Language XHTML extensible HyperText Markup Language Estrutura Básica do Documento HTML

Desenvolvimento Web. Saymon Yury C. Silva Analista de Sistemas.

Introdução à Tecnologia Web 2010 HTML HyperText Markup Language XHTML extensible HyperText Markup Language Elementos da Seção do Cabeçalho

XML Básico. Murillo Vasconcelos Henriques B. Castro. 17 de maio de 2011

SOFTWARES DE GEOPROCESSAMENTO

Rede Social Digital para Compartilhamento de. Moto. Leonardo João Faggiani Prof. Rion Brattig Correia, Orientador

Transações Seguras em Bancos de Dados (MySQL)

Universidade Federal de Campina Grande Departamento de Sistemas e Computação Ciência da Computação. alyssonfm@lcc.ufcg.edu.br

WEBDISC - Sistema Web para Gerenciamento de Disciplinas

GeoDjango. Christiano Anderson

Viabilidade Técnica - #entrega02 INTRODUÇÃO LISTA DE MATERIAL

UM NOVO CONCEITO EM AUTOMAÇÃO. Série Ponto

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS -HTML 5: ARMAZENAMENTO DE DADOS (CLIENTE) Prof. Angelo Augusto Frozza, M.Sc.

Curso CP300A - Workshop de Qualificação Google Cloud Platform (35h)

Aplicativo web para definição do modelo lógico no projeto de banco de dados relacional

Desenvolvendo um Mashup com a API do Google Maps e com os dados de uma imobiliária

Programação para Web

Plano de Trabalho Docente Ensino Técnico

ONE TOONE CURSOS PARTICULARES JAVASCRIPT

Oportunidades 30/05/2014

Aula 1 Cleverton Hentz

Dado: Fatos conhecidos que podem ser registrados e têm um significado implícito. Banco de Dados:

Diário. João Estrela... F Michael Jackson F F. F Geisy Arruda... Patolino... Peter Griffin F. F.

Projuris Enterprise Visão Geral da Arquitetura do Sistema

GuiBi: Um aplicativo para plataforma Android com um guia comercial da cidade de Bambuí MG

Plataforma de Gerenciamento de Eventos

Interface Homem Máquina para Domótica baseado em tecnologias Web

CURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011

PLANIFICAÇÕES ATIVIDADES E ESTRATÉGIAS

Microsoft.NET. Desenvolvimento Baseado em Componentes

Capítulo 1 - Java EE 6 por alto - 1

Webservices. O que é um web service? Características. Por que web services? Tipos de web services

2. Conceitos e Arquitetura de Bancos de Dados

Google App Engine. André Gustavo Duarte de Almeida. Computação Ubíqua e Nuvens. Natal, 24 de maio de 2012 andregustavoo@gmail.com

DESENVOLVIMENTO DE SOFTWARE DE VOTAÇÃO WEB UTILIZANDO TECNOLOGIA TOUCHSCREEN

Observatório da Saúde

Minicurso introdutório de desenvolvimento para web em HTML5. Cristiano Costa

Introdução à Engenharia da Computação. Tecnologia Web Professor Machado

GERÊNCIA DE DADOS SEMIESTRUTURADOS -XML. Prof. Angelo Augusto Frozza, M.Sc.

Programação para Internet I

Edital de Processo Seletivo para o Programa de Bolsas Acadêmicas do Curso de Especialização em Saúde da Família PROVAB UNA-SUS/UnB

Action Vision Visão. Versão 1.0. Histórico de Revisão Data Versão Descrição Autor 06/08/ Visão geral do projeto Matheus Camilo

Proposta de Estágio Ano Letivo 2011 / 2012 Tema: BidSuite - Web Platform of Bifds

Unidade 4 Concepção de WEBSITES. Fundamentos do planeamento de um website 1.1. Regras para um website eficaz

JAVA Express com Lógica

XHTML 1.0 DTDs e Validação

Transcrição:

What`s going on Rede social para eventos geo-referenciados Fernando Bunn Paul Eipper Jonatan

Introdução Rede social virtual, que provê informações geo-referenciadas sobre eventos em geral (ex.: festas, reuniões, encontros, shows, etc.) Veículo simples e eficaz para divulgação de eventos

Definições Geocoding: Processo para obter coordenadas geográficas (latitude e longitude) a partir de dados geográficos (rua, cidade, bairro, etc.) Reverse Geocoding: Processo inverso: obter dados geográficos a partir de coordenadas geográficas. Google oferece esses serviços: Através da API do Google Maps (objeto GClientGeocoder) Através de requisições HTTP (http://maps.google.com/maps/geo?) o Possíveis formatos de retorno: json, kml, xml, csv

Definições xal - extensible Address Language: Padrão internacional para formatação de endereço. Endereços podem ser organizados de forma hierárquica. Nomenclaturas genéricas para atender a heterogeneidade de endereços (estado, província = área administrativa) ISO 3166: Padrão para nomes de países e seus códigos (ex.: Brazil - BR)

Definições Google App Engine: Rodar aplicações web nos servidores do Google dynamic web serving, with full support for common web technologies persistent storage with queries, sorting and transactions automatic scaling and load balancing APIs for authenticating users and sending email using Google Accounts a fully featured local development environment that simulates Google App Engine on your computer scheduled tasks for triggering events at specified times and regular intervals Suporte atual: Java e Python

Definições Google Base: Base de dados XML online Location-aware: tipo de dados específico para local Busca por raio: [location: @"1600 Amphitheatre Parkway, Mountain View, CA, USA" + 100km] Linguagem de consulta própria, baseada em atributos e texto Atributos padrão e definidos pelo usuário Exporta feeds de dados XML - http://www.google.com/base/feeds/ snippets API com suporte a JSON e XML Indexa dados publicamente por padrão, porém permite dados privados não indexados apenas Foco em produtos e negócios

Modelagem do banco de dados

Modelagem do banco de dados

Aplicação Web: Linguagens/ Tecnologias PHP 5.2 (Hypertext Preprocessor): Linguagem de programação server-side Javascript: Linguagem de programação client-side XHTML 1.1 (extensible Hypertext Markup Language): Linguagem de marcação (estruturação das páginas) CSS 2 (Cascading Style Sheet): Linguagem de estilos (formatação) XML (extensible Markup Language) :Linguagem para marcação genérica JSON (JavaScript Object Notation): Formato simples para troca de dados (alternativa ao XML)

Aplicação Web: APIs Google AJAX API: Carregamento do Google Maps API e bibliotecas Javascript (JQuery/JQuery UI). Wrapper. Google Maps API v3: Recém lançada (Labs) Focada na latência (carrega mais rapidamente) Otimizada para dispositivos móveis (iphone e Android) ClientLocation: Estimar a localização do usuário através do seu IP. Serviço disponibilizado pela Google AJAX API (google.loader.clientlocation)

Aplicação Web: APIs Google Gears Extensão para browsers que proporciona recursos avançados locais, como cache e banco de dados para aplicações web, API para obter a localização do usuário (IP, antena Wi-Fi), entre outros.

Acesso por web Google AJAX API Google Gears Javascript XHTML CSS iphone SDK 3.0 Objective-C Cocoa Framework Mapkit Framework Acesso por iphone/ipod touch Servidor web XML/ JSON Apache PHP 5 + PEAR Django + mod_python Doctrine (ORM) Google maps Google search Google Geocoder

Browser Javascript / XHTML XML/JSON iphone/ipod Touch Cocoa/Mapkit Framework Google AJAX API XML PHP Objective-C XML/JSON Django SQL Google Maps MySQL 5

Demo:

Aplicação Móvel - iphone Cliente nativo. iphone SDK 3.0 Objective-C GPS ou Triangulação

Demo:

Demo:

Back-end: Servidor Web DJANGO Framework para desenvolvimento aplicações web Python :) Mapeamento objeto-relacional Tarefas comuns já resolvidas (autenticação, acesso ao banco, etc) Diversos módulos adicionais disponíveis - Django Piston MySQL Fácil integração Largamente disponível Suporta o modelo de dados e busca requeridos

Back-end: Servidor Web Consulta para encontrar locais próximos: SELECT id, ( 3959 * acos( cos( radians(37) ) * cos( radians( lat ) ) * cos( radians( lng ) - radians(-122) ) + sin( radians(37) ) * sin( radians( lat ) ) ) ) AS distance FROM markers HAVING distance < 25 ORDER BY distance LIMIT 0, 20;

Referências Google AJAX API: http://code.google.com/apis/ajax/ Google Maps API v3: http://code.google.com/apis/maps/documentation/v3/ Serviço de Geocoding: http://code.google.com/apis/maps/documentation/services.html#geocoding http://code.google.com/apis/maps/documentation/geocoding/index.html (HTTP) ClientLocation: http://code.google.com/apis/ajax/documentation/#clientlocation Gears API - Geolocalização: http://code.google.com/apis/gears/api_geolocation.html xal - Padrão internacional para formatação de endereços (usado pelo geocoder do Google): http://www.oasis-open.org/committees/ciq/ciq.html#6 MarkerManager: http://gmaps-utility-library.googlecode.com/svn/trunk/markermanager/