Mini curso redes sociais - IMD instituto Metrópole Digital

14
Redes Sociais: Contextualização e Integração de Serviços à Aplicações Mini Curso IMD 2014.1 Juliana Oliveira Sarah Sakamoto _______________________________________________ Agenda do Mini-Curso Contextualização Conceitos básicos Apresentação da API Twitter4J Apresentação prática de desenvolvimento para Java (desktop) Android Facebook Mini-Curso Contextualização O mini-curso ocorre em 4 dias (13/05 a 16/05) + 4h de atividade à distância Total = 20h PRESENÇA: É necessário 75% de presença Ou seja, comparecer a pelo menos 3 dos 4 dias Avaliação : Fazer uma aplicação Java para ambiente desktop* que se integre ao Twitter, e que tenha no mínimo 3 funcionalidades. * A aplicação exigida na avaliação foi modificada para atender aos conhecimentos (pré-requisitos) e melhorar o aprendizado dos alunos

description

Utilizando o twitter4j para aplicações, desenvolvendo códigos

Transcript of Mini curso redes sociais - IMD instituto Metrópole Digital

Page 1: Mini curso redes sociais -  IMD instituto Metrópole Digital

Redes Sociais: Contextualização e Integração de

Serviços à Aplicações Mini Curso IMD 2014.1

Juliana Oliveira

Sarah Sakamoto

_______________________________________________

Agenda do Mini-Curso

• Contextualização

• Conceitos básicos

• Apresentação da API Twitter4J

• Apresentação prática de desenvolvimento para

Java (desktop)

Android

Facebook

Mini-Curso

• Contextualização

• O mini-curso ocorre em 4 dias (13/05 a 16/05)

• + 4h de atividade à distância

• Total = 20h

• PRESENÇA: É necessário 75% de presença

• Ou seja, comparecer a pelo menos 3 dos 4 dias

• Avaliação:

Fazer uma aplicação Java para ambiente desktop* que se

integre ao Twitter, e que tenha no mínimo 3 funcionalidades.

* A aplicação exigida na avaliação foi modificada para atender aos conhecimentos (pré -requisitos)

e melhorar o aprendizado dos alunos

Page 2: Mini curso redes sociais -  IMD instituto Metrópole Digital

• A nota do aluno será composta por:

60% = aplicação desenvolvida

40% = relatório

• O relatório deve ter a seguinte composição:

Introdução

Contextualização do tema

Contextualização da aplicação

Objetivos

Descrição da aplicação

Interface (com screenshots)

Funcionalidades

• O trabalho deve ser enviado para o e-mail

[email protected]

• Título: “Trabalho Mini-Curso Redes Sociais”

• No e-mail devem ter 3 anexos:

projeto.zip, arquivo.jar e relatorio.pdf

• Serão aceitos envios até às 22:00 de 23/05/14

Redes Sociais

• Popularidade na mídia digital

• Surgimento de uma nova onda de aplicações na Web

• Pesquisas em diversas áreas da ciência da computação

• OSN (Online Social Networks)

Redes de profissionais

Redes de amigos

Redes para compartilhamento de conteúdos

específicos

Page 3: Mini curso redes sociais -  IMD instituto Metrópole Digital

• Mídia social

Termo usado em referência a conteúdo criado e disseminado

via interações sociais

• Em 2010, passou na frente de e-mail como a atividade

online mais popular (Nielsen Online)

• 2/3 da população mundial usa redes sociais

• Impacto no cotidiano dos indivíduos

• Mudam a forma de interação e comunicação

• Tem atraído mais pessoas para o uso de Tecnologias de

Informação e Comunicação (TICs)

• Desafio nº 4 da SBC

• Comunidades em rede: um dos domínios que se beneficiam

das pesquisas relacionadas ao rompimento das barreiras que

impedem o acesso do cidadão brasileiro ao conhecimento

• Termo utilizado para descrever um grupo de pessoas que

interagem primariamente através de qualquer mídia de

comunicação

• Emergem das práticas da interação orientadas para a partilha

e formação de grupos de interesse que estão na origem das

narrativas digitais da Sociedade do Conhecimento

