6.4. Programação orientada a objetos em Python: Encapsulamento em Python

Página 23

A programação orientada a objetos (POO) é um paradigma de programação que oferece meios de estruturar um programa de software em torno de objetos e dados, em vez de funções e lógica. Um objeto é uma coisa ou conceito que pode ser claramente definido. Na POO, cada objeto é uma instância de uma classe. Python é uma linguagem de programação que suporta a programação orientada a objetos e uma das principais características da POO é o encapsulamento.

6.4. Programação orientada a objetos em Python: Encapsulamento em Python

O encapsulamento é uma das principais características da programação orientada a objetos. Ele se refere à prática de esconder os detalhes internos de como um objeto funciona e expondo apenas as interfaces através das quais esse objeto pode ser usado. Em outras palavras, o encapsulamento é uma forma de esconder os detalhes de implementação de um objeto e expondo apenas os métodos e propriedades necessários para interagir com esse objeto.

Em Python, o encapsulamento é realizado usando métodos e variáveis privados e protegidos. Uma variável privada é uma variável que não pode ser acessada ou modificada diretamente fora da classe onde foi definida. Uma variável protegida é semelhante a uma variável privada, mas pode ser acessada e modificada em subclasses.

Para declarar uma variável como privada em Python, prefixamos o nome da variável com dois sublinhados (__). Por exemplo, __nome_variavel. Para declarar uma variável como protegida, prefixamos o nome da variável com um sublinhado (_). Por exemplo, _nome_variavel.

O encapsulamento em Python não é tão estrito como em outras linguagens de programação orientadas a objetos, como Java ou C++. Em Python, é mais uma convenção do que uma regra rígida. No entanto, é uma boa prática seguir essa convenção para tornar o código mais fácil de entender e manter.

Vamos considerar o seguinte exemplo de encapsulamento em Python:

class ExemploEncapsulamento:
    def __init__(self):
        self.__variavel_privada = "Eu sou uma variável privada"
        self._variavel_protegida = "Eu sou uma variável protegida"

    def get_variavel_privada(self):
        return self.__variavel_privada

    def get_variavel_protegida(self):
        return self._variavel_protegida

Neste exemplo, criamos uma classe chamada ExemploEncapsulamento. Dentro desta classe, definimos duas variáveis: uma variável privada (__variavel_privada) e uma variável protegida (_variavel_protegida). Também definimos dois métodos para obter os valores dessas variáveis.

Se tentarmos acessar a variável privada diretamente fora da classe, obteremos um erro. No entanto, podemos acessar o valor da variável privada usando o método get_variavel_privada(). Da mesma forma, embora possamos acessar a variável protegida diretamente fora da classe, é uma boa prática acessá-la usando o método get_variavel_protegida().

O encapsulamento em Python nos ajuda a tornar nosso código mais seguro e mais fácil de manter. Ele nos permite esconder os detalhes de implementação de um objeto e expor apenas as interfaces necessárias para interagir com esse objeto. Isso torna o código mais fácil de entender e menos propenso a erros.

Now answer the exercise about the content:

O que é encapsulamento na programação orientada a objetos e como ele é implementado em Python?

You are right! Congratulations, now go to the next page

You missed! Try again.

Next page of the Free Ebook:

246.5. Programação orientada a objetos em Python: Métodos especiais em Python

Earn your Certificate for this Course for Free! by downloading the Cursa app and reading the ebook there. Available on Google Play or App Store!

Get it on Google Play Get it on App Store

+ 6.5 million
students

Free and Valid
Certificate with QR Code

48 thousand free
exercises

4.8/5 rating in
app stores

Free courses in
video, audio and text