REST. Representational State Transfer. É um estilo arquitetural usado por muitas aplicações Web para estender as suas funcionalidades.

Tamanho: px
Começar a partir da página:

Download "REST. Representational State Transfer. É um estilo arquitetural usado por muitas aplicações Web para estender as suas funcionalidades."

Transcrição

1 REST Representational State Transfer É um estilo arquitetural usado por muitas aplicações Web para estender as suas funcionalidades. Não é um padrão.

2 Exemplo ASP.NET Web API namespace WebAPIApp.Models { public class Produto { public int Id { get; set; } public string Nome { get; set; } public string Descricao { get; set; } } }

3 ProdutosController namespace WebAPIApp.Controllers { public class ProdutosController : ApiController { private static List<Produto> produtos = new List<Produto>() { new Produto() {Id = 1, Nome = "Produto 1", Descricao = "Descrição do Produto 1" }, new Produto() {Id = 2, Nome = "Produto 2", Descricao = "Descrição do Produto 2" }, new Produto() {Id = 3, Nome = "Produto 3", Descricao = "Descrição do Produto 3" }, new Produto() {Id = 4, Nome = "Produto 4", Descricao = "Descrição do Produto 4" }, new Produto() {Id = 5, Nome = "Produto 5", Descricao = "Descrição do Produto 5" } };

4 ProdutosController // GET: api/produtos public IEnumerable<Produto> Get() { return produtos; } // GET: api/produto public Produto Get(int id) { Produto prod = produtos.find(p => p.id == id); if (prod == null) throw new HttpResponseException(HttpStatusCode.NotFound); else return prod; }

5 ProdutosController // POST: api/produtos public HttpResponseMessage Post([FromBody]Produto p) { if (p == null) return new HttpResponseMessage(HttpStatusCode.BadRequest); produtos.add(p); return new HttpResponseMessage(HttpStatusCode.Created); } // PUT: api/produtos/5 public HttpResponseMessage Put(int id, [FromBody]Produto p) { Produto prod = produtos.find(pr => pr.id == id); if (prod == null) throw new HttpResponseException(HttpStatusCode.NotFound); prod.id = id; prod.nome = p.nome; prod.descricao = p.descricao; return new HttpResponseMessage(HttpStatusCode.OK); }

6 ProdutosController // PUT: api/produtos/5 public HttpResponseMessage Patch(int id, [FromBody]Produto p) { Produto prod = produtos.find(pr => pr.id == id); if (prod == null) throw new HttpResponseException(HttpStatusCode.NotFound); prod.id = id; if (p.nome!= null) prod.nome = p.nome; if (p.descricao!= null) prod.descricao = p.descricao; return new HttpResponseMessage(HttpStatusCode.OK); }

7 ProdutosController } } // DELETE: api/produtos/5 public void Delete(int id) { Produto prod = produtos.find(pr => pr.id == id); if (prod == null) throw new HttpResponseException(HttpStatusCode.NotFound); produtos.remove(prod); }

8 Princípios REST 1. Uniform Interface 2. Stateless 3. Cacheable 4. Client-Server 5. Layered System 6. Code on Demand (opcional)

9 1. Uniform Interface Um Recurso é qualquer coisa que pretendemos expor, tal como um documento, um blog, etc. e que pretendemos gerir usando a API. Um Recurso tem um identificador, um URI, tal como um registo de uma base de dados tem uma chave primária. O URI é um identificador que podemos usar para aceder ao Recurso, não é a representação do recurso. Pedindo o Recurso com o URI obtemos uma representação num formato negociado entre o cliente e o servidor. O cliente pode manipular o estado do recurso usando o servidor. Exemplos: (URIs para acesso aos Recursos devem ser construídos de um modo uniforme) todos os clientes cliente 5 encomendas do cliente 3 encomenda 2 do cliente 3

10 2. Stateless O servidor nunca deve guardar informação acerca dos clientes. O estado para tratar o pedido está completamente contido no pedido. Outros sistemas mantêm o estado entre diferentes pedidos usando Sessões ou outros mecanismos, mas em REST o estado é mantido apenas no cliente.

11 3. Cacheable O cliente pode efetuar cache do Recurso. Assim como os browsers podem efetuar cache das respostas, os clientes também podem fazer cache das respostas. Cada resposta deve definir-se explicitamente como cacheable ou não.

12 4. Client-Server O que o cliente vê é o URI e a representação do recurso. O interface uniforme separa o cliente do servidor. Há separação de responsabilidades. O cliente não trata de armazenamento dos dados nem da geração do estado. O servidor não trata da interface com o utilizador nem de manter o estado. Desde que não se altere a interface uniforme entre cliente e servidor, o cliente ou o servidor podem ser substituídos em qualquer altura.

13 5. Layered System O Cliente não conhece as camadas do sistema. O cliente não sabe se está diretamente ligado ao servidor final. 6. Code on Demand opcional O servidor pode estender as funcionalidades do cliente passando-lhe código executável, tal como código JavaScript

14 Estes princípios constituem restrições arquiteturais Estes princípios focam na escalabilidade A própria Web é REST: temos um URL que é o identificador de uma página, um browser com o URL dá-nos a representação no formato HTML e usámos um link para transferir o estado para outra página. Em REST a operação num Recurso é baseada no Verbo HTTP usado em combinação com o URI. O browser gere os dois verbos: Get e Post.

15 Verbos HTTP e significado: Post cria um Recurso Create Get obtém um recurso ou lista de Recursos Read Put atualiza um Recurso Update Delete remove um Recurso Delete Head Options retorna o cabeçalho HTTP retribui as operações disponíveis no Recurso Patch atualiza apenas alguns atributos do Recurso Partial Update