• Constituídas de representações dos atores sociais e de suas

conexões (Recuero, 2009)

• Individualizadas e personalizadas

• Elementos que criam a estrutura na qual as representações

formam as redes sociais

• Essas conexões podem ser de tipos variados, construídas

pelos atores através da interação e mantidas pelos sistemas

online

• É possível ter centenas ou milhares de conexões, mantidas

pelo auxílio de ferramentas

Criar e compartilhar recursos! :)

Page 4: Mini curso redes sociais -  IMD instituto Metrópole Digital

• Metáfora utilizada para o estudo do grupo que se apropria de

um determinado sistema

• Sites de redes sociais = nova geração de espaços públicos

mediados

• Ambientes onde as pessoas podem reunir-se publicamente

através da mediação da tecnologia

• 1- Persistência: aquilo que foi dito permanece no

ciberespaço. Ou seja, as informações, uma vez publicadas,

ficam no ciberespaço

• 2- Capacidade de Busca: capacidade de permitir a busca e

permitir que os atores sociais sejam rastreados, assim como

outras informações

• 3- Replicabilidade: Aquilo que é publicado no espaço digital

pode ser replicado a qualquer momento, por qualquer

indivíduo.

Isso implica também no fato de que essas informações

são difíceis de ter sua autoria determinada;

• 4- Audiências Invisíveis: Presença de audiências nem

sempre visíveis através da participação.

Há audiências que, inclusive, poderão aparecer após a

publicação das conversações nesses grupos (por

características anteriores), que permitem que esses

grupos deixem rastros que poderão ser encontrados

depois

• Redes emergentes: Laços construídos através da

conversação entre os atores

• Redes de filiação: Manutenção da conexão realizada pelo

software ou site utilizado

Exemplo: Twitter – Redes de Seguidores

Redes muito grandes e com pouca ou nenhuma

interação entre os atores

• OBS: Essas conexões são potenciais canais de disseminação

de ideias, notícias!!!

Page 5: Mini curso redes sociais -  IMD instituto Metrópole Digital

• Grupos permanentemente conectados nos sites de redes

sociais

• Informações espalhando-se e potencialmente criando

mobilizações nesses grupos

Twitter

• MICROBLOG

• Fundado em março de 2006

• Fundadores:

Jack Dorsey, Evan Williams e Biz Stone

(colegas da empresa Odeo – podcast)

• Mensagens curtas (140 carac.)

• Serviço de troca de status como um SMS

• Inicialmente foi chamado de Status

• Twitter, em inglês tem dois significados: “uma pequena

explosão de informações inconsequentes” e “pios de

pássaros”

• 140 caracteres

Não é perseguição dos criadores!

• Conceito inicial: mensagens SMS

• Mensagens curtas é o principal foco do serviço

• Inicialmente Twich = vibração

• Alguns termos importantes:

Tweet

Retweet

Trending Topics

Seguir / Seguidores

Direct Message

@ : arroba + nome do usuário

# : hashtag

Page 6: Mini curso redes sociais -  IMD instituto Metrópole Digital

Facebook

• Lançada em 4 de fevereiro de 2004

• Com foco em estudantes universitários

• Promover amizade entre os estudantes

• Duas versões:

• Mark Zuckerberg teve a ideia

• Mark Zuckerberg com ajuda de 4 estudantes “pegou

emprestado” o projeto

Page 7: Mini curso redes sociais -  IMD instituto Metrópole Digital

• ATUALMENTE: Mais de um bilhão de usuários

• Vamos acompanhar a evolução ?

• 2005: Foco no perfil, sem mural

• 2006: Adição de mural com informações de amigos e

postagens do usuário

Page 8: Mini curso redes sociais -  IMD instituto Metrópole Digital

• 2008: Brasil começa a descobrir o Facebook

• Mais foco nas postagens

• 2014: Linha do tempo, desde 2011

Page 9: Mini curso redes sociais -  IMD instituto Metrópole Digital

Padrões de Projeto

• A idéia de “Padrão de Projeto” surgiu em 1977 a partir do

trabalho de Christopher Alexander

