Você está na página 1de 11

Lógica Orientada a Objetos – Aula 1

Apresentação

Bem-vindo ao curso de Análise e Modelagem Orientada a Objeto. Este curso é uma


introdução aos conceitos de orientação a objeto e ensina a metodologia de análise e
modelagem orientada a objeto.

Introdução:

Análise e Modelagem Orientada a Objeto

Nesta aula, você irá estudar a definição de sistema orientado a objeto (OO) e porque
Análise Orientada a Objeto é a ferramenta ideal para projeto de sistemas atualizados.
Visualizará os conceitos principais da abordagem orientada a objetos.

Conteúdo:

• Funcionalidade
• Dados

Objetivos:

• Conhecer a definição de um sistema orientado a objeto e as características dos


sistemas atuais;

• Análise e Modelagem Orientada a Objeto como uma ferramenta de projeto de


sistemas atuais;

• Aprender as vantagens da utilização da Análise e Modelagem Orientada a


Objetos.

1/11
Lógica Orientada a Objetos – Aula 1

Definições

Um sistema composto por unidades que mantém dados e funcionalidade associados é


considerado orientado a objeto. Estas unidades trabalham em conjunto com ambos para
produzir o resultado desejado do sistema.

Agora, você estudará as características do sistema atualizado. Geralmente, sistemas


atualizados são detalhados e complexos. Usualmente, equipes precisam trabalhar em
conjunto para modelar o projeto do sistema.

Outra característica dos sistemas atualizados é que muitos códigos lidam com a
interface de usuário da aplicação.

Assim que as aplicações se tornam maiores e mais complexas, a depuração se torna


cansativa. Desta forma, mais esforço é gasto na manutenção do sistema e depuração do
que no projeto e implementação.

Os itens abaixo mostram com qual freqüência os vários componentes do sistema se


alteram. Enquanto dados são os componentes menos voláteis em qualquer sistema,
funções se alteram freqüentemente com o passar do tempo.

• Interface entre componentes do sistema: Altamente volátil


• Funções: Muito volátil
• Seqüência de funções: Muito volátil
• Dados mantidos por um período: Menos volátil

2/11
Lógica Orientada a Objetos – Aula 1

O primeiro requisito é que a metodologia possibilite o projeto de sistemas grandes e


complexos com o mínimo esforço. Isso significa que a metodologia deve ter a facilidade
de representar sistemas complexos como um modelo simples. Isto irá ajudar no
armazenamento e manipulação da complexidade inerente no sistema atualizado.

O segundo requisito é que a metodologia deve possuir a facilidade de re-utilização de


um código e/ou componente. Isto irá possibilitar aos analistas e desenvolvedores a
redução do tamanho da aplicação.

O terceiro requisito é que a metodologia resulte em uma abordagem de projeto modular.


Isto possibilitará que diferentes equipes trabalhem independente em partes diferentes de
um sistema sem problemas.

O último requisito é que a metodologia deve possibilitar o modelo de um sistema que


pode ser atualizado facilmente. Isto resultará em uma aplicação estável e uma redução
na manutenção necessária.

Quando precisamos modelar um sistema para solucionar um grande problema, este


problema deve ser dividido em partes menores. O modelo OO divide um problema em
partes menores na base de dados.

Dividir um sistema em partes menores na base de dados, ajuda modelar sistemas que
são flexíveis em mudanças porque os dados são a parte menos volátil de um sistema.
Sistemas tradicionais criados com base em funções são sensíveis a mudanças.

3/11
Lógica Orientada a Objetos – Aula 1

Um sistema OO consiste em unidades que são uma combinação de dados e


funcionalidade. Isto faz com que as unidades em um sistema OO fiquem bem próximas
aos seus companheiros na vida real.

Por exemplo, uma unidade chamada Funcionário em um sistema OO armazena os dados


que um Funcionário na vida real possui e executa suas funções.

