Skip to content

Commit

Permalink
GitBook: [master] 6 pages modified
Browse files Browse the repository at this point in the history
  • Loading branch information
Otávio Santana authored and gitbook-bot committed Jun 6, 2018
1 parent 76fb1b7 commit 2984d89
Show file tree
Hide file tree
Showing 4 changed files with 11 additions and 11 deletions.
4 changes: 2 additions & 2 deletions SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@
* [LANGS](langs/README.md)
* [about\_me](langs/about_me.md)
* [Eclipse JNoSQL one API to many NoSQL databases](pt-br/README.md)
* [A principal ideia atrás da AP](pt-br/part1.md)
* [Por que Diana?](pt-br/chapter1_1.md)
* [Bibliografia](pt-br/bibliography.md)
* [Credits](pt-br/credits.md)
* [Introdução ao Diana](pt-br/part2/README.md)
Expand Down Expand Up @@ -44,8 +46,6 @@
* [EventManager](pt-br/part5/chapter5_2.md)
* [Converter](pt-br/part5/chapter5_3.md)
* [As classes respositórios](pt-br/part5/chapter5_4.md)
* [README](pt-br/part1/README.md)
* [chapter1\_1](pt-br/part1/chapter1_1.md)
* [SUMMARY](pt-br/summary.md)
* [introduction](pt-br/introduction.md)
* [Eclipse JNoSQL one API to many NoSQL databases](en/README.md)
Expand Down
4 changes: 2 additions & 2 deletions pt-br/part1/chapter1_1.md → pt-br/chapter1_1.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# chapter1\_1
# Por que Diana?

![Diana mitologia](../../.gitbook/assets/12.jpg)
![Diana mitologia](../.gitbook/assets/12.jpg)

Diana, na mitologia romana, era a deusa da lua e da caça, muito poderosa e forte. Mais conhecida como deusa pura, filha de Júpiter e de Latona, e irmã gêmea de Febo. Era muito ciosa de sua virgindade. Na mais famosa de suas aventuras, transformou em um cervo o caçador Acteão, que a viu nua durante o banho.

Expand Down
10 changes: 5 additions & 5 deletions pt-br/part1/README.md → pt-br/part1.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# README
# A principal ideia atrás da AP

Uma vez discutido da importância da padronização das APIs dos bancos não relacionais, o próximo passo é discutir mais detalhes sobre elas. Porém, para facilitar a explicação da solução deste projeto, primeiro é importante entender que geralmente uma aplicação é divida em camadas para facilitar a sua organização, manutenção e divisão das responsabilidades da aplicação, é muito comum encontrar uma aplicação dividida em camadas quando ela é muito complexa.

Está nova API Java será responsável por realizar a comunicação entre a camada lógica e a de dados, para isso, ela será dividida em duas partes, uma para comunicação entre o banco e outra responsável pela alta abstração na aplicação.

![Camada Física](../../.gitbook/assets/01.png)
![Camada Física](../.gitbook/assets/01.png)

Acima podemos visualizar uma abstração da camada física de uma aplicação, é muito comum encontrar uma aplicação que possua multi-camadas físicas, geralmente dividida em três:

Expand Down Expand Up @@ -58,7 +58,7 @@ O JNoSQL é uma API Java flexível e extensiva cujo o objetivo é realizar comun

### Diana

![](../../.gitbook/assets/duke-diana-min.png)
![](../.gitbook/assets/duke-diana-min.png)

O projeto Diana tem como objetivo tratar apenas da camada de baixo nível, ou seja, a camada de comunicação com os bancos não relacionais. A ideia que esse projeto funcione como um driver para os bancos de dados não relacionais. De modo geral ela possuirá quatro APIs, uma para cada tipo de banco de dados, além do seu respectivo TCK. O Kit de teste de compatibilidade tem como objetivo afirmar que um determinado banco de dados implementa uma das APIs corretamente, por exemplo, caso o banco X implemente a API de chave valor e passar nos testes de compatibilidade quer dizer que ele está compatível. O motivo que o projeto abrangerá apenas a API de comunicação são:

Expand All @@ -68,7 +68,7 @@ O projeto Diana tem como objetivo tratar apenas da camada de baixo nível, ou se

### Artemis

![](../../.gitbook/assets/artemis-integration.png)
![](../.gitbook/assets/artemis-integration.png)

O Artemis é a camada de integração, ou seja, ele será responsável por se comunicar com a camada de comunicação, o diana, e realizar a integração com outras tecnologias, como Bean Validation, por exemplo. O seu coração é composto com CDI. Assim, sua fórmula é simples:

Expand All @@ -83,7 +83,7 @@ Assim como o Diana, ela também possui, de maneira geral, um pacote para cada ti

Um ponto importante sobre os eventos no CDI é a facilidade de adicionar novo recursos ou funcionalidades de maneira transparente ao código. Por exemplo, é possível injetar a validação das entidades, bean validation, sem ser necessário mudar nenhum fluxo do código atual. Por padrão, o fluxo de evento segue o seguinte fluxo:

![](../../.gitbook/assets/integration-artemis.png)
![](../.gitbook/assets/integration-artemis.png)

Cada tipo de banco de dados, possui os seus próprios interceptors e eventos, ou seja, é possível realizar a mudança apenas dos eventos do chave-valor sem modificar escutar os eventos do tipo grafo.

4 changes: 2 additions & 2 deletions pt-br/summary.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@

## Introdução ao JNOSQL

* [A principal ideia atrás da API](part1/)
* [Por que Diana?](part1/chapter1_1.md)
* [A principal ideia atrás da API](part1.md)
* [Por que Diana?](chapter1_1.md)

## Conhecendo a API de comunicação Diana

Expand Down

0 comments on commit 2984d89

Please sign in to comment.