Singleton.

Slides:



Advertisements
Apresentações semelhantes
Soluções elegantes para problemas recorrentes
Advertisements

ABSTRAÇÃO processo de representar um grupo de entidades através de seus atributos comuns feita a abstração, cada entidade particular (instância) do grupo.
Aula 10 Algoritmos de Busca
Chain of Responsibility
Projeto de Sistemas de Software
Factory Method Projeto de Sistemas de Software
Kleinner Farias e Raphael do Vale
Padrão de Projeto Iterator
Orientação a Objetos: Encapsulamento e Classificação
Generalização, Especialização e Conceitos
Padrões GoF - Façade.
1 Memento. 2 Há situações em que é necessário registrar o estado interno de um objeto em determinados pontos do processamento. –e.g.: checkpoints e mecanismos.
Listas lineares Listas Lineares Fila Dupla Pilha Fila Saída restrita
Árvores Introdução e Aplicações Árvores de Busca Binária Fundamentos
Polimorfismo e Classes Abstratas Profa
Orientação a Objetos Classes
Exemplos de Refactoring Alguns exemplos e considerações sobre Refactoring.
Métodos Programação II 1 Métodos de Programação II (Mestrado Integrado em Engenharia de Comunicações) 1º Ano, 2º Semestre Elementos de Classe, class wrappers.
Equipe ADEV – O que foi feito Ajuste no documento de caso de uso do requisito 02 para ficar de acordo com o que foi implementado. Ajuste no documento de.
CRIANDO OBJETOS EM JAVA
exercícios listas encadeadas
Programação Orientada a Objetos com Java
Funções Declaração function nomedafunção (arg_1, arg_2,..., arg_n) corpoDaFunção end.
Aula prática 13 Orientação a Objetos – C++ Parte 1
Padrões de projeto detalhados Factory Method, Abstract Factory
Singleton e Adapter Professor: Nazareno Andrade
Atributos, Encapsulamento e Interface em Java
Classes, Objetos, Atributos e Métodos JAVA
Paulo Borba Centro de Informática Universidade Federal de Pernambuco Classes Abstratas e Interfaces.
Adriano S. Castro André Abdalla
LEONARDO SIMAS JUSSI BARROS WESLLEY VIEIRA Flyweight.
Aula prática 14 Orientação a Objetos – C++ Parte 2
Estruturas de Dados Aula 17: Estruturas Genéricas
Tratamento de Exceções
Universidade Católica de Angola Prática de laboratório Fundamentos de Programação II Frei Joaquim José Hangalo.
Introdução às Java Threads
Aula Prática 4 Monitoria IP/CC (~if669).
Prof.: Bruno Rafael de Oliveira Rodrigues. Construtor é bloco declarado que é chamado no momento em que o Objeto é criado (instanciado). Todas as classes.
Bruno Inojosa MCP.NET Framework.NET com C#. Aula V  Tópicos abordados:  Desenvolvendo para internet (Parte III) Gerenciamento de Estados User Controls.
1 Marcio de Carvalho Victorino JAVA. 2 Declaração de Atributos [ ] [transient] [volatile] [static] [final] ; controle de acesso –public, package (default),
Classes Abstratas e Interface
Aula 10 Algoritmos de Busca
Paradigmas da Programação – Semestre 2 – Aula 1 Professores: Fábio de Paula Santos Eduardo Mantovani
Construtores e Destrutores
Aula Prática 5 Monitoria IP/CC (~if669). Roteiro 1. 1.Recursão 2. 2.Escopo de Variáveis 3. 3.Arrays 4. 4.Strings.
April 05 Prof. Ismael H. F. Santos - 1 Módulo III Padrões GOF: Singleton, Professores Eduardo Bezerra –
Curso Plone Semana 1 Conceitos Básicos e Infra-estrutura.
Programação para Dispositivos Móveis Prof. Wallace Borges Cristo.
Copyright 1998, Departamento de Informática da UFPE. Todos os direitos reservados sob a legislação em vigor. Variáveis e métodos estáticos, Passagem de.
Bruno Inojosa MCP .NET Framework
Modificadores Programação II.
1 Design Pattern Double Checked Locking. 2 Design Pattern Apresenta soluções para problemas que ocorrem repetidamente em nosso ambiente computacional.
UCSal – Bacharelado em Informática Tópicos Especiais em Informática II Profa. Semíramis Assis
J U nit Um Framework Para Testes. Motivação  Todos os programadores sabem que devem testar seu código  Quanto mais curto o prazo menos testes são realizados.
Associação. 2 Desafio – Aula class Aluno { 2. private String nome; 3. private float nota; 4. public Aluno(String nome, float nota){ 5. this.nome.
RMI Java Remote Method Invocation em Java. Introdução Java Remote Method Invocation (Java RMI) permite desenvolver sistemas distribuídos baseados em Java.
Implementação Orientada a Objetos – Aula 08 Herança, sobrescrita de métodos e polimorfismo Prof. Danielle Martin Universidade de Mogi das Cruzes
Implementação Orientada a Objetos – Aula 07 Agregação e composição de objetos Prof. Danielle Martin Universidade de Mogi das Cruzes
Implementação Orientada a Objetos – Aula 04 Métodos, parâmetros e retorno Prof. Danielle Martin/Marcia Bissaco Universidade de Mogi das Cruzes
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
Aula 8 – Padrão Singleton
Padrões de Projeto de Criação Padrões de Projeto Orientados a Objetos Prof a. Danielle Martin Universidade de Mogi das Cruzes.
1 Introdução aos Padrões de Projetos (na prática) Créditos: Lúbia Vinhas Hazel Carvalho Crato Adaptações: Prof. Nécio de Lima Veras.
Classes Abstratas e Interface. 2 Classe Abstrata  Uma classe abstrata serve apenas como modelo para uma classe concreta (classe que comumente usamos);
1 Interface (o termo) » Interface (a palavra reservada): Java estendeu o conceito de interfaces à um nível ainda mais flexível que permite construir entidades.
ProgramaçãoConcorrente Glêdson Elias
Laboratório de Computação Aula 06 e 07 – Implementação de classes Prof. Fábio Dias
Linguagem de Programação – Aula 04 Prof. Me. Ronnison Reges Vidal.
Façade Definição: Quando usar? Tipo de padrão? Como? estrutural.
Singleton e Template Method
Transcrição da apresentação:

Singleton

Singleton Motivação: algumas classes devem ser instanciadas uma única vez: Um spooler de impressão Um sistema de arquivos Um Window manager Um objeto que contém a configuração do programa Um ponto de acesso ao banco de dados Obstáculo: a definição de uma variável global deixa a instância (objeto) acessível mas não inibe a instanciação múltipla. Como assegurar que somente uma instância de uma classe seja criada para toda a aplicação? Obstáculo: a definição de uma variável global deixa a instância (objeto) acessível mas não inibe a instanciação múltipla e proíbe o polimorfismo.

Singleton Intenção: garantir que uma classe tem apenas uma instância, e prover um ponto de acesso global a ela; Solução: fazer com que a própria classe seja responsável pela manutenção da instância única, de tal forma que: Quando a instância for requisitada pela primeira vez, essa instância deve ser criada; Em requisições subseqüentes, a instância criada na primeira vez é retornada. A classe Singleton deve: armazenar a única instância existente; garantir que apenas uma instância será criada; prover acesso a tal instância. O uso deste padrão garante que para uma classe específica só possa existir uma única instância, a qual é acessível de forma global e uniforme.

Singleton (estrutura)

Singleton (implementação) public final class Singleton { private static Singleton instance = null; private Singleton () { ... } public static Singleton getInstance() { if (instance == null) { instance = new Singleton (); return instance;

Singleton (uso) public class UsoDoSingleton { : Singleton obj; obj = Singleton.getInstance(); }