A linguagem de programação C é orientada a objetos

A linguagem de programação C é orientada a objetos
A linguagem de programação C existe há mais de quatro décadas e é amplamente utilizada em muitas aplicações que variam de sistemas incorporados a desenvolvimento de software em larga escala. O debate sobre se a linguagem de programação C é Orientado a Objeto está em andamento desde o surgimento de Programação orientada a objetos (OOP) na década de 1980. Enquanto alguns argumentam que C não é Orientado a Objeto, Outros insistem que pode ser usado para escrever código orientado a objetos. Este ensaio examinará os dois argumentos e fornecerá uma conclusão.

O que é programação orientada a objetos?

Para começar, vamos primeiro definir Programação orientada a objetos. O conceito de programação conhecido como OOP Divide dados e lógica em unidades modulares reutilizáveis ​​conhecidas como objetos. Esses objetos contêm dados (chamados propriedades ou atributos) e funções (chamadas métodos) que podem manipular e interagir com os dados. Em OOP, A ênfase está na criação de objetos bem definidos e encapsulados que podem se comunicar para realizar uma tarefa.

A linguagem de programação C é orientada a objetos?

Infelizmente, a linguagem de programação C atua como uma linguagem processual, e não como orientada a objeto. Considerando isso, agora podemos avaliar as causas.

1: Aulas

A ideia de Aulas é um dos principais conceitos de OOP. A aula descreve os atributos e métodos que pertencem ao objeto e serve como um plano para a construção de objetos. Infelizmente, C não possui um método embutido para aula definição. No entanto, ainda é possível criar uma estrutura semelhante a uma classe usando estruturas e funções de dados C. Essas estruturas podem conter dados e as funções podem executar operações nesses dados, como uma classe.

2: encapsulamento

Outro aspecto significativo de OOP são dados encapsulamento. Encapsulamento refere -se à idéia de ocultar dados e restringir o acesso a eles para garantir que ele seja modificado apenas de maneira controlada. C tem não mecanismos internos para encapsulamento, Mas pode ser implementado manualmente usando técnicas como estrutura e ponteiros.

3: herança

A capacidade de uma classe de herdar Atributos e funções de outra classe é outro aspecto crucial do OOP. Embora C não tenha suporte de compilador para mecanismos de herança, herança pode ser feito com ponteiros e estruturas, colocando o herdado Estrutura de atributo de classe como o primeiro membro da estrutura de atributo de classe derivada.

4: Polimorfismo

C também falta um recurso interno para polimorfismo, que permite que objetos assumam várias formas e tipos. No entanto, C pode alcançar alguma forma de polimorfismo Ao declarar ponteiros que apontam para funções depois de usar estruturas.

Conclusão

Enquanto C faz não ter construídas em suporte para Orientado a Objeto Recursos de programação, como Aulas, encapsulamento, herança, e polimorfismo, ainda é possível escrever Orientado a Objeto Código usando estruturas e funções de dados C. Como resultado, é preciso argumentar que C é uma linguagem de programação que suporta programação orientada a objetos, mas não é exclusivamente um. No entanto, vale a pena notar que o uso de C para OOP requer uma abordagem mais manual em comparação aos idiomas projetados especificamente para OOP, como java ou python.