Article image
Izairton Vasconcelos
Izairton Vasconcelos30/07/2024 19:51
Compartilhe

Descobrindo o Mundo dos Objetos na Programação

    Entre a lógica dos códigos e a arte da madeira

    Além da minha paixão pela programação, cultivo um hobby que me proporciona uma conexão tangível com o mundo físico: a marcenaria, em especial à do artesanato.

    Essa segunda alegria pelas madeiras e ferramentas não só me proporciona um descanso criativo do mundo digital, mas também oferece uma rica fonte de metáforas para explicar conceitos de programação.

    Um exemplo disso é a construção de casinhas para pássaros, uma atividade que faço e que exige tanto planejamento quanto execução cuidadosa. Ao criar essas casinhas, vejo paralelos claros com o conceito de objetos na programação, onde a ideia é projetar e construir estruturas que sejam úteis, eficientes e esteticamente agradáveis.

    Assim como na marcenaria, onde cada peça tem uma função específica e se integra a um todo maior, na programação, objetos são as peças fundamentais que compõem sistemas complexos, cada um com suas propriedades e métodos, colaborando para o funcionamento do software como um todo.

    Vamos imaginar um marceneiro artesão que adora fazer casinhas para pássaros. Ele usa pedaços de madeira que sobraram em sua oficina para criar essas casinhas, e cada uma tem suas próprias características e funcionalidades. Agora, vamos ver como isso se relaciona com o conceito de "objetos" na programação.

    O que é um Objeto?

    Um objeto na programação é como uma dessas casinhas de pássaros. Cada casinha é única, tem suas próprias características (como tamanho, cor, tipo de telhado) e pode realizar algumas ações (como abrigar pássaros).

    Entendendo com um Exemplo

    Imaginemos o marceneiro fazendo suas casinhas de pássaros e transportemos a idealização para a programação.

    Cada casinha tem:

    - Propriedades (ou atributos): São as características da casinha. Por exemplo:

     - Cor: Azul

     - Tamanho: Pequena

     - Tipo de telhado: Inclinado

    - Métodos (ou funções): São as ações que a casinha pode realizar. Por exemplo:

     - Abrigar pássaros

     - Proteger contra chuva

    Criando um Objeto

    Para criar um objeto em programação, precisamos de uma planta ou modelo, que chamamos de "classe". A classe é como o projeto que o marceneiro usa para construir suas casinhas.

    Vamos criar uma classe chamada "CasinhasDePassaros".

    class CasinhasDePassaros:
     def __init__(self, cor, tamanho, tipo_telhad):
         self.cor = cor
         self.tamanho = tamanho
         self.tipo_telhad = tipo_telhad
     def abrigar_passaros(self):
         print("A casinha está abrigando pássaros")
     def proteger_contra_chuva(self):
         print("A casinha está protegendo os pássaros contra a chuva")
    

    Aqui, `CasinhasDePassaros` é a nossa classe. Ela tem um método especial chamado `__init__`, que é usado para criar novas casinhas com uma cor, tamanho e tipo de telhado específicos.

    Também temos dois métodos:

    `abrigar_passaros` e `proteger_contra_chuva`.

    Agora, vamos criar uma casinha usando essa classe:

    minha_casinha = CasinhasDePassaros("Azul", "Pequena", "Inclinado")
    

    Com essa linha de código, criamos uma nova casinha azul, pequena e com telhado inclinado. Podemos fazer a casinha realizar algumas ações:

    minha_casinha.abrigar_passaros() # A casinha está abrigando pássaros
     minha_casinha.proteger_contra_chuva() # A casinha está protegendo os pássaros contra a chuva
    

    Conclusão

    Pensar em objetos na programação é como pensar nas casinhas de pássaros que o marceneiro faz. Cada objeto é um conjunto de pequenas partes (propriedades e métodos) que juntas formam algo maior e útil. Ao criar e usar objetos, podemos construir programas incríveis, assim como o marceneiro constrói lindas casinhas para pássaros.

    Então, da próxima vez que você ouvir falar de "objetos" na programação, lembre-se das casinhas de pássaros feitas pelo marceneiro. E divirta-se construindo seus próprios objetos e programas!

    https://www.linkedin.com/in/izairton-oliveira-de-vasconcelos-a1916351

    Compartilhe
    Comentários (1)
    Sérgio Ribeiro
    Sérgio Ribeiro - 08/08/2024 18:05

    Adorei a analogia! Muito bom artigo!