Resumo Projeto orientado a objeto
Por: Evandro.2016 • 23/1/2018 • 3.700 Palavras (15 Páginas) • 362 Visualizações
...
Estado
Cheio, meio ou vazio
Operações
Comportamento, coisas que os objetos podem fazer. Normalmente afetam os atributos de um objeto.
Modelos
Representações simplificadas de objetos que fazem parte do negócio alvo do projeto, os dados e operações de um modelo são relevantes ao estudos e a semântica (pessoa pode ser empregada, paciente). Podem conter ou ser derivados de outros modelos.
Orientação a Objetos
Paradigma de desenvolvimento de software, usa classes (modelos) e Objetos criados a partir dessas classes. A classe é um tipo com dados e operações. A modelagem (Modelos e classes) deve buscar: coesão, facilidade de manutenção ( baixo acoplamento) e eficiência.
Encapsulamento
Dados de um modelo não devem ser acessados diretamente, para manipulação de seus dados o modelo deve oferecer operações específicas, é um benefício dos mais palpitáveis e um dos principais objetivos da POO. Melhora a clareza e a organização e reduz a quantidade de erros.
Exemplo de modelos
Lâmpada, Conta bancária simplificada.
Modelo de lâmpada
Pseudocódigo
Modelo de conta bancária
Síntese
Classe é uma estrutura da O.O. para implementar um determinado modelo
Objeto é a materialização (concretização) de uma classe
Instância é o mesmo que objeto
Campos (ou atributos ou propriedades) são os dados definidos na classe, implementados por meio de variáveis
Métodos são as operações de uma classe
Padrões de projeto
Design patterns ou padrões de projetos são soluções para problemas enfrentados que alguém um dia teve e resolveu aplicando um modelo que foi documentado e que você pode adaptar de acordo com sua necessidade de solução.
O paradigma da orientação a objetos tem contribuído muito neste cenário, tanto é que todas
as linguagens modernas já incorporam este padrão de desenvolvimento.
Padrão MVC e Front Controller
O modelo MVC (Model View Controller) nada mais é do que um design pattern útil para resolver problemas de modelagem de projetos
O MVC (model-view-controller) é um padrão de arquitetura que tem por objetivo isolar a lógica do negócio da lógica de apresentação de uma aplicação.
Esse padrão (ou alguma variação) é amplamente adotado nas principais plataformas de desenvolvimento atuais.
Modelo: encapsula os dados e as funcionalidades da aplicação.
Visão: é a responsável pela exibição das informações, cujos dados são obtidos no modelo.
Controlador: recebe as requisições do usuário e aciona o modelo e/ou a visão.
Imagine todas as requisições sendo recebidas por um único componente, esta é a proposta do padrão Front Controller.
Assim as tarefas que devem ser realizadas em todas as requisições podem ser implantadas por esse componente evitando a repetição de código e facilitando a manutenção do sistema.
DAO – Data Access Object
Misturar a lógica da persistência com a lógica da aplicação cria uma dependência direta entre a implementação da aplicação e do armazenamento persistente.
Tal dependência torna difícil migrar a aplicação de um tipo de fonte de dados para outro.
Quando as fontes de dados são alteradas, os componentes devem ser modificados para tratar o novo tipo de fonte de dados
DAO torna mais fácil – gerencia a conexão com a fonte de dados abstraindo e encapsulando todo acesso ao armazenamento persistente.
Frameworks
Atualmente, é improvável que um projeto de desenvolvimento de uma aplicação Web utilize diretamente Servlets, pois a produtividade seria pequena e a manutenção custosa.
Vários frameworks foram criados para facilitar o desenvolvimento e a manutenção de aplicações Web : JSF, Struts, Spring MVC.
Necessidades de uma aplicação web
Web container
Framework para aplicações web
Arquiteturas de software
Definições:
A arquitetura define o que é o sistema em termos de componentes computacionais e, os relacionamentos entre esses componentes, os padrões que guiam a sua composição e restriçoes (Shaw e Garlan, 1996).
É a estrutura (ou estruturas) do sistema, a qual é composta de elementos de software, das propriedades externas visíveis desses elementos, e dos relacionamentos entre eles; é a abstração do sistema (Bass, 1998)
É a interface entre o problema do negócio e a solução técnica. (Astudillo, 1998).
Arquitetura é a organização fundamental de um sistema incorporada em seus componentes, seus relacionamentos com o ambiente, e os princípios que conduzem se design e evolução (ISO/IEEE 1471- 1998)
Importância da arquitetura
Atua como uma estrutura a fim de checar o atendimento aos requisitos do sistema
Suporte na estimação de custos e gerência da complexidade do sistema
Suporte ao reúso
Reduz o intervalo entre especificação e implementação
Permite considerar alternativas arquitetônicas em estágios iniciais do desenvolvimento
...