SlideShare uma empresa Scribd logo
1 de 10
Baixar para ler offline
Encapsulamento
MATEUS MELLO, RODRIGO, YANKA, JOÃO HENRIQUE, TATIANE E JOÃO VICTOR
O que e ?
 Encapsulamento vem de encapsular, que em programação orientada a
objetos significa juntar o programa em partes, o mais isoladas possível. A
ideia é tornar o software mais flexível, fácil de modificar e de criar novas
implementações
Exemplos
 Telefone
 interface pública- botões utilizados para interagir com o objeto
 implementação - as operações internas, o propósito do objeto
 Carro
 interfaces públicas - pedais, direção, câmbio
 implementação - o funcionamento do carro
Níveis de Encapsulamento
 Nível de classe;
 Nível de membro;
Principais Vantagens
 O objeto é disponibilizado ao usuário com toda a sua funcionalidade,
sem a necessidade de conhecermos seu funcionamento ou
armazenamento interno
 É possível modificar um objeto internamente, acrescentando métodos,
sem que isto afete os outros componentes do sistema que utilizam o
objeto modificado
 O processo de desenvolvimento de sistemas é acelerado e simplificado,
já que os usuários dos objetos não precisam necessariamente saber como
eles são constituídos internamente
Por que encapsular
 Independência significa que você pode reutilizar o objeto em qualquer
lugar.
 O encapsulamento permite que você torne transparentes as alterações
em seu objeto.
 Usar um objeto encapsulado não causará efeitos colaterais inesperados
entre os objetos e o restante do programa.
As três características do encapsulamento eficaz
são
• Abstração
• Ocultação da implementação
• Divisão da responsabilidade
Exemplo
1. Quando um controle remoto estraga apenas é trocado ou
consertado o controle e não a televisão inteira. Nesse exemplo do
controle remoto, acontece a forma clássica de encapsulamento,
pois quando o usuário muda de canal não se sabe que
programação acontece entre a televisão e o controle para efetuar
tal ação.
2. Um sistema de vendas, aonde temos cadastros de funcionários,
usuários, gerentes, clientes, produtos entre outros. Se por acaso
acontecer um problema na parte do usuário é somente nesse setor
que será realizada a manutenção não afetando os demais.
Código
Código

Mais conteúdo relacionado

Semelhante a Emcapsulamento - JAVA

Avalição Heurística de aplicativos Desktop e Web
Avalição Heurística de aplicativos Desktop e WebAvalição Heurística de aplicativos Desktop e Web
Avalição Heurística de aplicativos Desktop e WebBruno Dadalt Zambiazi
 
Resumo O loto, conhecido como Lockout Tagout.pdf
Resumo O loto, conhecido como Lockout Tagout.pdfResumo O loto, conhecido como Lockout Tagout.pdf
Resumo O loto, conhecido como Lockout Tagout.pdfssuser66f178
 
Poo apostila visual c
Poo apostila visual cPoo apostila visual c
Poo apostila visual cFabiano Lima
 
IHM- User Experience
IHM- User ExperienceIHM- User Experience
IHM- User ExperienceRocristina
 
Desenvolvimento de ferramenta para automação de tarefas
Desenvolvimento de ferramenta para automação de tarefasDesenvolvimento de ferramenta para automação de tarefas
Desenvolvimento de ferramenta para automação de tarefasEverton V. Tavares
 
Como DDD e Strategic Design estão nos ajudando a modernizar um Legado
Como DDD e Strategic Design estão nos ajudando a modernizar um LegadoComo DDD e Strategic Design estão nos ajudando a modernizar um Legado
Como DDD e Strategic Design estão nos ajudando a modernizar um LegadoLuiz Costa
 
Desenvolvimento Moderno de Aplicações Android 2023
Desenvolvimento Moderno de Aplicações Android 2023Desenvolvimento Moderno de Aplicações Android 2023
Desenvolvimento Moderno de Aplicações Android 2023Nelson Glauber Leal
 
12 objetivos de banco de dados distribuídos
12 objetivos de banco de dados distribuídos12 objetivos de banco de dados distribuídos
12 objetivos de banco de dados distribuídosBruno Felipe
 
Introdução à Engenharia de Software
Introdução à Engenharia de SoftwareIntrodução à Engenharia de Software
Introdução à Engenharia de Softwareelliando dias
 
TDD (Test-Driven Development)
TDD (Test-Driven Development)TDD (Test-Driven Development)
TDD (Test-Driven Development)Renato Groff
 
Developer Experience no Nubank
Developer Experience no NubankDeveloper Experience no Nubank
Developer Experience no NubankLetticia Nicoli
 
Appinventor 120429141244-phpapp02
Appinventor 120429141244-phpapp02Appinventor 120429141244-phpapp02
Appinventor 120429141244-phpapp02Cesar Luis Teixeira
 
Verificação, validação e teste de software ágil
Verificação, validação e teste de software ágilVerificação, validação e teste de software ágil
Verificação, validação e teste de software ágilGilberto Gampert
 
Modelo Incremental - Engenharia de Software
Modelo Incremental - Engenharia de SoftwareModelo Incremental - Engenharia de Software
Modelo Incremental - Engenharia de SoftwareDaniela Franciosi
 

Semelhante a Emcapsulamento - JAVA (20)

Avalição Heurística de aplicativos Desktop e Web
Avalição Heurística de aplicativos Desktop e WebAvalição Heurística de aplicativos Desktop e Web
Avalição Heurística de aplicativos Desktop e Web
 
