Desmistificando classes e objetos
- #C#
- #.NET
- #POO
Olá comunidade 🫱🏼🫲🏼, esse é um artigo baseado em minhas anotações sobre o bootcamp .NET Developer, e aqui estou eu realizando minha primeira contribuição, espero que curtam.
Não passe pelo artigo sem deixar aquele up ⬆️
💡 Antes de entender o que é uma classe, precisamos entender o que é Abstração
Abstração é o ato de analisar ideias e conceitos do mundo real, identificar suas informações essenciais e aplica-los para um objetivo. No nosso caso, transformar conceitos do mundo real em software.
O conceito de abstração é muito utilizado na 🇺🇸 OOP (Object Oriented Programming) / 🇧🇷 POO (Programação Orientada a Objetos).
🤔 O que é uma classe?
Classe é um conceito do mundo real transformado em uma estrutura de especificação de características programáveis, com atributos (propriedades) e ações (métodos).
Serve como um molde, agrupando todas as características úteis de um determinado conceito do mundo real.
🤔 O que é um objeto?
Objeto é a materialização, concretização (instância) de determinada classe em um endereço de memória do computador, preenchido (populado) com suas informações (propriedades) e pronto para realizar as ações estipuladas (métodos).
💡 O que de fato preciso representar em uma classe?
O objetivo fim de um software é resolver problemas do mundo real, e para isso utilizamos a abstração. Durante a abstração precisamos identificar quais informações que desejamos representar são realmente relevantes para resolver o problema em questão.
Nesse sentido é importante buscar sempre o que é essencial, o que será utilizado e o que se justifica ser incluído no software.
Ter esse tipo de cuidado promove diversos benefícios em seu software, entre eles:
• atingir o objetivo definido de forma concisa
• um software que não contém informações desnecessárias
• um software que promove economia de custos de desenvolvimento e infraestrutura no processamento e armazenamento dessas informações