16 Verbos HTTP e significado: Operação GET para ler um recurso A operação Get é usada para ler um Recurso ou Recursos. A operação Get é considerada segura, nunca deve modificar o estado de um recurso. Operação POST para criar um recurso A operação Post é usada para criar um Recurso. Os valores do Recurso são enviados para o servidor como parte do corpo do pedido. Operação PUT para atualizar um recurso A operação Put é usada para modificar um Recurso. O URI especifica o Recurso que pretendemos modificar e o body contém os novos valores do Recurso. Operação DELETE para remover um recurso A operação Delete é usada para apagar um Recurso. O URI especifica o Recurso.

17 HTTP status Um pedido é enviado ao servidor. O servidor constrói a resposta. Cada resposta é representada com um estado (http status) para informar o cliente. 5 códigos de estados http: 1xx Informação 2xx Sucesso 200 Ok, 201 Created 3xx Redireção 4xx Erro do cliente 403 Forbidden, 404 Not Found 5xx Erro do servidor

18 ASP.NET Web API ASP.NET Web API é um Framework para construir Serviços HTTP em cima do Framework.Net. Sistema de Routing na web API: api/{controller}/{id} Registado na classe WebApiConfig, no método Register. Em Mvc o routing é {controller}/{action}/{id} Em Mvc no routing temos a ação. Em Web API a ação não está presente. Em Web API a ação é determinada pelo Verbo do método HTTP: Post, Get, Put, Delete, etc.

19 Classes Controller As classes Controller herdam de ApiController (classe base usada para todos os recursos expostos via a API). Dentro da classe temos métodos para manipular o recurso de acordo com o Verbo do método HTTP invocado. O nome dos métodos é importante porque o runtime de ASP.NET Web API usa convenções para encontrar a ação a invocar para responder a pedidos HTTP.

20 Classes Controller O método Get() é usado para obter uma coleção de valores do recurso; O método Get(int id) é usado para obter um único valor do recurso dado o seu id; O método Post() é usado para inserir um valor do recurso; O método Put() é usado para modificar um valor do recurso; O método Delete(int id) é usado para apagar um valor do recurso;

21 Classes Controller A regra, por omissão, para os métodos num Controlador é que o nome do método de ação deve começar com o nome da ação: Pedido POST -> nome do método de ação deve começar por Post (ação Create) Pedido GET -> nome do método de ação deve começar por Get (ação Read) Pedido PUT -> nome do método de ação deve começar por Put (ação Update) Pedido DELETE -> nome do método de ação deve começar por Delete (ação Delete)

22 Postman programa utilitário para testar pedidos HTTP específicos Chrome > Mais Ferramentas > Extensões > Obter mais extensões: Postman REST Client shortcut > Instalar

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS SISTEMAS DISTRIBUÍDOS Aula 1 REST em Java JAX-RS (Jersey) Material de suporte às aulas de Sistemas Distribuídos Copyright DI FCT/ UNL / 1 REST : REPRESENTATIONAL STATE TRANSFER Padrão arquitetural para

Leia mais

>>> RESTful API >>> Com Node.js e Restify. Name: Anderson Pimentel Date: 19 de Março de

>>> RESTful API >>> Com Node.js e Restify. Name: Anderson Pimentel Date: 19 de Março de >>> RESTful API >>> Com Node.js e Restify Name: Anderson Pimentel Date: 19 de Março de 2018 apds.anderson@icomp.ufam.edu.br [~]$ _ [1/31] >>> Agenda 1. Introdução 2. Boas Práticas 3. Hands-on Ambiente

Leia mais

Criação de uma aplicação Web ASP.NET MVC 4

Criação de uma aplicação Web ASP.NET MVC 4 Criação de uma aplicação Web ASP.NET MVC 4 usando Code First, com Roles (VS2012) Baseado no artigo de Scott Allen Roles in ASP.NET MVC4 : http://odetocode.com/blogs/scott/archive/2012/08/31/seeding membership

Leia mais

EA975 - Laboratório de Engenharia de Software

