• Nenhum resultado encontrado

Softwares para web e integração empresarial

No documento Fundamentos de Sistema Da Informação 2017 (páginas 155-161)

A Infraestrutura de Apoio aos Sistemas

Windows 7 e Windows Vista

5.3 Softwares para web e integração empresarial

Para que possamos entender os software que atuam na web, precisamos compreender que estes são divididos de acordo com o contexto ou local em que são executados. Eles são divididos em software frontend e software backend.

•  Frontend são os softwares executados no computador do cliente ou do usu-

ário final; geralmente são executados nos navegadores ou browsers. Geral- mente são as páginas ou websites que acessamos e visualizamos, que são recebidos, executados ou interpretados em nossos computadores.

•  Backend são os softwares executados por quem está provendo o serviço,

ou seja, os servidores. Para que possamos receber as páginas com as in- formações solicitadas quando acessamos uma página, um programa é executado no computador do provedor, ou servidor, que seleciona as in- formações que solicitamos e monta as páginas que serão entregues para o nosso browser cliente.

156

capítulo 5 AJAX Request: POST Data (incl. Viewstate) AJAX Reponse: HTML Markup + Viewstate) <HTML> Postback initiates AJAX request page.aspx UpdatePanel Server event

Figura 8 – Processo de interação entre frontend e backend.

5.3.1 Java, HTML e software para integração empresarial

Para que possamos entender um pouco melhor o funcionamento do software para web e o funcionamento da estrutura de frontend e backend, vamos conhe- cer algumas tecnologias associadas a eles. Veremos a seguir o HTML, o Java e as tecnologias para integração empresarial.

O HTML, Hypertext Markup Language ou Linguagem de Marcação Hiper- texto, é uma linguagem utilizada para construir uma página web. Foi concebida para apresentar conteúdos estáticos de texto e imagens (hipertextos) com links (ligações) para outras páginas. O HTML não é uma linguagem de programação, mas sim uma linguagem de formatação de conteúdo. Devido a essa caracterís- tica, todo o conteúdo HTML é estático e não pode ser alterado dinamicamente; para isso, são associadas a eles outras tecnologias constituindo o que chama- mos de xHTML. Entre as tecnologias associadas ao HTML que permitem ob- termos o comportamento dinâmico, podemos destacar o JavaScript e as requi- sições de comunicação com o servidor feita através de Ajax. Não estudaremos essas tecnologias neste disciplina.

CONEXÃO

Para saber mais sobre HTML, JavaScrpit e Ajax, acesse os links abaixo: <http://pt.wikipedia.org/wiki/HTML>

<http://pt.wikipedia.org/wiki/JavaScript>

<http://pt.wikipedia.org/wiki/AJAX_(programa%C3%A7%C3%A3o)>

A figura abaixo ilustra a estrutura utilizada pelo HTML para formatar o texto apresentado em uma página web.

<html>

<head>

<title>Exemplo de documento HTML</title> </head> <body> <h1>Exemplo</h1> <p>Este é um exemplo de HTMl</p> </body> </html>

158

capítulo 5

Vimos a principal tecnologia de frontend utilizada atualmente; agora, co- nheceremos uma tecnologia de backend relevante no cenário mundial, o Java.

O Java é uma linguagem de programação desenvolvida na década de 1990 por uma empresa chamada Sun Microsystem e que hoje é mantida pela Ora- cle. Inicialmente foi criada com o objetivo de ser utilizada em equipamentos eletrodomésticos e dispositivos, mas tornou-se muito popular pelo seu uso na

internet. Atualmente temos aplicações Java rodando nos mais diversos meios,

desde servidores web e mainframes até computadores convencionais e celula- res, tornando-se uma das principais referências de linguagens no desenvolvi- mento de software.

Seu crescimento e popularização de deve muito a algumas características apresentadas a seguir:

•  orientação a objetos: o Java implementa as característricas e funciona- lidades da orientação a objetos, que é uma técnica de programação de computadores que permite a abstração de objetos reais em objetos de programação, atrás do mapeamento de suas características e ações, im- plementando para isso conceitos como classe, herança e polimorfismo; •  portabilidade: esta é umas das características que mais pesaram na dis-

seminação do Java. A portabilidade permite que uma mesma aplicação desenvolvida para o sistema operacional Windows possa ser executada em máquinas com ambientes Linux. Tal portabilidade não se aplica ape- nas a sistemas de software, mas também a plataformas de hardware, com certas restrições;

•  multithreads: suporte ao desenvolvimento de aplicações concorrentes, utilizando o máximo da capacidade dos processadores atuais com múl- tiplos núcleos;

