É um paradigma para o desenvolvimento de software que se baseia na utilização de componentes individuais que colaboram entre si para construir sistemas mais complexos em que a colaboração entre os objetos é feita através do envio de mensagens. Baseia-se em conceitos como objetos, abstração, entidades, classes, herança, polimorfismo, etc. A que paradigma de programação esse trecho se refere?
- A)Orientado a objetos.
Correta, porque a descrição traz objetos, classes, herança, polimorfismo e troca de mensagens, que são marcas do paradigma orientado a objetos.
- B)Estruturado.
Errada, pois o paradigma estruturado se apoia em fluxos de controle, procedimentos e modularização, não em objetos e mensagens.
- C)Orientado a eventos.
Errada, porque o orientado a eventos depende de eventos, gatilhos e respostas a ocorrências, e não da modelagem por classes e objetos.
- D)Matemático.
Errada, já que o paradigma matemático não é caracterizado por objetos, herança ou polimorfismo na forma descrita no enunciado.
- E)Orientado a aspectos.
Errada, porque o orientado a aspectos trata preocupações transversais, como logging e segurança, e não a organização do sistema em objetos.
Gabarito: A
O enunciado descreve o paradigma orientado a objetos, aquele em que o software é visto como um conjunto de objetos que trocam mensagens e trabalham em conjunto. Pense em cada objeto como uma pequena peça com responsabilidades próprias, em vez de um bloco gigante de código fazendo tudo ao mesmo tempo. Isso facilita organizar o sistema, reaproveitar código e deixar a manutenção menos dolorida no futuro. Nesse modelo, conceitos como classe, objeto, abstração, encapsulamento, herança e polimorfismo são a base da construção. A classe funciona como molde, e o objeto como a instância concreta desse molde. Em prova, quando aparecer a ideia de entidades que colaboram por mensagens e usam esses conceitos clássicos, a referência quase sempre é à orientação a objetos. O gabarito é a letra A porque o texto cita exatamente os elementos centrais desse paradigma: objetos, classes, herança e polimorfismo. Além disso, a frase sobre colaboração entre objetos por envio de mensagens é bem característica da abordagem orientada a objetos, e não de um modelo estruturado tradicional. Na doutrina de Engenharia de Software, essa é a descrição clássica desse paradigma. Já os outros paradigmas não batem com a descrição: o estruturado foca em sequência, seleção e repetição; o orientado a eventos reage a disparadores; o matemático é mais ligado a formalismos e lógica; e o orientado a aspectos trata preocupações transversais. Ou seja, aqui a banca praticamente entregou o nome do paradigma disfarçado de descrição.