EA975 - Laboratório de Engenharia de Software EA975 - Laboratório de Engenharia de Software Turmas K/L - 2017 Aula 1 O que vamos desenvolver? Vamos desenvolver uma aplicação distribuída, empregando a arquitetura 3-Tier segundo o estilo REST/HTTP (Respresentational

Leia mais

Arquiteturas de Aplicações Web. Leonardo Gresta Paulino Murta

Arquiteturas de Aplicações Web. Leonardo Gresta Paulino Murta Arquiteturas de Aplicações Web Leonardo Gresta Paulino Murta leomurta@ic.uff.br Aplicações Convencionais vs. Web Aplicações convencionais Escritas usando uma linguagem de programação (ex.: Java) Sites de

Leia mais

Desenvolvimento de Aplicações Distribuídas

Desenvolvimento de Aplicações Distribuídas SOA e Web Services Pontifícia Universidade Católica de Minas Gerais Instituto de Ciências Exatas e Informática DAD (2019/01) Tópicos Apresentação da disciplina Introdução Desafios e características Arquitetura

Leia mais

Aplicação Web Zend Framework 2 Cliente de Aplicação Asp.Net Web API

Aplicação Web Zend Framework 2 Cliente de Aplicação Asp.Net Web API Aplicação Web Zend Framework 2 Cliente de Aplicação Asp.Net Web API 1. Criar a Aplicação Asp.Net Web API 2 com Individual User Accounts Visual Studio 2015 > File > New > Project Visual C#, Web > ASP.NET

Leia mais

Aplicação MVC com Class Library

Aplicação MVC com Class Library Aplicação MVC com Class Library Vamos considerar uma Class Library com o modelo de dados e com acesso à base de dados através do Entity Framework. Uma Class Library nunca funciona sozinha. Vamos usá-la

Leia mais

Desenvolvimento de Aplicações Distribuídas

Desenvolvimento de Aplicações Distribuídas Web Services RESTful Pontifícia Universidade Católica de Minas Gerais Instituto de Ciências Exatas e Informática DAD (2019/01) Tópicos Apresentação da disciplina Introdução Desafios e características Arquitetura

Leia mais

EA975 - Laboratório de Engenharia de Software. Objetivo do curso. Turmas K/L Aula 1

EA975 - Laboratório de Engenharia de Software. Objetivo do curso. Turmas K/L Aula 1 EA975 - Laboratório de Engenharia de Software Objetivo do curso Exercitar na prática as técnicas de desenvolvimento de software estudadas no curso EA976 - Engenharia de Software. Turmas K/L - 2019 Aula

Leia mais

REST RESTfulWeb Services JAX-RS

REST RESTfulWeb Services JAX-RS Web Services REST Web Service Serviço oferecido por um sistema que pode ser acessado diretamente por outro sistema desenvolvido em qualquer tecnologia através de uma rede como a internet. Cada plataforma

Leia mais

Informática Parte 26 Prof. Márcio Hunecke

Informática Parte 26 Prof. Márcio Hunecke Escriturário Informática Parte 26 Prof. Márcio Hunecke Informática REST A Representational State Transfer (REST), em português Transferência de Estado Representacional, é um estilo de arquitetura que

Leia mais

Protocolo HTTP. - Características. - Modelo Requisição/Resposta. - Common Gateway Interface (CGI)

Protocolo HTTP. - Características. - Modelo Requisição/Resposta. - Common Gateway Interface (CGI) Protocolo HTTP - Características - Modelo Requisição/Resposta - Common Gateway Interface (CGI) Características Hypertext Transfer Protocol (HTTP) Protocolo utilizado para transferir documentos de hipertexto

Leia mais

arquitetura shared-nothing em 3 camadas

arquitetura shared-nothing em 3 camadas arquitetura shared-nothing em 3 camadas engenharia de sistemas de informação Daniel Cordeiro 29 de agosto de 2017 Escola de Artes, Ciências e Humanidades EACH USP info sobre o projeto projeto: iterações

Leia mais

Redes de Computadores e Aplicações Camada de aplicação IGOR ALVES

Redes de Computadores e Aplicações Camada de aplicação IGOR ALVES Redes de Computadores e Aplicações Camada de aplicação IGOR ALVES Camada de aplicação Um protocolo da camada de aplicação define como processos de uma aplicação, que funcionam em sistemas finais diferentes,

Leia mais

Desenvolvimento Web II

Desenvolvimento Web II Desenvolvimento Web II Web Service PHP Rest Frameworks: Slim e Laravel (get/ post / put / delete) Gil Eduardo de Andrade Web Service Introdução: Um web service pode ser definido como uma tecnologia que

Leia mais

EA975 - Laboratório de Engenharia de Software

EA975 - Laboratório de Engenharia de Software EA975 - Laboratório de Engenharia de Software Turmas K/L - 2017 Aula 8 Vamos inicialmente especificar com mais detalhes o termo "recurso" utilizado no estilo arquitetural REST. Em REST, recursos são uma

Leia mais

Aplicação ASP.NET MVC Cliente de Aplicação Web API

Aplicação ASP.NET MVC Cliente de Aplicação Web API Aplicação ASP.NET MVC Cliente de Aplicação Web API http://www.asp.net/web-api/overview/advanced/calling-a-web-api-from-a-net-client Calling a Web API From a.net Client in ASP.NET Web API 2 (C#) 1. Criar

Leia mais

Universidade Federal de Uberlândia Faculdade de Computação Programação Orientada a Objetos II Prof. Fabiano Dorça. Padrão Observer (Observador)

Universidade Federal de Uberlândia Faculdade de Computação Programação Orientada a Objetos II Prof. Fabiano Dorça. Padrão Observer (Observador) Universidade Federal de Uberlândia Faculdade de Computação Programação Orientada a Objetos II Prof. Fabiano Dorça Problema: Definir uma dependência um-para-muitos entre objetos, de forma quando o estado

Leia mais

API - Lista de Compras

API - Lista de Compras Editora Inovação EIRELI API - Lista de Compras Guilherme Branco Stracini 2015 L i s t a d e C o m p r a s - A P I Sumário Sobre... 2 A aplicação... 2 A API... 2 Ambiente de Manutenção... 3 Ambiente de

Leia mais

DATA ACCESS OBJECT (DAO)

DATA ACCESS OBJECT (DAO) Universidade de São Paulo, Instituto de Ciências Matemáticas e de Computação DATA ACCESS OBJECT (DAO) SSC 621: Análise e Projeto Orientados a Objetos Prof. Dr. Lucas Bueno R. Oliveira 2º Semestre 2015

Leia mais

Publicar uma aplicação ASP.NET Core com base de dados SqlServer no Azure usando Visual Studio e um perfil para publicação (publish profile)

Publicar uma aplicação ASP.NET Core com base de dados SqlServer no Azure usando Visual Studio e um perfil para publicação (publish profile) Publicar uma aplicação ASP.NET Core com base de dados SqlServer no Azure usando Visual Studio e um perfil para publicação (publish profile) 1. Instalar no Visual Studio 2017 o workload Azure Development

Leia mais

CCT0298 ANALISE DE REDES Aula : Trafego HTTP

CCT0298 ANALISE DE REDES Aula : Trafego HTTP CCT0298 ANALISE DE REDES Aula : Trafego HTTP O que é o protocolo HTTP? Hyper Text Transfer Protocol é o protocolo usado na World Wide Web para a distribuição e recuperação de informação. A troca de informações

Leia mais

Classe PHP Client. A classe Zend\Http\Client fornece uma interface para realizar pedidos HTTP.

Classe PHP Client. A classe Zend\Http\Client fornece uma interface para realizar pedidos HTTP. Classe PHP Client A classe Zend\Http\Client fornece uma interface para realizar pedidos HTTP. O método send() é usado para submeter o pedido ao servidor remoto. Estes pedidos retornam um objeto Zend\Http\Response

Leia mais

Protocolo HTTP. Professor Leonardo Larback

Protocolo HTTP. Professor Leonardo Larback Protocolo HTTP Professor Leonardo Larback Protocolo HTTP No final da década de 1980, Tim Berners-Lee criou o protocolo HTTP (HyperText Transfer Protocol) e o padrão de arquivo HTML (HyperText Markup Language)

Leia mais

EXERCÍCIOS DE REVISÃO DE CONTEÚDO QUESTÕES DISSERTATIVAS

EXERCÍCIOS DE REVISÃO DE CONTEÚDO QUESTÕES DISSERTATIVAS EXERCÍCIOS DE REVISÃO DE CONTEÚDO QUESTÕES DISSERTATIVAS 1. Explique a(s) diferença(s) entre design pattern e framework. 2. Analisar o arquivo de configurações (web.xml) abaixo identificando quais suas

Leia mais

Trabalho de laboratório sobre HTTP

Trabalho de laboratório sobre HTTP Trabalho de laboratório sobre HTTP Redes de Computadores I - 2005/2006 LEIC - Tagus Park Semana de 26 a 30 de Setembro 1 Introdução O objectivo desta aula é a familiarização com conceitos básicos do protocolo

Leia mais

TRIGGERS Temas abordados

TRIGGERS Temas abordados MYSQL TRIGGERS TRIGGERS Temas abordados 1 - Introdução ao SQL Triggers SQL Trigger é uma instrução SQL ou um conjunto de instruções SQL,que fica armazenado, é será activado ou disparado quando um evento

Leia mais

STD29006 Sistemas Distribuídos

STD29006 Sistemas Distribuídos STD29006 Sistemas Distribuídos Serviços Web Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/std 22 de setembro

Leia mais

Developing ASP.NET MVC 5 Web Applications (20486)

Developing ASP.NET MVC 5 Web Applications (20486) Developing ASP.NET MVC 5 Web Applications (20486) Formato do curso: Presencial Localidade: Lisboa Com certificação: Microsoft Certified Solutions Developer (MCSD) Data: 02 Abr. 2018 a 06 Abr. 2018 Preço:

Leia mais

EA975 - Laboratório de Engenharia de Software

EA975 - Laboratório de Engenharia de Software EA975 - Laboratório de Engenharia de Software Turmas K/L - 2017 Aula 7 Componentes de Software Um componente de software é um segmento de código que pode ser reusado, eventualmente após um processo de

Leia mais

Instrutor: Eder Martins Franco

Instrutor: Eder Martins Franco Minicurso de REST Aula 1 fsdfsdf Introdução às RESTful APIs com PHP Instrutor: Eder Martins Franco 27 MAI 2017 Faculdade FUCAPI v1.0 Professor who? Programador e professor, notívago e viciado em café.

Leia mais

Exercício Programa Mini Web Server

Exercício Programa Mini Web Server 2004-2017 Volnys Bernal 1 Exercício Programa PSI 2653 Meios Eletrônicos Interativos I 2004-2017 Volnys Bernal 2 Objetivo Desenvolvimento de um programa servidor WEB Composição do grupo 4 pessoas (obrigatório)

Leia mais

Laboratório 3 Controllers

Laboratório 3 Controllers S2B ASP.NET MVC 1 Laboratório 3 Controllers Neste laboratório é apresentado o uso de controladores, ações e objetos de resultado. 1. Uso dos objetos Request e Response 1.1 No Visual Studio, abra a sua

Leia mais

Paradigmas de Programação React Native

Paradigmas de Programação React Native Paradigmas de Programação React Native Cliente HTTP Axios Acessando Web Services e APIs Gil Eduardo de Andrade CLIENTE HTTP AXIOS Introdução: O Axios é um cliente (biblioteca) que permite efetuar requisições

Leia mais

Redes de Computadores

Redes de Computadores Redes de Computadores Camada de Aplicação HTTP FTP SMTP Slide 1 Mensagem de Requisição HTTP linha de pedido (comandos GET, POST,HEAD ) linhas de cabeçalho Carriage return, line feed indica fim da mensagem

Leia mais

Especificam quem tem acesso a cada entidade, isto é, quem tem acesso a. cada classe e cada membro da classe (dados e métodos)

Especificam quem tem acesso a cada entidade, isto é, quem tem acesso a. cada classe e cada membro da classe (dados e métodos) Mecanismos de controlo de acesso Especificam quem tem acesso a cada entidade, isto é, quem tem acesso a cada classe e cada membro da classe (dados e métodos) Modificadores de acesso: public protected private

Leia mais

2 Criar uma Enterprise Application que num módulo EJB irá conter um ou vários Beans.

2 Criar uma Enterprise Application que num módulo EJB irá conter um ou vários Beans. Enterprise java Bens Folha 8-1 Session beans A Aplicação cliente que acede a um session bean (Exemplo retirado de: https://netbeans.org/kb/docs/javaee/entappclient.html) 1 Criar uma Java Class Library

Leia mais

Uma sintaxe universal para identificar os recursos. No sistema REST, cada recurso é unicamente direcionado através da sua URI.

Uma sintaxe universal para identificar os recursos. No sistema REST, cada recurso é unicamente direcionado através da sua URI. REST (REpresentational State Transfer) é um estilo de arquitetura para sistemas de hipermídia distribuídos, como a World Wide Web. O conceito dos recursos identificados por identificadores de recursos

Leia mais

modelos, bancos de dados e active record

modelos, bancos de dados e active record modelos, bancos de dados e active record engenharia de sistemas de informação Daniel Cordeiro 1º de setembro de 2017 Escola de Artes, Ciências e Humanidades EACH USP avisos 5 e 8/set Semana da Pátria 12/set

Leia mais

Webservices LEANDRO MENDES FERREIRA

Webservices LEANDRO MENDES FERREIRA Webservices LEANDRO MENDES FERREIRA Webservices - Agenda CONCEITOS RPC HTTP SOAP RESTFUL CONCEITOS Conceitos Básicos XML (extensible Markup Language) Liguagem de marcação para descrição de documentos de

Leia mais

Repositórios JPA no Projeto ecafeteria

Repositórios JPA no Projeto ecafeteria Repositórios JPA no Projeto ecafeteria Um objeto EntityManager representa uma ligação à base de dados. Quando um objeto EntityManger é criado também é criado um objeto EntityTransaction associado ao EntityManager.

Leia mais

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini /

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini   / Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini E-mail: prof.andre.luis.belini@gmail.com / andre.belini@ifsp.edu.br MATÉRIA: ARQUITETURA DE SOFTWARE ASWA4 Aula N : 10

Leia mais

Arquitetura da World Wide Web. WWW: Histórico. WWW: Usos. WWW: Histórico. WWW Tecnologias Fundamentais. Comércio Eletrônico na WWW

Arquitetura da World Wide Web. WWW: Histórico. WWW: Usos. WWW: Histórico. WWW Tecnologias Fundamentais. Comércio Eletrônico na WWW Arquitetura da World Wide Web World Wide Web Sistema de informação em escala global acessível em tempo real através de redes de computadores como a Internet. Comércio Eletrônico na WWW Wagner Meira Jr.,

Leia mais

PLATAFORMA SIGA RIO DAS VELHAS MANUAL DO CÓDIGO FONTE

PLATAFORMA SIGA RIO DAS VELHAS MANUAL DO CÓDIGO FONTE PLATAFORMA SIGA RIO DAS VELHAS MANUAL DO CÓDIGO FONTE ATO CONVOCATÓRIO Nº 006/2016 CONTRATO DE GESTÃO IGAM Nº 002/IGAM/2012 09/2017 1 PLATAFORMA SIGA RIO DAS VELHAS MANUAL DO CÓDIGO FONTE ATO CONVOCATÓRIO

Leia mais

Web Services REST e JSON

Web Services REST e JSON Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do Maranhão Objetivos Nesta aula

Leia mais

código belo vs. legado e qualidade de software

código belo vs. legado e qualidade de software código belo vs. legado e qualidade de software engenharia de sistemas de informação Daniel Cordeiro 22 de agosto de 2017 Escola de Artes, Ciências e Humanidades EACH USP pergunta Em geral, qual afirmação

Leia mais

WebAPI. Comente o bloco system.data e entityframework (caso existam) no web.config

WebAPI. Comente o bloco system.data e entityframework (caso existam) no web.config WebAPI Adicionando WebAPI num projeto MVC Comente o bloco system.data e entityframework (caso existam) no web.config

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro 3 Classes e instanciação de objectos (em Java) Suponhamos que queremos criar uma classe que especifique a estrutura e o comportamento de objectos do tipo Contador. As instâncias da classe Contador devem

Leia mais

Fernando M. V. Ramos, RC (LEI), TP02. HTTP. Redes de Computadores

Fernando M. V. Ramos, RC (LEI), TP02. HTTP. Redes de Computadores TP02. HTTP Redes de Computadores Objetivos Uma introdução ao protocolo HTTP Um olhar com algum detalhe para dentro do protocolo Noções básicas Uma página web consiste num conjunto de objetos Ficheiros

Leia mais

Prática da Disciplina de Sistemas Distribuídos Web Services REST IFMA DAI Professor Mauro Lopes C. Silva

Prática da Disciplina de Sistemas Distribuídos Web Services REST IFMA DAI Professor Mauro Lopes C. Silva 1. O que é REST e RESTful? Prática da Disciplina de Sistemas Distribuídos Web Services REST IFMA DAI Professor Mauro Lopes C. Silva Nos últimos tempos, uma forte tendência vem mudando a forma de pensar

Leia mais

Construtores e Especificadores de Acesso

Construtores e Especificadores de Acesso Construtores e Especificadores de Acesso Professora: Fátima L. S. Nunes 1 1 1 Orientação a Objetos Conceitos do Paradigma de Orientação a Objetos já vistos: Classes atributos e métodos Objetos instanciação

Leia mais

Integração por Web Services

Integração por Web Services Integração por Web Services Versão 1.1 Maio 2010 Índice Índice... 2 Introdução... 3 Arquitectura PRIMAVERA... 4 User Interface... 4 Motor... 4 Interface para o Administrador... 5 Motores PRIMAVERA em Web

Leia mais

Programação com Objectos. Processamento de Dados I. 2. Classes, Atributos e Métodos

Programação com Objectos. Processamento de Dados I. 2. Classes, Atributos e Métodos Programação com Objectos Processamento de Dados I 2. Classes, Atributos e Métodos 1 Classes, Atributos e Métodos Modificadores de acesso (visibilidade) Sobrecarga de métodos (method overloading) Variáveis

Leia mais

Bem vindos ao Curso de ASP.NET MVC 3 Razor e C#

Bem vindos ao Curso de ASP.NET MVC 3 Razor e C# Bem vindos ao Curso de ASP.NET MVC 3 Razor e C# Pré-requisitos: O curso de C# Csharp veja aqui e o curso de ASP.NET Básico veja aqui Valor R$129.00 compre aqui Veja o video do curso aqui Aprenda ASP.NET

Leia mais

Java para WEB com Struts 2 e Hibernate

Java para WEB com Struts 2 e Hibernate Java para WEB com Struts 2 e Hibernate Aula 01 http://fernandoanselmo.orgfree.com fernando.anselmo74@gmail.com Apresentação Fernando Anselmo fernando.anselmo74@gmail.com 25 anos na área de Desenvolvimento

Leia mais

Web Services. Professor: Ricardo Luis dos Santos IFSUL Campus Sapucaia do Sul

Web Services. Professor: Ricardo Luis dos Santos IFSUL Campus Sapucaia do Sul Web Services Professor: Ricardo Luis dos Santos IFSUL 2015 Rápida revisão da última aula 3 Rápida revisão da última aula 1 Listar o filme com o id 475 2 Listar todos os filmes com o título que inicia com

Leia mais

Aplicação ASP.NET MVC Cliente de Aplicação Web API (com Class Library)

Aplicação ASP.NET MVC Cliente de Aplicação Web API (com Class Library) Aplicação ASP.NET MVC Cliente de Aplicação Web API (com Class Library) http://www.asp.net/web-api/overview/advanced/calling-a-web-api-from-a-net-client Calling a Web API From a.net Client in ASP.NET Web

Leia mais

Redes de Computadores

Redes de Computadores Prof. Universidade Federal de Mato Grosso do Sul brivaldo@facom.ufms.br 18 de maio de 2017 Visão Geral 1 Visão Geral 2 3 4 Web e o HTTP Relembrando rapidamente, página web é construída com objetos um objeto

Leia mais

Programação por Objectos. Java

Programação por Objectos. Java Programação por Objectos Java Parte 5: Associações LEEC@IST Java 1/32 Associação revisão Uma associação representa uma referência entre objectos. Numa associação são definidos: Identificador termo descritivo

Leia mais

Desmistificando as aplicações RESTful usando o Django Rest. Bruno Oliveira Instituto Federal da Bahia

Desmistificando as aplicações RESTful usando o Django Rest. Bruno Oliveira Instituto Federal da Bahia Desmistificando as aplicações RESTful usando o Django Rest Bruno Oliveira Instituto Federal da Bahia Bruno Oliveira oliveirabrunoa@gmail.com Bruno.Oliveira21 oliveirabrunoa http://lattes.cnpq.br/9651894815550789

Leia mais

Desenvolvimento Web. Versão 2 Jan/2019. Professor Emiliano S. Monteiro

Desenvolvimento Web. Versão 2 Jan/2019. Professor Emiliano S. Monteiro Desenvolvimento Web Versão 2 Jan/2019 Professor Emiliano S. Monteiro Introdução ao.net ASP web forms Prof. Emiliano S. Monteiro Desabilitar a preview window do VS 2019 Ferramentas Opções Caixa de

Leia mais

Programação para Internet

Programação para Internet Universidade Federal de Uberlândia Faculdade de Computação Programação para Internet Curso de Sistemas de Informação Prof. Dr. Daniel A. Furtado Módulo 10 Web Dinâmica Introdução ao AJAX AJAX Introdução

Leia mais

DESENVOLVIMENTO DE SOFTWARE PARA INTERNET. quarta-feira, 17 de outubro de 12

DESENVOLVIMENTO DE SOFTWARE PARA INTERNET. quarta-feira, 17 de outubro de 12 DESENVOLVIMENTO DE SOFTWARE PARA INTERNET 1 WEB USER CONTROLS 2 Tipos de Web Controls: WEB USER CONTROLS HTML CONTROLS HTML SERVER CONTROLS WEB SERVER CONTROLS VALIDATION CONTROLS USER CONTROLS 3 Tipos

Leia mais

Programação Orientada por Objectos 2007/2008

Programação Orientada por Objectos 2007/2008 Programação Orientada por Objectos 2007/2008 Segundo Teste, 30/6/2008, Duração 1h30 (20 valores) 1 [2v] Considere que pretende desenvolver uma função num jogo que trata uma colisão entre dois objectos

Leia mais

2 Vectores de objectos

2 Vectores de objectos 2 Vectores de objectos Agenda de contactos 3 Objectivo Manipular uma agenda de contactos. Descrição e Funcionalides Cada contacto na agenda caracteriza-se por um nome, um telefone e um e-mail. Na agenda,

Leia mais

Web Presentation Patterns - Controllers

Web Presentation Patterns - Controllers Instituto Superior Técnico 29 de Novembro de 2004 1 2 3 Page Controller Front Controller 4 5 Porquê Usar Web Applications Não necessita instalar software no cliente. Acesso universal fácil. Interface comum

Leia mais

PROJETOS EXEMPLO DE ASP.NET MVC

PROJETOS EXEMPLO DE ASP.NET MVC INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIAS E TECNOLOGIAS DO RIO GRANDE DO NORTE PROFESSOR: JOSÉ ANTÔNIO DA CUNHA PROJETOS EXEMPLO DE ASP.NET MVC Projeto 1: Projeto 2: Implementando o CRUD em ASP.NET MVC,

Leia mais

Número: Nome: Página 1 de 7. Duração da prova: 1h30m. Grupo I [7] Considere o seguinte excerto (incompleto) de um programa cliente em SUN RPC:

Número: Nome: Página 1 de 7. Duração da prova: 1h30m. Grupo I [7] Considere o seguinte excerto (incompleto) de um programa cliente em SUN RPC: Número: Nome: Página 1 de 7 LEIC/LETI 2016/17, Repescagem do 1º Teste de Sistemas Distribuídos 4 de julho de 2017 Responda no enunciado, usando apenas o espaço fornecido. Identifique todas as folhas. Uma

Leia mais

WOW Mobile Rui Miguel Miranda Ramos

WOW Mobile Rui Miguel Miranda Ramos WOW Mobile Rui Miguel Miranda Ramos Programa 1. Plataforma WOW 2. WOW Mobile 3. API do WOW 4. Clientes 5. Conclusões Plataforma WOW Plataforma WOW Issue tracking system Motor de workflow flexível Plataforma

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS SISTEMAS DISTRIBUÍDOS Aula 2 Trabalho prático Deployment Material de suporte às aulas de Sistemas Distribuídos Copyright DI FCT/ UNL / 1 AGENDA Apresentação do trabalho Deployment usando Docker Material

Leia mais

Desenvolvimento de aplicações para a Cloud. Blob

Desenvolvimento de aplicações para a Cloud. Blob Desenvolvimento de aplicações para a Cloud Blob O serviço Blob } O serviço Blob é desenhado para armazenar um conjunto largo de objectos binários, como documentos, imagens, vídeos e músicas. Esquema URL

Leia mais

Continuação... Criando a Interface e adiante

Continuação... Criando a Interface e adiante Continuação... Criando a Interface e adiante Racepitulando 1. Criar um projeto web: JavaServer Faces + Tomcat + Primefaces 2. Criar um banco de dados Postgresql 3. Adicionar os jars: javax.persistence

Leia mais

Linguagem de Programação II Implementação

Linguagem de Programação II Implementação Linguagem de Programação II Implementação Prof. Alessandro Borges 2 Tópicos Implementação em Java Variáveis Palavras reservadas Pacotes Identificador this Acessando membros de outros objetos API Java Nossa

Leia mais

DESENVOLVIMENTO DE SOFTWARE PARA INTERNET LABORATÓRIO 4 PROF. EMILIO PARMEGIANI

DESENVOLVIMENTO DE SOFTWARE PARA INTERNET LABORATÓRIO 4 PROF. EMILIO PARMEGIANI DESENVOLVIMENTO DE SOFTWARE PARA INTERNET LABORATÓRIO 4 PROF. EMILIO PARMEGIANI WEB USER CONTROLS Neste exercício trabalharemos com a criação de controles ASP.NET personalizados. Através do uso de Web

Leia mais

Flickr, shindotv/ / BASES DE DADOS. Laboratórios de Informática João Paulo Barraca, André Zúquete, Diogo Gomes

Flickr, shindotv/ / BASES DE DADOS. Laboratórios de Informática João Paulo Barraca, André Zúquete, Diogo Gomes Flickr, shindotv/3835365695/ BASES DE DADOS Laboratórios de Informática 2014-2015 João Paulo Barraca, André Zúquete, Diogo Gomes Armazenamento de Informação Aplicações necessitam de armazenar informação

Leia mais

Sumário. SQL - Criação de Tabelas. Structured Query Language. SQL Versões. André Restivo. October 18, 2010

Sumário. SQL - Criação de Tabelas. Structured Query Language. SQL Versões. André Restivo. October 18, 2010 Sumário SQL - Criação de Tabelas André Restivo Faculdade de Engenharia da Universidade do Porto October 18, 2010 1 Introdução 2 Tabelas 3 Colunas 4 5 Modificação de Tabelas 6 Domínios André Restivo (FEUP)

Leia mais

Capítulo 7. A camada de aplicação

Capítulo 7. A camada de aplicação Capítulo 7 A camada de aplicação slide 1 slide 2 DNS Sistema de Nomes de Domínio O espaço de nomes DNS Registros de recursos de domínio Servidores de nome slide 3 O espaço de nomes DNS (1) Parte do espaço

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro 6 Exceções Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção. Uma exceção é um erro recuperável O controlo da execução do programa

Leia mais

Web Services REST JAX-RS

Web Services REST JAX-RS Web Services REST JAX-RS Professor: Ricardo Luis dos Santos IFSUL 2015 Agenda Principais tecnologias envolvidas Testando os serviços desenvolvidos JAX-RS Principais anotações JAX-RS Principais anotações

Leia mais

Java para Desktop. Programação Orientada à Objetos 2 JSE

Java para Desktop. Programação Orientada à Objetos 2 JSE Java para Desktop Programação Orientada à Objetos 2 JSE Encapsulamento significa "ocultar informações, ele define que cada objeto contém todos os detalhes de implementação necessários sobre como ele funciona

Leia mais

10 atributos de uma API de sucesso

10 atributos de uma API de sucesso 10 atributos de uma API de sucesso Do design RESTful e segurança, a formas de divulgação e engajamento Kleber Bacili kleber.bacili@sensedia.com @kleberbacili slideshare.net/kleberbacili Cerquilho Kleber

Leia mais

Raspando dados. O maravilhoso mundo da multidão de informações. pedro belasco - cromatica - cdc W3C - Open Data

Raspando dados. O maravilhoso mundo da multidão de informações. pedro belasco - cromatica - cdc W3C - Open Data Raspando dados O maravilhoso mundo da multidão de informações pedro belasco - cromatica - cdc 2010 - W3C - Open Data 1 Parte 1, Mas, afinal, que diabos é uma página? Arquitetura da Internet, como computadores

Leia mais

Aula 06 Usando controles em ASP.NET

Aula 06 Usando controles em ASP.NET Tecnologia em Análise e Desenvolvimento de Sistemas Disciplina: Linguagem de Programação Plataforma.NET 2 Aula 06 Usando controles em ASP.NET Nas propriedades do FORM temos a opções EnableViewState. Esta

Leia mais

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS ARMAZENAMENTO EM BD NO DM. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS ARMAZENAMENTO EM BD NO DM. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS ARMAZENAMENTO EM BD NO DM Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza ROTEIRO Introdução App de exemplo Implementação do exemplo Testes realizados

Leia mais

Redes de Computadores

Redes de Computadores Redes de Computadores HTTP Prof. Thiago Dutra Agenda Definição de HTTP Hipertexto Características do HTTP O HTTP e a Web Conexões HTTP Mensagens HTTP Cookies Caches Web GET Condicional

Leia mais

ESQUEMA AULA PRÁTICA 0 Familiarização com o Ambiente de Desenvolvimento NetBeans Construção do primeiro programa em java.

ESQUEMA AULA PRÁTICA 0 Familiarização com o Ambiente de Desenvolvimento NetBeans Construção do primeiro programa em java. P. Fazendeiro & P. Prata POO FP0/1 ESQUEMA AULA PRÁTICA 0 Familiarização com o Ambiente de Desenvolvimento NetBeans Construção do primeiro programa em java. 0 Iniciar o ambiente de desenvolvimento integrado

Leia mais

Construindo Aplicações com ASP.NET MVC 2.0 Aula 03 Luiz Alberto Ferreira Gomes. Ciência da Computação da PUC Minas

Construindo Aplicações com ASP.NET MVC 2.0 Aula 03 Luiz Alberto Ferreira Gomes. Ciência da Computação da PUC Minas Construindo Aplicações com ASP.NET MVC 2.0 Aula 03 Luiz Alberto Ferreira Gomes Ciência da Computação da PUC Minas 2 Camada responsável por armazenar em um repositório de dados e reconstituir objetos de

Leia mais

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS ARMAZENAMENTO EM BD NO DM. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS ARMAZENAMENTO EM BD NO DM. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS ARMAZENAMENTO EM BD NO DM Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza ROTEIRO Introdução App de exemplo Implementação do exemplo Testes realizados

Leia mais

Como funciona a plataforma Superlógica? - Livro 4 de 4. Como funciona a interface de integração? Como você poderá complementar o sistema?

Como funciona a plataforma Superlógica? - Livro 4 de 4. Como funciona a interface de integração? Como você poderá complementar o sistema? Como funciona a plataforma Superlógica? - Livro 4 de 4 API SUPERLÓGICA Como funciona a interface de integração? Como você poderá complementar o sistema? www.superlogica.com 0800 709 6800 https://github.com/superlogica/api

Leia mais

Projecto Integrador. Introdução ao REST. Material de suporte às aulas de Proj. Integrador (Nuno Preguiça) Copyright DI FCT/ UNL / 1

Projecto Integrador. Introdução ao REST. Material de suporte às aulas de Proj. Integrador (Nuno Preguiça) Copyright DI FCT/ UNL / 1 Projecto Integrador Introdução ao REST Material de suporte às aulas de Proj. Integrador (Nuno Preguiça) Copyright DI FCT/ UNL / 1 Notas Imagens do livro: G. Alonso et. Al. Web Services: Concepts, Architectures

Leia mais

AJAX no GASweb. Mas e afinal, para que usamos o AJAX?

AJAX no GASweb. Mas e afinal, para que usamos o AJAX? Nível - Avançado AJAX no GASweb Por: Pablo Hadler AJAX (Asynchronous Javascript and XML) foi criado com o princípio de ser uma maneira rápida e otimizada de podermos fazer requisições Web, sendo esta totalmente

Leia mais

ASP.NET Web Services. José Antônio da Cunha IFRN

ASP.NET Web Services. José Antônio da Cunha IFRN José Antônio da Cunha IFRN Algumas das aplicações mais interessantes Silverlight tem backbone de código escondido do lado do servidor. Eles podem chamar um servidor Web para recuperar dados de um banco

Leia mais

Java RMI. RMI Remote Method Invocation. Chamadas Remotas de Procedimentos (RPC) RPC - Implementação

Java RMI. RMI Remote Method Invocation. Chamadas Remotas de Procedimentos (RPC) RPC - Implementação Java Remote Method Invocation Java Remote Method Invocation () é um protocolo Java para comunicação entre processos Permite objetos Java invocar transparentemente métodos de outros objetos (que podem estar

Leia mais

Collections Framework

Collections Framework Collections Framework 1 Arrays p Manipular array é bastante trabalhoso. p Dificuldades aparecem em diversos momentos: n não podemos redimensionar um array em Java; n é impossível buscar diretamente por

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro. Hierarquia de classes e mecanismo de ligação

Programação Orientada a Objectos - P. Prata, P. Fazendeiro. Hierarquia de classes e mecanismo de ligação 4 Conceito de Herança Hierarquia de classes e mecanismo de ligação Herança Uma classe pode herdar operações de uma superclasse e as suas operações podem ser herdadas por subclasses. O mecanismo de herança

Leia mais

1. Base de Dados criada automaticamente pelo Entity Framework. 2. Correspondência entre classes da aplicação Asp.Net e tabelas da base de dados

1. Base de Dados criada automaticamente pelo Entity Framework. 2. Correspondência entre classes da aplicação Asp.Net e tabelas da base de dados 1. Base de Dados criada automaticamente pelo Entity Framework O template usado por omissão no desenvolvimento de uma aplicação Asp.Net MVC 5 através do Visual Studio 2015 com autenticação Individual User

Leia mais