A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Monitoria IP ~if669 Garbage Collection e pacotes.

Apresentações semelhantes


Apresentação em tema: "Monitoria IP ~if669 Garbage Collection e pacotes."— Transcrição da apresentação:

1 Monitoria IP ~if669 Garbage Collection e pacotes

2 Tópicos Pacotes: Como e porque usá-los Pacotes: Como e porque usá-los Garbage Collection: Descrição do Mecanismo Garbage Collection: Descrição do Mecanismo

3 Por que usar pacotes? ORGANIZAÇÃO E MODULARIZAÇÃO! ORGANIZAÇÃO E MODULARIZAÇÃO! É o mesmo motivo porque existem diretórios e pastas nos sistemas operacionais, tudo poderia estar no C:/, mas isso seria altamente caótico(conflitos de nomes, etc. ) É o mesmo motivo porque existem diretórios e pastas nos sistemas operacionais, tudo poderia estar no C:/, mas isso seria altamente caótico(conflitos de nomes, etc. )

4 Como usar? Simples! Tipos* que são do mesmo grupo, pertencem ao mesmo pacote. Simples! Tipos* que são do mesmo grupo, pertencem ao mesmo pacote. Ex. O pacote java.io tem tipos usados para entrada e saída, enquanto o pacote java.lang possui tipos que tem funções básicas. Ex. O pacote java.io tem tipos usados para entrada e saída, enquanto o pacote java.lang possui tipos que tem funções básicas.  *classes e interfaces

5 Como usar? Exemplo prático Imaginem que vocês desenvolveram uma série de tipos que representam objetos gráficos, círculos, retângulos, linhas, pontos etc. Imaginem que vocês desenvolveram uma série de tipos que representam objetos gráficos, círculos, retângulos, linhas, pontos etc.

6 Como usar? Exemplo prático Todos esses tipos devem ser distribuídas dentro do mesmo pacote: Todos esses tipos devem ser distribuídas dentro do mesmo pacote: –Vocês e outros programadores sabem que esses tipos estão relacionados. –Vocês e outros programadores sabem onde achar tipos que fornecem funções gráficas. –Os nomes de seus tipos não irão entrar em conflito com classes de outros pacotes.

7 Como usar? Sintaxe Deve ser declarado na primeira linha do código fonte. Só escrever package seguido do nome. Deve ser declarado na primeira linha do código fonte. Só escrever package seguido do nome. package graphics; public class Circulo{......} Não é recomendável deixar o campo package em branco. Não é recomendável deixar o campo package em branco.

8 Como usar? Sintaxe Para acessar uma classe que está dentro de um pacote, basta usar o import Para acessar uma classe que está dentro de um pacote, basta usar o import package br.cin.ufpe.util; import java.util.ArrayList; public class Teste { private ArrayList lista;... }

9 Como usar? Nomeando os pacotes A convenção é usar o dominio invertido da instituição: A convenção é usar o dominio invertido da instituição: –www.cin.ufpe.br -> br.ufpe.cin.nomedopacote www.cin.ufpe.br –www.empresa.org -> org.empresa.nomedopacote www.empresa.org Só são permitidos nomes minúsculos sem caracteres especiais(com exceção do ‘_’) Só são permitidos nomes minúsculos sem caracteres especiais(com exceção do ‘_’)

10 Como usar? Nomeando os pacotes Por que usar as convenções? Por que usar as convenções? –Evita possíveis conflitos de nomes, já que pacotes não podem possuir o mesmo nome. –Alguns nomes são muito intuitivos e bastante usados, como base, examples, graphics, io, util, etc. Usar esses nomes sem o prefixo da instituição pode causar problemas com a distribuição do programa

11 Garbage Collection Em java não é possível destruir um objeto diretamente Em java não é possível destruir um objeto diretamente O garbage collector percebe quando um objeto não será mais usado e o destrói automaticamente O garbage collector percebe quando um objeto não será mais usado e o destrói automaticamente –Podemos “ajudar” o cg do java, basta apontar um objeto para null que ele provavelmente será tratado mais rápido: private ArrayList lista;... //Usando lista lista = null; //Lista não é mais necessária

12 Garbage Collection- Nem tudo são flores É impossível fazer um Garbage Collector funcionar perfeitamente, então um código que foi bem escrito onde o programador desalocou os objetos manualmente sempre séra mais eficiente. É impossível fazer um Garbage Collector funcionar perfeitamente, então um código que foi bem escrito onde o programador desalocou os objetos manualmente sempre séra mais eficiente. É impossível ter certeza quando e onde o Garbage Collector vai atuar. É impossível ter certeza quando e onde o Garbage Collector vai atuar.

13 Garbage Collection – Vantagens Código mais enxuto Código mais enxuto O programador não precisa se preocupar em desalocar os objetos O programador não precisa se preocupar em desalocar os objetos Menos erros Menos erros Muitas aplicações não sentem o peso de performance do CG Muitas aplicações não sentem o peso de performance do CG

14 Dúvidas ?


Carregar ppt "Monitoria IP ~if669 Garbage Collection e pacotes."

Apresentações semelhantes


Anúncios Google