Blog SW9

Desenvolvimento Web e Híbrido na prática.
Tome um café, concentre-se, codifique. (งツ)ว

Client Side Storage | Aula 9 – Utilizando IndexedDB Com Promise | Série HTML5 | SW9

Client Side Storage | Aula 9 – Utilizando IndexedDB Com Promise | Série HTML5 | SW9

Olá a todos. Sejam bem-vindos ao Canal e Blog SW9 (http://blog.sw9.com.br)

Dando continuidade a MEGA Série sobre HTML5.  O Objetivo é apresentar os recursos e as possibilidades que surgiram com o advento do HTML5.

Neste novo conjunto de Aulas venho abordando tudo o que você precisa saber sobre armazenamento de dados do lado cliente (Client Side Storage). E o melhor: veremos tudo isso na prática.

O que vimos na aula passada?

Na aula passada, evoluimos na utilização da API IndexedDB e completamos a implementação das operações de nossa página de contatos usando esta API.

Você perdeu esta AULA? Não se preocupe, segue então o link para acessá-la [http://blog.sw9.com.br/2018/10/25/client-side-storage-aula-8-evoluindo-com-api-indexeddb-serie-html5-sw9/].

O que veremos nesta aula?

Eu não sei se vocês perceberam, mas depois da apresentação da API IndexedDb, existe um forte indício dela ser a melhor opção quando falamos de armazenamento de dados do lado do cliente. Comparando as opções apresentadas até agora, esta API é a que reúne o maior número de pontos positivos.

Vamos então aproveitar o embalo e explicar como usar a API IndexedDB em conjunto com Promises. Mas porque usar promise? A API IndexedDB já não é assíncrona?

Você está correto, a API IndexedDB é assíncrona, no entanto ela utiliza um objeto chamado IDBRequest para controlar as requisições em modo assíncrono. Este objeto IDBRequest propõe um modelo mais antigo para manipulação e controle de chamadas assíncronas, e que por diversas vezes se mostrou instável.

É nesse cenário que eu me proponho a explicar passo a passo como podemos evoluir combinando a implementação do IndexedDb com promises.

O uso de promises é algo mais moderno e vai nos permitir controlar melhor as chamadas assíncronas.

Mas antes de seguirmos, é importante lembrar que infelizmente existem navegadores que não são compatíveis com o uso de promises (O Internet Explorer é um deles rsrs).  Logo abaixo segue a tabela de compatibilidade extraída do site Can I Use:

Can I Use - Tabela de Compatibilidade Promise

Se preferir, você pode clicar no link a seguir para ver em tempo real a tabela de compatibilidade: https://caniuse.com/#search=promise

Agora vem a boa notícia: para contornar este problema de compatibilidade, nós podemos desenvolver usando promises e depois usar um transpilador, como por exemplo o Babel, que vai se encarregar de gerar um código javascript compatível.

Se você está gostando da AULA de hoje, não deixe de compartilhar com seus amigos usando as redes sociais de sua preferência.

Para que seja possível combinarmos a API IndexedDB com promises, usaremos durante a nossa implementação uma pequena biblioteca chamada idb.

Usando a biblioteca IDB

A biblioteca idb foi criada por  como uma forma de viabilizar a implementação da API IndexedDB com promises.

Ela é uma biblioteca que espelha a API IndexedDB, substituindo o uso do objeto IDBRequest pelo uso de promises. Além disso, a biblioteca idb acrescenta pequenas melhorias que vocês vão ver durante o vídeo de hoje.

Agora chegou o momento de assistirmos a AULA em vídeo, onde vamos implementar todas as operações relacionadas a nossa página de contatos usando a biblioteca idb. Se eu fosse você não perderia a parte prática por nada :-)

Mas antes dêem uma olhada em [Conclusão] e [Links].

Aprenda HTML 5 e CSS 3

Comece a criar Sites Com o Melhor do HTML 5 e CSS 3
Curso Relacionado

[Conclusão]

Na aula de hoje [Client Side Storage | Aula 9 – Utilizando IndexedDB Com Promise | Série HTML5 | SW9], demos sequência na Mega série sobre HTML 5.

Implementamos as operações relacionadas a nossa página de contatos utilizando uma pequena biblioteca chamada idb. Com esta biblioteca foi possível utilizar a API IndexedDB Com Promises, em substituição ao objeto nativo IDBRequest.

Está disponível na minha área de downloads o projeto parcial. Para acessá-lo basta clicar no link a seguir http://blog.sw9.com.br/acesso-area-de-downloads/, informar um e-mail válido e automaticamente receberá as instruções para acesso.

Dentro da minha área de Downloads, procure pela pasta HTML5/STORAGE.  O resto é com vocês :-)

Bom, por hoje é só. Aproveitem o vídeo e bons estudos. Fiquem antenados, que em breve teremos mais novidades.

Espero que gostem deste vídeo. Aproveito para pedir a participação de vocês no canal e blog, curtindo, compartilhando, dando sua opinião e se inscrevendo no canal e blog para receber as novidades em primeira mão.

Fiquem com Deus e até o próximo vídeo.

[Links úteis]

Curso Relacionado: [Aprenda HTML 5 e CSS 3 e Comece a Criar Seus Próprios Sites] – https://goo.gl/QsLPph

PlayList Cloud 9: https://goo.gl/7aQbD6

PlayList Mega Série HTML5: https://www.youtube.com/watch?v=D-XN-miEwP0&list=PLtluGZbI5ESj8XWTJcJmrVW6Q_tCi7uR8

Área de Downloads: http://blog.sw9.com.br/acesso-area-de-downloads/

Meu Blog: http://blog.sw9.com.br

Meu GitHub: https://sw9brl.github.io/MyGitHubPage

Canal youtube: https://youtube.com/+sw9brl

Link do vídeo: https://youtu.be/EY4wAWUgT90

Parceria: https://www.tubebuddy.com/pricing?a=sw9brl

✔ Clique em gostei ✔ Compartilhe ✔ Inscreva-se

Tópicos Relacionados

Deixe um comentário

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Paulo Eduardo
Geek desde criança, sempre me interessei por games, filmes e tecnologia. Sou graduado em engenharia da computação pela PUC Campinas. Possuo mais de 15 anos de experiência em desenvolvimento, com foco maior em desenvolvimento web, gestão de times e mais recentemente desenvolvimento mobile utilizando HTML e Javascript.

Termos como #backend, #frontend e #fullstack fazem parte do meu dia a dia.

Não deixe de acompanhar meu blog, canal youtube e meus produtos digitais.

Divirta-se e bons estudos. :-)
Paulo Eduardo on sabyoutubePaulo Eduardo on sabinstagramPaulo Eduardo on sabgithubPaulo Eduardo on sabfacebook
✌(◕‿-)✌ Tempo Limitado - Tenha acesso a nossa área de DownloadsClique Aqui - É Grátis
How to whitelist website on AdBlocker?