As similaridades entre a modelagem do sistema e a vida real fazem com que os sistemas
sejam mais intuitivos para projeto e manutenção. Por exemplo, você identifica os dados
e as funções de uma unidade do Funcionário em um sistema OO visualizando a
informação conhecida funcionários na vida real e as funções executadas por eles.

4/11
Lógica Orientada a Objetos – Aula 1

Sistemas OO são modulares. Cada unidade em um sistema OO trabalha com os dados e


com a funcionalidade associada com uma única entidade física ou lógica. Também, os
dados associados com uma unidade não são visíveis em uma outra unidade.

As unidades em um sistema OO interagem utilizando mensagem. Como resultado,


mesmo em sistemas amplos, as equipes que estiverem trabalhando em diferentes partes
do sistema somente precisam estar conscientes das mensagens que são passadas entre
unidades.

Conforme mencionado anteriormente, as técnicas de análise e modelagem devem


proporcionar uma ferramenta para tornar os sistemas amplos mais flexíveis. Para lidar
com isso, a metodologia OO oferece um mecanismo explícito para reutilização de
código e componentes.

Reutilização permite-lhe desenhar sistemas aproveitando totalmente o que há de comum


no sistema.

Quase todos os sistemas atualizados utilizam a GUI (Interface Gráfica de Usuário) e


geralmente tais interfaces se benefeciam muito da reutilização do código e do desenho.
Essa é uma vantagem a mais da metodologia OO.

Agora você visualizará as vantagens da utilização da abordagem OO. Uma das


principais vantagens é que Análise e Modelagem Orientada a Objeto modela um
sistema como um grupo de entidades interativas. Essa representação é semelhante ao
cenário do mundo real.

5/11
Lógica Orientada a Objetos – Aula 1

Cada entidade realiza, no sistema, a tarefa de seu equivalente na vida real. Por exemplo,
um cliente no sistema OO executa as mesmas tarefas de um cliente na vida real. Isto faz
com que o sistema seja mais fácil de ser compreendido e projetado.

A metodologia OO possui uma abordagem modular. Uma única unidade manipula os


dados e a funcionalidade associados a uma única entidade lógica ou física da vida real.
Na ocorrência de algum problema, você sabe exatamente onde procurar por um bug.

Consideremos um sistema de gerenciamento de inventário. Se a quantia calculada em


um relatório de faturas está incorreta, você pode examinar diretamente a unidade de
fatura para tentar encontrar bugs.

No caso da uma modificação nas especificações do sistema, as alterações podem ser


feitas sem receio de causar qualquer efeito colateral. Isto porque, em um sistema OO, o
limite entre as unidades que o compõe é muito bem definido.

6/11
Lógica Orientada a Objetos – Aula 1

Um sistema construído utilizando a metodologia OO pode aumentar a produtividade da


equipe envolvida no projeto. O aumento na produtividade é devido ao mecanismo de
reutilização de projeto e código.

O sistema OO também leva menos tempo para se desenvolver se comparado a outro


desenvolvido com as metodologias tradicionais. Um módulo leva menos tempo para ser
desenvolvido quando você reutiliza um projeto e seu código do que quando é necessário
construí-lo a partir do zero.

Um sistema OO também é muito confiável. Proporciona segurança e estabilidade pelo


fato de que um sistema OO emprega várias reutilizações.

Conceitos

Sistemas orientados a objetos utilizam conceitos de abstração, encapsulamento, herança


e troca de mensagens (messaging).

Abstração

Abstração é um mecanismo que é utilizado para representar um sistema complexo


através de um modelo simplificado. Você simplifica um sistema complexo, ignorando
detalhes irrelevantes sobre ele.

Por exemplo, um homem comum vê um carro como um veículo de quatro rodas, apesar
dele ser, na verdade, constituído por muitos mecanismos como os sistemas de
transmissão e direção. Portanto, um carro visto como um veículo de quatro rodas é uma
abstração para um homem comum.

