Imagem do artigo Introdução à programação orientada a objetos em Dart: Programação assíncrona

5.14. Introdução à programação orientada a objetos em Dart: Programação assíncrona

Página 70 | Ouça em áudio

A programação orientada a objetos (POO) é um paradigma de programação que usa objetos e suas interações para projetar aplicativos e programas de computador. Dart, a linguagem de programação usada com Flutter, é uma linguagem orientada a objetos. Neste capítulo, vamos explorar a programação orientada a objetos em Dart e, mais especificamente, a programação assíncrona.

1. Conceitos básicos de Programação Orientada a Objetos (POO)

Antes de mergulharmos na programação assíncrona, é importante entender alguns conceitos básicos da POO em Dart. A POO em Dart é centrada em classes e objetos. Uma classe é como um plano para criar objetos. Ela define um conjunto de propriedades (chamadas variáveis de instância) e métodos (funções que pertencem a uma classe).

Um objeto é uma instância de uma classe. Ele tem um estado (definido por suas variáveis de instância) e comportamento (definido por seus métodos). Em Dart, você cria um objeto usando a palavra-chave 'new' seguida pelo nome da classe e parênteses.

2. Programação Assíncrona

Agora que temos uma compreensão básica da POO em Dart, vamos explorar a programação assíncrona. A programação assíncrona é um estilo de programação que é usado para melhorar o desempenho de um programa através do uso eficiente de seu tempo de execução e recursos do sistema.

Em um programa síncrono, as operações são executadas uma após a outra. Se uma operação demorar muito para ser concluída (por exemplo, uma solicitação de rede), todo o programa será bloqueado ou congelado até que a operação seja concluída. Isso pode resultar em uma experiência ruim para o usuário, especialmente em aplicativos de interface do usuário onde a responsividade é crucial.

A programação assíncrona resolve esse problema permitindo que o programa continue a executar outras operações enquanto espera que a operação demorada seja concluída. Em Dart, a programação assíncrona é facilitada pelo uso de 'Future', 'async' e 'await'.

2.1 Future

Um 'Future' em Dart representa uma potencial valor ou erro que estará disponível em algum momento no futuro. É como uma promessa de que eventualmente haverá um valor. Você pode pensar em 'Future' como o retorno de uma operação assíncrona.

Por exemplo, uma função que faz uma solicitação de rede pode retornar um 'Future'. O 'Future' será concluído quando a solicitação de rede for concluída. Se a solicitação for bem-sucedida, o 'Future' será concluído com o valor resultante. Se a solicitação falhar, o 'Future' será concluído com um erro.

2.2 async e await

'async' e 'await' são palavras-chave em Dart que são usadas para trabalhar com 'Futures'. A palavra-chave 'async' é usada para declarar uma função assíncrona. Uma função assíncrona é uma função que pode realizar operações assíncronas (ou seja, operações que retornam um 'Future').

A palavra-chave 'await' é usada dentro de uma função assíncrona para pausar a execução da função até que um 'Future' seja concluído. Quando o 'Future' é concluído, a execução da função continua. Se o 'Future' for concluído com um valor, 'await' retornará esse valor. Se o 'Future' for concluído com um erro, 'await' lançará esse erro.

Combinando 'async' e 'await', você pode escrever código assíncrono que parece e se comporta como código síncrono. Isso torna o código mais fácil de ler e entender.

Conclusão

A programação orientada a objetos e a programação assíncrona são conceitos fundamentais em Dart e Flutter. Compreender esses conceitos permitirá que você crie aplicativos mais eficientes e responsivos. Lembre-se de que a prática é a chave para se tornar proficiente nessas técnicas, então continue a explorar e experimentar.

Agora responda o exercício sobre o conteúdo:

O que é a Programação Orientada a Objetos (POO) em Dart?

Você acertou! Parabéns, agora siga para a próxima página

Você errou! Tente novamente.

Imagem do artigo Introdução à programação orientada a objetos em Dart: Testes unitários

Próxima página do Ebook Gratuito:

71Introdução à programação orientada a objetos em Dart: Testes unitários

3 minutos

Ganhe seu Certificado deste Curso Gratuitamente! ao baixar o aplicativo Cursa e ler o ebook por lá. Disponível na Google Play ou App Store!

Disponível no Google Play Disponível no App Store

+ de 6,5 milhões
de alunos

Certificado Gratuito e
Válido em todo o Brasil

48 mil exercícios
gratuitos

4,8/5 classificação
nas lojas de apps

Cursos gratuitos em
vídeo, áudio e texto