Web Services Service-Oriented Architecture Exemplo expositivo: Locadora de Carros › Diagrama de Classes › Diagrama Entidade-Relacionamento › Escrever as classes › Escrever o Data Access Object › Escrever os web services › Escrever o cliente 2 Web Services São componentes de aplicações, disponíveis pela web A comunicação com web services é feita através de protocolos abertos O mais utilizado desses protocolos é o HTTP Web services podem ser utilizados para reutilizar componentes de aplicação... ... e conectar diferentes softwares já 4 existentes, em diferentes plataformas Cliente Resposta Requisição Parâmetros podem ser passados, respeitando o contrato fornecido pelo serviço (API) Protocol o Mensagem de resposta do serviço. Pode ser uma string, um arquivo XML, um objeto JSON, dentre outros Serviço 5 A requisição para visita a um site pode ser vista como um dos mais simples web services Browser Requisição Requisição do tipo Get HTTP Resposta O script index.php é processado, e então a página HTML resultante é transferida JPRibeiro.com/index.php 6 Existem protocolos (abertos) que definem/padronizam a comunicação dos web services: › SOAP: Simple Object Access Protocol › WSDL: Web Service Description Language › UDDI: Universal Description, Discovery and Integration › REST: Representational State Transfer 7 Para nosso exemplo, construiremos serviços bastante simples em PHP, que não implementarão nenhum desses protocolos Em aplicações reais, deve-se buscar a adoção do protocolo mais adequado à situação, para se obter: › Interoperabilidade com outros sistemas › Segurança › Escalabilidade 8 9 Serviços = caixas pretas Baixo acoplamento Reusabilidade de componentes Maior segurança nos serviços (testes!) 10 Diagrama de classes 11 http://www.dummies.com/Section/id612246.html 12