Uma abstração, entretanto, é algo particular a cada pessoa.

Por exemplo, uma pessoa que constrói chassi poderia olhar um carro como uma
máquina que consiste de motor e chassi.

Um carro é uma abstração para essa pessoa também, mas os detalhes vistos por ela são
diferentes.

7/11
Lógica Orientada a Objetos – Aula 1

Sistemas orientados a objetos são baseados no conceito de abstração de dados. Isto


significa que você visualiza um sistema como sendo dividido em grupos de dados
logicamente relacionados. Cada grupo também contém operações que se aplicam a esse
conjunto de dados.

Por exemplo, um sistema de gerenciamento de inventário pode ser visualizado como um


conjunto de grupos de dados e operações logicamente relacionados.

Cada grupo contém todos os dados e funcionalidades associados a uma entidade lógica
ou física. Por exemplo, o grupo de Usuários contém todos os dados e funcionalidades
associados a um cliente na vida real.

A abstração de dados torna simples a compreensão de sistemas complexos, ajudando a


visualizar o sistema como sendo constituído de muitas unidades de dados e operações
logicamente relacionados.

Encapsulamento

Encapsulamento é um mecanismo utilizado para esconder as operações de uma


entidade.

8/11
Lógica Orientada a Objetos – Aula 1

Considere uma pessoa dirigindo um carro com um mecanismo automático de troca de


marcha. Quando a pessoa pisa no acelerador, a velocidade do carro aumenta e a marcha
é trocada automaticamente. Nesse exemplo, o mecanismo automático de troca de
marcha está encapsulado no carro.

Nos sistemas orientados a objetos, o encapsulamento é utilizado para esconder as


operações das várias unidades no sistema. O trabalho que a unidade executa é conhecido
apenas pela própria unidade.

Por exemplo, a unidade Cliente contém a operação "AdicionarCliente", a qual é


utilizada para adicionar um novo cliente ao banco de dados. O método para se adicionar
um novo cliente está encapsulado.

Para adicionar um novo cliente, você precisa apenas enviar uma mensagem à unidade
Cliente solicitando que esta execute a operação "AdicionarCliente".

Herança

Herança é um mecanismo que identifica os aspectos comuns entre os sistemas e utiliza-


os para reduzir o esforço dispensado ao projeto de um novo sistema.

A vantagem de agrupar o que é comum em um sistema é que uma vez identificada a


parte comum, não é preciso empreender esforços no projeto e programação dessa parte
novamente.

Conforme mencionado anteriormente, um sistema OO é constituído de unidades com


operações e dados logicamente relacionados. Você utiliza a herança para que uma
unidade extraia seus dados e operações de outra unidade.

Herança

9/11
Lógica Orientada a Objetos – Aula 1

Considere as unidades ClienteNormal e ClienteEspecial. Estes são tipos de clientes,


portanto, possuem alguns dados e operações em comum.

Para utilizar a herança e capturar o que é comum, os dados e operações em comum são
colocados em uma unidade separada chamada cliente. As unidades ClienteNormal e
ClienteEspecial herdam os dados e operações comuns do cliente.

Entretanto, o ClienteNormal e o ClienteEspecial podem possuir dados e operações


adicionais específicos a eles.

Messaging

Troca de mensagem (messaging) é um mecanismo de comunicação entre as unidades


que compõem um sistema orientado a objeto.

As unidades que compõem um sistema precisam trabalhar juntas para que o sistema
produza resultado desejado. Para coordenar esse trabalho, utilizam mensagens.

Por exemplo, em um sistema de Folha de Pagamento, a unidade Hollerith deve passar


uma mensagem para a unidade Contas instruindo-a a reportar o percentual de imposto a
ser deduzido do salário do funcionário. Isto permitirá a unidade Hollerith a imprimir
holleriths contendo o valor correto do imposto deduzido.

10/11
Lógica Orientada a Objetos – Aula 1

11/11

Você também pode gostar