Browse Source

removed the sub views in the rest presentation, they are confusing as heck

master
Julio Biason 11 years ago
parent
commit
c018748efe
  1. 61
      rest.html

61
rest.html

@ -67,26 +67,19 @@ img {
</ul>
</section>
<section> <!-- data-background="_images/l-What-is-this-sorcery.jpg"> -->
<section>
<h2>O que é ReST?</h2>
<img src='_images/l-What-is-this-sorcery.jpg'></img>
</section>
<section>
<p>
É uma "arquitetura" de transmissão de dados sobre HTTP.
</p>
<p>É uma "arquitetura" de transmissão de dados sobre HTTP.</p>
<p>
("Conjunto de idéias para utilizar HTTP para geração de APIs.")
</p>
<p>("Conjunto de idéias para utilizar HTTP para geração de APIs.")</p>
</section>
<section>
<p>
Linguagem? Qualquer!
</p>
<p>Linguagem? Qualquer!</p>
<ul>
<li>Python: Flask, Django, Flask-Restless, Django Rest Framework</li>
@ -97,9 +90,7 @@ img {
<li>Rust: Rustful</li>
</dl>
</section>
</section>
<section>
<section>
<h2>ReST e HTTP</h2>
<img src='_images/20090504102402_dsc_2864 (1).jpg'></img>
@ -108,10 +99,10 @@ img {
<section>
<ul>
<li>Métodos HTTP = operação de banco de dados (CRUD).</li>
<li>Status das operações são status HTTP.</li>
<li>Resultado das operações são indicados por status HTTP.</li>
<li>Meta-informações podem ser enviadas nos headers.
<ul>
<li>Atenticação é feita por HTTP auth.</li>
<li>Por exemplo, atenticação é feita por HTTP auth.</li>
</ul>
</li>
<li>Sem transações/sessões -- todas as operações são atômicas.</li>
@ -119,7 +110,7 @@ img {
</section>
<section>
Em HTTP, usam-se métodos para descrever o que quer ser feito:
<p>Em HTTP, usam-se métodos para descrever o que quer ser feito:</p>
<ul>
<li><code>POST</code> requisita informações, com conteúdo.</li>
@ -130,9 +121,7 @@ img {
</section>
<section>
<p>
Em ReST, métodos HTTP viram CRUD:
</p>
<p>Em ReST, métodos HTTP viram CRUD:</p>
<ul>
<li>Create &#8658; POST</li>
@ -142,9 +131,7 @@ img {
<li class='fragment'>Update &#8658; PATCH</li>
</ul>
</section>
</section>
<section>
<section>
<h2>Recursos</h2>
<img src='_images/jellybeans.jpg'></img>
@ -201,19 +188,19 @@ img {
<section>
<h3>Requisições sem recursos</h3>
Requisições sem um recurso definido utilizam um verbo e GET:
<p>Requisições sem um recurso definido utilizam um verbo e GET:</p>
<code>GET /covert/?source=BRL&amp;value=10&amp;target=AUD</code>
</section>
<p><code>GET /covert/?source=BRL&amp;value=10&amp;target=AUD</code></p>
</section>
<section>
<section>
<h2>Conteúdo</h2>
<img src='_images/content-strategy.jpg'></img>
</section>
<section>
<h3>Formato das respostas/requisições</h3>
<p>Qualquer formato, ReST não define um específico.</p>
<ul>
@ -225,11 +212,9 @@ img {
<p>Fica a cargo da equipe decidir o melhor formato para a aplicação.</p>
</section>
</section>
<section>
<section>
<h2>Status</h2>
<h2>Resultado das operações</h2>
<img src='_images/RightWrongBlackboard.jpg'></img>
</section>
@ -246,16 +231,18 @@ img {
</ul>
<p>E assim por diante...</p>
<p class='fragment'>Entretanto...</p>
</section>
<section>
<p>Problema:</p>
<h3>Problema</h3>
<p>ReST não define o que fazer em caso de conflito dos erros.</p>
</section>
<section>
<p>Exemplo:</p>
<h3>Exemplo</h3>
<p>Operação para adicionar um usuário à um grupo:</p>
@ -264,11 +251,10 @@ img {
<li>Qual status a ser retornado quando o usuário não existe, neste caso?</li>
</ul>
<p>Normalmente é enviado um corpo junto com o erro.</p>
</section>
<p>Normalmente é enviado um corpo indicando o erro de forma mais completa,
ainda com status HTTP.</p>
</section>
<section>
<section>
<h2>Por que usar ReST?</h2>
<img src='_images/house-do-want_cut455_22k.jpg'></img>
@ -283,13 +269,11 @@ img {
implementação na hora.)
</ul>
</li>
<li>Dificilmente portas HTTP (80 e 443) são bloequeadas em proxies.</li>
<li>Dificilmente portas HTTP (80 e 443) são bloqueadas em proxies.</li>
<li>"Sintaxe" simples.</li>
</ul>
</section>
</section>
<section>
<section>
<h2>Por que não usar ReST?</h2>
<img src='_images/Luke-Derp.jpg'></img>
@ -314,15 +298,14 @@ img {
</section>
<section></section>
</section>
<section data-background='_images/thats-all-folks.jpg'>
<section></section>
<p></p>
</section>
<section class='semi-opaque'>
<section class='semi-opaque' data-background='_images/thats-all-folks.jpg'>
<p><small>Perguntas?</small></p>
</section>
</section>
</div>
</div>

Loading…
Cancel
Save