Resumo O loto, conhecido como Lockout Tagout.pdf
Resumo O loto, conhecido como Lockout Tagout.pdfResumo O loto, conhecido como Lockout Tagout.pdf
Resumo O loto, conhecido como Lockout Tagout.pdf
 
Desenvolvimento Ágil
Desenvolvimento ÁgilDesenvolvimento Ágil
Desenvolvimento Ágil
 
Poo apostila visual c
Poo apostila visual cPoo apostila visual c
Poo apostila visual c
 
IHM- User Experience
IHM- User ExperienceIHM- User Experience
IHM- User Experience
 
Desenvolvimento de ferramenta para automação de tarefas
Desenvolvimento de ferramenta para automação de tarefasDesenvolvimento de ferramenta para automação de tarefas
Desenvolvimento de ferramenta para automação de tarefas
 
Como DDD e Strategic Design estão nos ajudando a modernizar um Legado
Como DDD e Strategic Design estão nos ajudando a modernizar um LegadoComo DDD e Strategic Design estão nos ajudando a modernizar um Legado
Como DDD e Strategic Design estão nos ajudando a modernizar um Legado
 
Desenvolvimento Moderno de Aplicações Android 2023
Desenvolvimento Moderno de Aplicações Android 2023Desenvolvimento Moderno de Aplicações Android 2023
Desenvolvimento Moderno de Aplicações Android 2023
 
12 objetivos de banco de dados distribuídos
12 objetivos de banco de dados distribuídos12 objetivos de banco de dados distribuídos
12 objetivos de banco de dados distribuídos
 
DOOR BLE
DOOR BLEDOOR BLE
DOOR BLE
 
Introdução à Engenharia de Software
Introdução à Engenharia de SoftwareIntrodução à Engenharia de Software
Introdução à Engenharia de Software
 
Métodos ágeis de desenvolvimento2
Métodos ágeis de desenvolvimento2Métodos ágeis de desenvolvimento2
Métodos ágeis de desenvolvimento2
 
Conceitos de Usabilidade
Conceitos de UsabilidadeConceitos de Usabilidade
Conceitos de Usabilidade
 
TDD (Test-Driven Development)
TDD (Test-Driven Development)TDD (Test-Driven Development)
TDD (Test-Driven Development)
 
Developer Experience no Nubank
Developer Experience no NubankDeveloper Experience no Nubank
Developer Experience no Nubank
 
Appinventor 120429141244-phpapp02
Appinventor 120429141244-phpapp02Appinventor 120429141244-phpapp02
Appinventor 120429141244-phpapp02
 
Apresentação Mural TIC ihc
Apresentação Mural TIC ihcApresentação Mural TIC ihc
Apresentação Mural TIC ihc
 
Modelo incremental
Modelo incrementalModelo incremental
Modelo incremental
 
Verificação, validação e teste de software ágil
Verificação, validação e teste de software ágilVerificação, validação e teste de software ágil
Verificação, validação e teste de software ágil
 
Modelo Incremental - Engenharia de Software
Modelo Incremental - Engenharia de SoftwareModelo Incremental - Engenharia de Software
Modelo Incremental - Engenharia de Software
 

Emcapsulamento - JAVA

  • 1. Encapsulamento MATEUS MELLO, RODRIGO, YANKA, JOÃO HENRIQUE, TATIANE E JOÃO VICTOR
  • 2. O que e ?  Encapsulamento vem de encapsular, que em programação orientada a objetos significa juntar o programa em partes, o mais isoladas possível. A ideia é tornar o software mais flexível, fácil de modificar e de criar novas implementações
  • 3. Exemplos  Telefone  interface pública- botões utilizados para interagir com o objeto  implementação - as operações internas, o propósito do objeto  Carro  interfaces públicas - pedais, direção, câmbio  implementação - o funcionamento do carro
  • 4. Níveis de Encapsulamento  Nível de classe;  Nível de membro;
  • 5. Principais Vantagens  O objeto é disponibilizado ao usuário com toda a sua funcionalidade, sem a necessidade de conhecermos seu funcionamento ou armazenamento interno  É possível modificar um objeto internamente, acrescentando métodos, sem que isto afete os outros componentes do sistema que utilizam o objeto modificado  O processo de desenvolvimento de sistemas é acelerado e simplificado, já que os usuários dos objetos não precisam necessariamente saber como eles são constituídos internamente
  • 6. Por que encapsular  Independência significa que você pode reutilizar o objeto em qualquer lugar.  O encapsulamento permite que você torne transparentes as alterações em seu objeto.  Usar um objeto encapsulado não causará efeitos colaterais inesperados entre os objetos e o restante do programa.
  • 7. As três características do encapsulamento eficaz são • Abstração • Ocultação da implementação • Divisão da responsabilidade
  • 8. Exemplo 1. Quando um controle remoto estraga apenas é trocado ou consertado o controle e não a televisão inteira. Nesse exemplo do controle remoto, acontece a forma clássica de encapsulamento, pois quando o usuário muda de canal não se sabe que programação acontece entre a televisão e o controle para efetuar tal ação. 2. Um sistema de vendas, aonde temos cadastros de funcionários, usuários, gerentes, clientes, produtos entre outros. Se por acaso acontecer um problema na parte do usuário é somente nesse setor que será realizada a manutenção não afetando os demais.