Capa do Ebook gratuito Como criar aplicativos do zero ao avançado, utilizando Flutter e Dart curso completo

Como criar aplicativos do zero ao avançado, utilizando Flutter e Dart curso completo

3.75

(4)

267 páginas

Introdução à programação orientada a objetos em Dart: Encapsulamento

Capítulo 60

Tempo estimado de leitura: 3 minutos

Audio Icon

Ouça em áudio

0:00 / 0:00

Antes de mergulharmos profundamente no conceito de encapsulamento em Dart, é fundamental entendermos a programação orientada a objetos (POO). A POO é um paradigma de programação baseado no conceito de "objetos", que podem conter dados e código: dados na forma de campos (frequentemente conhecidos como atributos ou propriedades) e código, na forma de procedimentos (frequentemente conhecidos como métodos).

Um dos principais princípios da Programação Orientada a Objetos é o Encapsulamento. O Encapsulamento é um mecanismo de ocultação de detalhes de implementação de um objeto. Em outras palavras, ele protege o código interno e os dados internos do objeto de serem acessados diretamente de fora do objeto.

Em Dart, o encapsulamento é implementado usando modificadores de acesso. Existem dois tipos de modificadores de acesso em Dart - 'public' e 'private'. Por padrão, todas as classes, variáveis, métodos, etc., são publicamente acessíveis, a menos que sejam explicitamente declarados como privados. Para tornar uma variável ou método privado em Dart, prefixamos seu nome com um sublinhado '_'.

Por que o Encapsulamento é importante?

O encapsulamento é um dos quatro pilares fundamentais da programação orientada a objetos (POO), e é fundamental para a manutenção do código e para a prevenção de erros. Ele ajuda a controlar a maneira como os dados são acessados ou modificados. Além disso, um objeto bem encapsulado é aquele que esconde todos os seus dados internos e impede que sejam acessados diretamente, forçando o acesso através de métodos. Isso é conhecido como 'ocultação de dados'.

Exemplo de Encapsulamento em Dart

Para ilustrar o conceito de encapsulamento, considere o exemplo de uma classe 'BankAccount'. Esta classe tem duas propriedades - 'accountNumber' e '_balance'. Aqui, '_balance' é uma variável privada, o que significa que ela não pode ser acessada ou modificada diretamente de fora da classe.

Continue em nosso aplicativo

Você poderá ouvir o audiobook com a tela desligada, ganhar gratuitamente o certificado deste curso e ainda ter acesso a outros 5.000 cursos online gratuitos.

ou continue lendo abaixo...
Download App

Baixar o aplicativo

class BankAccount {
  int accountNumber;
  double _balance;

  BankAccount(this.accountNumber, this._balance);

  double get balance => _balance;

  set balance(double newBalance) {
    if (newBalance >= 0) {
      _balance = newBalance;
    } else {
      print('Invalid balance');
    }
  }
}

Neste exemplo, a única maneira de acessar ou modificar o saldo é através dos métodos 'get' e 'set'. Isso garante que o saldo não possa ser definido para um valor negativo, porque o método 'set' verifica se o novo saldo é maior ou igual a zero antes de modificar a variável '_balance'.

Conclusão

Em resumo, o encapsulamento é um princípio crucial da programação orientada a objetos em Dart. Ele permite que ocultemos os detalhes de implementação de um objeto e controlemos o acesso aos seus dados. Isso torna o código mais seguro e mais fácil de manter, pois evita que os dados sejam modificados de maneira inadequada. Ao criar aplicativos com Flutter e Dart, compreender e aplicar corretamente o encapsulamento pode melhorar a qualidade do seu código e a robustez do seu aplicativo.

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

O que é encapsulamento na programação orientada a objetos em Dart e por que é importante?

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

Você errou! Tente novamente.

Próximo capitúlo

Introdução à programação orientada a objetos em Dart: Herança

Arrow Right Icon
Baixe o app para ganhar Certificação grátis e ouvir os cursos em background, mesmo com a tela desligada.