A maneira mais fácil de começar com o Ajax e RESTA maneira mais fácil de começar com o Ajax e REST Problema Você quer saber a melhor maneira de começar a escrever Ajax e REST. Solução Ao desenvolver uma aplicação Ajax e REST, você deve decidir sobre as ferramentas e frameworks que você vai usar. A escolha é simples: usar o que você está usando hoje, e escrever algumas aplicações Ajax. Você não precisa alterar as ferramentas que você está usando hoje. Se você estiver usando ASP.NET, JavaServer Pages (JSP), PHP, Ruby ou Python, você pode continuar com essas ferramentas. Ajax utiliza JavaScript, DHTML, eo objeto XMLHttpRequest, mas as tecnologias ASP.NET, PHP e similares não o impedem de escrever páginas HTML que fazem uso de técnicas de Ajax. Se a sua tecnologia impede você de escrever aplicações Ajax, então você deve pensar muito sobre continuar usando a tecnologia. Afinal, você está lendo um artigo Ajax e REST receita, assim que eu supor que você está pensando em implementar soluções Ajax e REST. Quando o cliente dissociação do servidor, você pode criar o conteúdo de ambos os lados de forma independente. Você pode desenvolver o cliente usando tecnologias como DHTML e JavaScript. Dentro do cliente, você pode codificar referências aos serviços oferecidos pelo cliente. O código do cliente oferece uma infra-estrutura onde o conteúdo gerado pelos serviços podem ser injetados. O cliente e servidor interagem uns com os outros contratos de usar. Usando contratos, você pode desenvolver o cliente de forma independente e testá-lo utilizando objetos mock. Usando contratos, você pode desenvolver o servidor de forma independente e testá-lo por meio de testes de uma suíte de testes. Então, quando o cliente está combinado com o servidor, o aplicativo irá funcionar sem a necessidade de uma grande quantidade de ensaios. Naturalmente, isto pressupõe que os testes para o cliente e servidor são implementados adequadamente teste normal muitas vezes é também necessário. Tendo dissociado do cliente a partir do servidor, você pode facilmente modularizar e delegar a trabalho de implementação aos membros individuais da equipe. Permitindo que cada membro da equipe para se concentrar na tarefa torna possível a especializar-se e criar conteúdos inovadores. Por exemplo, delegando o trabalho para o servidor de banco de dados permite que um desenvolvedor de cliente para fazer mais uso de gráficos e representações inovadoras dos dados gerados pelo serviço. Delegar o trabalho do usuário do servidor para o lado do cliente torna possível para o desenvolvedor do servidor para se concentrar na otimização de banco de dados e acesso velocidades. Dissociado Tendo o cliente a partir do servidor, você pode fazer uso de enquadramentos específicos para torná-lo mais simples de implementar partes específicas da lógica. Por exemplo, um cliente-lado desenvolvedor pode usar o Prototype8 ou quadros Dojo9. Kit de ferramentas que você acaba usando a sua escolha, e não há resposta certa ou errada. Você precisa investigar o que você precisa e ver se o quadro oferece essa funcionalidade. Quando começar com Ajax e REST, lembre-se os seguintes pontos:
• Você pode usar Ajax e REST hoje com as tecnologias existentes. Você geralmente não precisa jogar fora as antigas tecnologias e substituí-los por novos. • Ajax e REST são cerca de dissociar o cliente do servidor e fazer uso de Web services. • Ajax e frameworks resto pode tornar mais simples para que você execute suas aplicações, mas porque há tantos quadros, é necessário inspecioná-los para ver se atendem às suas necessidades. Implementar um Ajax e REST Aplicativo Usando Test-Driven Development Techniques Depois que você está convencido de que você quer desenvolver aplicativos AJAX e REST, você vai querer executar algumas rotinas de testes. Problema Você quer saber a melhor maneira de testar suas aplicações Ajax e REST. Solução Esta receita explica as diferentes camadas de teste desenvolvimento orientado techniques.10 Existem diferentes camadas, pois uma aplicação Ajax e REST envolve tanto client-side e server-side. Para colocá-lo simplesmente, você não contratar alguns usuários para testar uma aplicação Ajax e REST e levá-los para testar cenários de aplicação. Conforme dito anteriormente, no lado do servidor e do lado do cliente está dissociada da outra. Esta é uma boa aproximação para fins de teste, porque você pode desenvolver e testar o cliente eo servidor de forma independente um do outro. Um arquiteto tem a capacidade de definir um contrato entre o cliente eo servidor, permitindo que cada um trabalhar de forma independente um do outro. URLs. O intervalo de quatro camadas de complexidade de implementação complicado simples. Cada camada, que é explicado como se segue, é associado com um identificador numérico: • GUI nível de testes envolve testar o Ajax e DHTML interface do usuário. REST • nível de testes testar o serviço REST e interfaces da Web para a aplicação correta dos contratos definidos. • Server-side-classe nível testes testar a implementação da funcionalidade usando Test-Driven técnicas de desenvolvimento. • Mock URL testes de nível não são realmente os testes, mas sim aplicar a contratos definidos pelo descanso e interfaces de serviços web. As implementações mock lhe permitem testar a GUI sem precisar de um servidor completou implementação do lado. Cada camada exige a utilização de um kit de ferramentas de teste diferentes, pois cada camada de testes de um aspecto diferente do Ajax e aplicação REST. No entanto, isto levanta uma pergunta: Você começar a desenvolver com o lado do servidor ou do lado do cliente? Você desenvolve usando técnicas top-down ou bottom-up técnicas? Você poderá desenvolver todas as camadas de uma só vez utilizando técnicas ágeis, embora não seja uma boa idéia. O problema é que usando técnicas ágeis em todas as camadas de uma só vez, você criar instantaneamente uma sobrecarga de comunicação e anule o objectivo de dissociar o cliente a partir do servidor. de forma completa ágil, o cliente, contrato e servidor são desenvolvidos de uma vez. Se o cliente tiver um problema, que pode causar uma mudança no contrato eo servidor, fazendo com que o cliente eo servidor se tornar acoplados. Não quer dizer que você não deve desenvolver usando técnicas ágeis. O que você precisa fazer é dirigir as técnicas ágeis para que o cliente eo servidor estão dissociados um do outro. Assim, a primeira coisa que você deve desenvolver são os contratos que usa o cliente eo servidor oferece. A idéia por trás desta arquitetura é para testar e implementar um processo de usuário completo sem realmente implementar o cliente ou servidor. A camada de testes 2 representa um conjunto de testes utilizados para verificar se o servidor de aplicação da oferta é completa. O Mock camada URL representa um conjunto de testes utilizados para verificar se a implementação do lado do cliente é concluído. Por ter a camada de testes 2 verificar os dados gerados pela camada de URL Mock, os contratos de abrangência são verificadas. Praticamente falando, você poderia usar uma linguagem de programação como Java para fazer uma série de chamadas de serviço Web que define um contrato. Essas chamadas serviço da Web representam cenários que a implementação do cliente seria executado. Você poderia implementar os cenários de utilização de técnicas ágeis definida por casos de uso do aplicativo. Por exemplo, se um caso de uso é para abrir uma conta bancária, então você deve criar um teste que faria o serviço da Web apropriado chamadas para abrir uma conta bancária. Um teste não pode funcionar sem alguma aplicação. E desde que você não tem uma aplicação, você deve falsificar o pedido e resposta ou, mais apropriadamente, use o quadro Mock URL. O papel do quadro URL Mock é antecipar os testes do cliente. Quando um teste está em andamento, o quadro Mock URL verifica os dados enviados pelo teste e, em seguida, gera a resposta adequada. A verificação e geração são o resultado de executar alguma lógica e de carregamento e envio de dados de aplicativo pregenerated. É importante que a simulação não URL implementar lógica de negócio, mas sim usar a lógica enlatados e pregenerated pedidos e respostas, tanto quanto possível. Quando os contratos forem executados corretamente, os testes não deve ser capaz de dizer se uma execução ao vivo é da geração dos dados ou se tem alguma camada falsificou os dados. Apropriadamente, o Mock URL quadro não deve ser capaz de dizer se ele está sendo chamado por uma série de testes ou se for cliente execução ao vivo. A combinação de testes e URLs Mock permite que você use ágil e test-drive de técnicas para criar os contratos que o cliente eo servidor precisa implementar. Se você acha que a criação de uma camada completa simulação de trabalho é muito, então você poderia criar uma aplicação que conserva os valores devolvidos. Tendo definido o contrato, as implementações do cliente e servidor saber o que eles precisam fazer. Para que você deverá utilizar as técnicas ágeis para implementar o cliente e servidor, os testes têm que ser uma granularidade mais fina do que nos contratos. Os testes de implementação precisa ser ampla e vai além do contrato e pode incluir outros aspectos, tais como dados de inicialização e apresentação. Por exemplo, as camadas de ensaio 1 e 3, não estão directamente relacionadas com os contratos e são usados para testar o cliente e implementações do lado do servidor. Começando com a camada 3, é utilizar os testes para testar a funcionalidade da lógica serverside implementadas. De uma perspectiva programática, isto significa que existe uma separação clara entre a lógica aplicada e da tecnologia utilizada para apresentar essa lógica usando o protocolo HTTP. A camada 3 de teste não depende ou assistência sobre como a lógica está exposta ao protocolo HTTP . Os testes na camada 3 concentrar em garantir que a lógica do lado do servidor é executado corretamente. Os contratos de verificar que os testes não estão expostos externamente, eo cliente não se importa com o que os testes são. Como os testes são privadas, o desenvolvedor do servidor pode definir sua estrutura de classe, usando qualquer tecnologia desejada sem afetar o cliente. Testando o servidor exige a utilização do quadro de teste correto; algumas destas estruturas são descritas como segue: • JUnit (http://www.junit.org): teste de Java-driven framework de desenvolvimento. JUnit é a unidade original ferramenta de teste. • NUnit (http://www.nunit.org):. unidade NET-estrutura de teste que usa. NET. • PyUnit (http://pyunit.sourceforge.net/): Python unidade-estrutura de testes. • PHPUnit (http://www.phpunit.de/wiki/Main_Page): PHP-estrutura de testes unitários. • Test:: Unit (incluído com a distribuição Ruby): Ruby unidade-estrutura de testes. Se a sua linguagem de programação não é mencionado, fazer uma pesquisa para o termo "[Insira o seu idioma] teste de unidade". Independentemente da linguagem de programação, a unidade de teste de enquadramento e abordagem são os mesmos. Você usa ágil e test-drive de técnicas para implementar lógica de servidor. Na arquitetura de testar a lógica do cliente, a maioria se não todo o que é testado é a correcção do código JavaScript. Repare na arquitetura como a camada de teste 1 testes dos scripts e não a interface do usuário DHTML. Esta é a finalidade e se relaciona com a complexidade dos testes de interfaces de usuário DHTML. Quando o JavaScript e DHTML são combinados, você tem uma interface de usuário maioritariamente previsível. Contraste que, para uma interface de usuário tradicionais, onde os elementos são projetados para ocupar áreas fixas. Sabendo que uma interface com o usuário tem que olhar um certo modo, torna possível a utilização de ferramentas de teste de GUI que tirar fotos da imagem e compará-las umas às outras. Embora seja possível controlar a aparência exata de uma interface de usuário DHTML, não é recomendável porque contradiz o propósito de DHTML. Lembre-se que contenha a palavra DHTML dinâmica, Que indica a capacidade de determinar o layout de uma interface de usuário em tempo de execução. Portanto, você não pode usar o usuário clássica, técnicas de teste de interface. Em vez disso, você precisará empregar um teste camada fina approach.11 Utilizando um utilitário como JsUnit, 12 você poderia escrever uma série de scripts para o servidor e para executar a lógica de interface do usuário. Os scripts de teste exerceria a lógica do cliente e garantir que o aplicativo funciona corretamente. No entanto, esta solução não é ideal, porque toda a lógica que está incorporado na DHTML não é testado, por isso poderia ocorrer erros. Quando descobrir como implementar test-drive de técnicas de desenvolvimento, lembre-se os seguintes pontos: • Uma aplicação Ajax teste contém quatro camadas principais: do lado do cliente, do lado do servidor, contrato e Mock URL. • O contrato e testes Mock URL são desenvolvidas simultaneamente, utilizando técnicas de desenvolvimento ágil, e implementar casos de uso do aplicativo. • Você pode utilizar o contrato e testes Mock URL para REST, SOAP, e outros protocolos. • O cliente e os ensaios do lado do servidor são específicos para o cliente ou servidor e são usadas para implementar Test-Driven Development. • O cliente não deve ser dependente dos detalhes da implementação do servidor, eo servidor não deve ser dependente dos detalhes da implementação do cliente. um artigo submetido por Sonja Lande Isenção de responsabilidade:O nosso site não se responsabiliza pelo conteúdo deste artigo. Webarticles é uma fonte de informação livre. Importante: Este artigo "A maneira mais fácil para começar com o Ajax e descanso" foi traduzida por um software automático. Nós sentimos muito por quaisquer erros de ortografia que pode ter ocorrido. Obrigado pela sua compreensão.
|
|||||
| Online: 530 users browsing the articles directory |
|
|