"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Compreendendo o código limpo: objetos e estruturas de dados⚡

Compreendendo o código limpo: objetos e estruturas de dados⚡

Publicado em 2024-08-24
Navegar:476

Understanding Clean Code: Objects and Data Structures⚡

Compreender a distinção entre objetos e estruturas de dados é crucial ao escrever código limpo.

Ambos têm seu lugar no design de software, mas servem a propósitos diferentes e são mais adequados para vários cenários.

Neste artigo, vamos nos aprofundar nas diferenças entre objetos e estruturas de dados e explorar quando usar cada um, usando exemplos de JavaScript para ilustrar os conceitos.


? O que são objetos?

Os objetos são a base da programação orientada a objetos (OOP).

Eles encapsulam dados e comportamento, o que significa que não apenas retêm informações, mas também fornecem métodos para interagir com essas informações.

A ideia central por trás dos objetos é agrupar dados com as funções que operam nesses dados, garantindo que o estado interno de um objeto seja manipulado apenas por meio de seus métodos.

Exemplo de objeto:

class Rectangle {
  constructor(width, height) {
    this.width = width;
    this.height = height;
  }

  getArea() {
    return this.width * this.height;
  }

  getPerimeter() {
    return 2 * (this.width   this.height);
  }
}

const myRectangle = new Rectangle(5, 10);
console.log(myRectangle.getArea());       // Output: 50
console.log(myRectangle.getPerimeter());  // Output: 30

Neste exemplo, a classe Rectangle é um objeto que encapsula os dados de largura e altura, junto com os métodos getArea() e getPerimeter().

Os dados internos (largura e altura) são protegidos e só podem ser acessados ​​ou modificados através destes métodos.


? O que são estruturas de dados?

As estruturas de dados, por outro lado, são coleções de dados sem qualquer comportamento associado.

Eles se concentram em expor os dados em vez de protegê-los, tornando-os acessíveis para manipulação por funções externas.

As estruturas de dados têm mais a ver com armazenar e organizar dados de uma forma que facilite sua recuperação e modificação.

Exemplo de estrutura de dados:

const rectangle = {
  width: 5,
  height: 10
};

function getArea(rectangle) {
  return rectangle.width * rectangle.height;
}

function getPerimeter(rectangle) {
  return 2 * (rectangle.width   rectangle.height);
}

console.log(getArea(rectangle));       // Output: 50
console.log(getPerimeter(rectangle));  // Output: 30

Aqui, retângulo é uma estrutura de dados. Ele expõe seus dados diretamente e as funções getArea() e getPerimeter() operam nesses dados expostos.

Ao contrário dos objetos, não há encapsulamento e os dados podem ser acessados ​​e modificados livremente por qualquer função externa.


? Quando usar objetos

Os objetos são ideais quando você deseja encapsular o comportamento junto com os dados.

Esse encapsulamento permite controlar como os dados são acessados ​​e modificados, fornecendo uma camada de proteção.

Os objetos também são adequados para situações em que diferentes tipos de objetos precisam interagir entre si por meio de interfaces bem definidas.

⚡ Use objetos quando:

  • Você precisa proteger o estado interno e garantir que ele só possa ser alterado por meio de métodos específicos.
  • Você deseja definir um comportamento que esteja intimamente relacionado aos dados.
  • Você está trabalhando com um sistema complexo onde o encapsulamento e a abstração são importantes.

? Quando usar estruturas de dados

As estruturas de dados são úteis quando você precisa simplesmente armazenar e organizar dados sem anexar comportamento.

Eles permitem acesso fácil e direto aos dados, o que pode ser benéfico em cenários onde o desempenho e a simplicidade são fundamentais.

⚡ Use estruturas de dados quando:

  • Você precisa expor os dados diretamente para que funções externas possam operar.
  • Você deseja manter o design simples e direto.
  • O comportamento é separado dos dados e pode ser implementado em funções externas.

Principais conclusões?

  • Os objetos encapsulam dados e comportamento, protegendo o estado interno e fornecendo acesso controlado por meio de métodos.
  • As estruturas de dados expõem os dados diretamente, permitindo que funções externas operem neles sem qualquer encapsulamento.
  • Use objetos quando precisar de encapsulamento e quiser agrupar comportamento com dados.
  • Use estruturas de dados quando precisar armazenar dados sem anexar comportamento e quando a simplicidade e o acesso direto forem prioridades.

Compreender a distinção entre objetos e estruturas de dados é essencial para escrever código limpo e de fácil manutenção.

Ao escolher a abordagem certa com base nas necessidades da sua aplicação, você pode criar sistemas que sejam eficientes e fáceis de entender.

Boa codificação!

Declaração de lançamento Este artigo foi reproduzido em: https://dev.to/alisamir/understanding-clean-code-objects-and-data-structures-j4f?1 Se houver alguma violação, entre em contato com [email protected] para excluí-la
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3