•  máquina virtual Java: característica que permite a portabilidade e abstrai as características do hardware físico em uma máquina virtual que é igual em qualquer plataforma. Falaremos mais detalhadamente dela a seguir. O Java é uma linguagem interpretada, ou seja, é uma lingugem que é trans- formada em um pseudo-código ou código intermediário também conhecido como bytecode, que não é o código que um computador entende nativamente, mas, sim, um código que é entendido pela máquina virtual Java ou JVM. Esta JVM abstrai as características reais do hardware como processador, dispositi- vos de entrada e saída etc. em uma máquina padrão virtual. Dessa forma, o Java possui uma plataforma própria que posteriomente é convertida pela JVM para

a máquina real. Cada plataforma possui sua própria JVM permitindo, assim, que um mesmo código ou bytecode possa rodar nas diferentes JVMs das dife- rentes plataformas, sem necessidade de alterações. A figura a seguir mostra o processo utilizado pelo Java.

Compilador JVM Processador Compilação Java Bytecode Ambiente Java

Figura 10 – Processo de compilação e execução da linguagem Java

Além da comunicação entre servidor e cliente final na estrutura da web, exis- tem integração entre serviços e servidores, entre organizações e o oferecimento de soluções mais completas e com maior capacidade ao usuário final. As integrações como as que estudamos ateriomente e que são utilizadas no comercio eletrônico e principalmente no B2B requerem a utilização de tecnologias específicas para esta finalidade, permitindo que a computação seja distribuída em diferentes pontos para alcançar um único objetivo.

Nesses ambientes heterogêneos de hardware e software, onde cada organi- zação pode ter sua própria estrutrua e tecnolgias implementadas, são necessá- rias padronização na comunicação e troca de dados. Para tal, surgiu o conceito de middleware.

Middleware é uma camada de software que fornece suporte às interações

entre diferentes partes de uma aplicação ou de aplicações distribuídas. Em termos mais simples, é uma tecnologia que permite que diferentes partes do

software, que estão rodando em diferentes organizações, possam se comunicar

sem que haja perdas ou falhas. Exitem diversas tecnlogias de middleaware, den- tre elas podemos destacar o CORBA, o JAVA/RMI e o DCOM. Utilizando uma dessas tecnlogias, as diferentes partes dos sistemas sabem se comunicar utili- zando o mesmo padrão e as mesmas linguagens, evitando perdas e falhas nas comunicções pelas redes de comunicação como a web.

160

capítulo 5

5.3.2 Serviços Web e arquitetura orientada a serviços

Outra forma de disponibilizar serviços pela web a usuários e principalmente a par- ceiros é através de web services ou serviços web e arquiteturas orientadas a serviços. Um web service consiste na disponibilização de um serviço pela internet, como o serviço dos correios, que permite a consulta de CEP ou do valor de um SEDEX, o qual pode ser feito através de uma página no site dos correios ou atra- vés de um serviço disponibilizado para integração com outros sistemas. Isso permite que qualquer empresa ou organização que queira consultar um CEP ou o valor de um SEDEX nos correios possa fazê-lo através de uma requisição ao servidor dos correios, que será respondida utilizando-se uma linguagem e es- trutura específica chamada XML. Para que essa comunicação possa ocorrer de forma adequada deve ser utilizado um protocolo de comunicação, que define as regras utilizadas para troca de informações, chamado SOAP.

Como vimos, a tecnologia de web services permite a comunicação entre di- ferentes sistemas de forma padronizada, independentemente da plataforma ou linguagem de programação, sendo dessa forma muito interessante para aplicações B2B que requerem integração entre sistemas.

A figura a seguir ilustra uma comunicação de web service utilizando-se o pro- tocolo SOAP. Quando duas aplicações estão se comunicando, uma terá o papel de Cliente Wrapper e outra de Servidor Wrapper. O cliente é a aplicação que está requisitando as informações e o servidor é o que está provendo as informações. Todo conteúdo desta comunicação é trafegado através de XML de comunicação.

Applic. 1 As client SOAP Message SOAP Message HTTP WS

Client Wrapper As serverApplic. 2 WS

Server Wrapper

O XML é uma linguagem de marcação extensível ou eXtensible Markup Lan- guage. É uma linguagem de computador que contém dados estruturados com a finalidade de descrever a informação ali contida. Ela utiliza tags de marcação para identificar os dados e facilitar seu entendimento. Um exemplo de utili- zação e aplicação do XML é a linguagem HTML apresentada anteriormente, utilizada para estruturar as informações para apresentação em tela por um na- vegador de internet.

A figura abaixo mostra dados de um usuário organizados em uma forma de planilha e, na sequência, na estrutura de XML.

Figura 12 – Exemplo de XML.

No documento Fundamentos de Sistema Da Informação 2017 (páginas 155-161)