• Contexto da Arquitetura (casas e prédios)

• “Cada padrão descreve um problema que ocorre

repetidamente de novo e de novo em nosso ambiente, e

então descreve a parte central da solução para aquele

problema de uma forma que você pode usar esta solução

um milhão de vezes, sem nunca implementa-la duas vezes

da mesma forma.”

• Essa idéia foi adaptada para o desenvolvimento de software

no trabalho "Design Patterns: Elements of Reusable Object-

Oriented Software" [Gamma95]

• Designed Patterns: coleção de padrões de projeto de

software

• Os padrões ajudam a reduzir substancialmente a

complexidade do processo de design

Page 10: Mini curso redes sociais -  IMD instituto Metrópole Digital

• SINGLETON

• Criar objetos únicos, apenas uma instância

• Ponto de acesso global

• Uma classe tem apenas uma instância de si mesma

• Fornece uma forma de acesso a essa instância

• Nenhuma outra classe pode instanciá-la

• Representação do padrão

• Exemplo em Java

• FACTORY

• Encapsulam a criação de objetos

• “Um padrão que define uma interface para criar um objeto,

mas permite às classes decidirem qual classe instanciar”

• Representação do padrão

Page 11: Mini curso redes sociais -  IMD instituto Metrópole Digital

• Exemplo em Java

Page 12: Mini curso redes sociais -  IMD instituto Metrópole Digital

API

• API (Application Programming Interface)

• Em português:

Interface de Programação de Aplicativos

Twitter4J

• Biblioteca Java para API do Twitter

• 100% puro Java

• Compatível com as versões Java 5+

• Dependência zero (nenhum jar adicional)

• Compatível com a API 1.1 do Twitter

• Pode ser integrada com aplicações

Android

GAE (Google App Engine)

Sintaxe simples e fácil de usar

• Suporte ao OAuth

Protocolo OAuth

• Quem gosta de compartilhar sua senha com os outros? E se

você mudar de senha?

• Reconfigurar todos os aplicativos

• Para resolver essas limitações surgiu o protocolo OAuth

Def.: Conjunto de rotinas e padrões estabelecidos por um

software para a utilização das suas funcionalidades por

aplicativos que não pretendem envolver-se em detalhes da

implementação do software, mas apenas usar seus serviços (Wikipedia)

Page 13: Mini curso redes sociais -  IMD instituto Metrópole Digital

• Muitos sites passaram a oferecer APIs que podem ser usadas

em outras aplicações

• API acessada “em nome” de algum usuário

• É necessário um usuário autenticado

Exemplo: fornecer login e senha para twittar através de uma

aplicação

Twitter4J

• Vocês podem acessar os recursos da API do Twitter em:

http://twitter4j.org/javadoc/

Exemplos

• updateStatus(java.lang.String status)

• Retorna: Status

Envia um tweet na conta do usuário, ou seja, atualiza o

status do usuário

• sendDirectMessage(java.lang.String

screenName, java.lang.String text)

• Retorna: DirectMessage

Envia uma nova mensagem direta para o usuário

especificado

• sendDirectMessage(long userId, java.lang.String text)

• Retorna: DirectMessage

Envia uma nova mensagem direta para o usuário

especificado

• createFriendship(java.lang.String screenName)

• Retorna: User

Permite seguir um usuário especificado

• destroyFriendship(java.lang.String

screenName)

• Retorna: User

Permite deixar de seguir um usuário especificado

Page 14: Mini curso redes sociais -  IMD instituto Metrópole Digital

Passo-a-Passo

• 1º : Registrar sua aplicação

• 2º : Modificar permissões

• 3º : Obter consumer key e consumer secret

• 4º : Obter access token e access secret

• 5º : Baixar os arquivos da Twitter4J

http://minicursoimd.4shared.com

twitter4j-core-4.0.1.jar

• 6º : Abrir Eclipse

• 7º : Criar um novo projeto

• 8º : Importar o .jar para o projeto

Clicar com lado direito do mouse sobre o projeto e seguir o

caminho: (Build Path > Configure Build Path)

• 9º : Mãos a obra! \o/