OOPSLA - PowerPoint PPT Presentation

About This Presentation
Title:

OOPSLA

Description:

Title: Slide 1 Author: Giuliano Mega Last modified by: Giuliano Mega Created Date: 11/14/2004 4:39:28 PM Document presentation format: On-screen Show – PowerPoint PPT presentation

Number of Views:78
Avg rating:3.0/5.0
Slides: 30
Provided by: Giul61
Category:
Tags: oopsla | metodo

less

Transcript and Presenter's Notes

Title: OOPSLA


1
OOPSLA 04/ETX
  • Giuliano Mega

2
O que é a OOPSLA?
  • Conferência anual em Orientação a Objetos (OO).
    PSLA
  • Programação
  • Sistemas
  • Linguagens
  • Aplicações
  • promovida pela ACM desde 1986
  • 19a edição (outubro de 2004)
  • uma das mais importantes
  • certamente a maior delas.

3
Estrutura da OOPSLA
  • Atividades
  • Technical Papers
  • O filé da conferência
  • Garbage Collection, Design, Aspects, Performance,
    etc.
  • Practitioner Reports
  • Experiências aplicando conceitos, tecnologias.
  • O que funciona e o que não funciona
  • Panels
  • Onward!
  • Assuntos revolucionários.
  • Tutorials
  • Scott Meyers, Douglas Schmidt, Erich Gamma, Ralph
    Johnson

4
Estrutura da OOPSLA (cont.)
  • Workshops
  • BoFs
  • Eventos diversos (após os horários de
    conferência)
  • Comida. Muita comida. ?

5
O Eclipse Technology eXchange
  • É um dos workshops da OOPSLA
  • exposição e discussão de trabalhos relacionados
    ao Eclipse
  • fórum onde pesquisadores têm a oportunidade de
    conhecerem uns aos outros e compartilharem suas
    experiências e código
  • 21 trabalhos neste ano, divididos em 6 seções.
  • Opnião pessoal - três trabalhos
  • Strathcona (Unsticking Eclipse Plug-In
    Development)
  • Java Traits in Eclipse
  • MEProf Modular Extensible Profiler

6
Unsticking Eclipse plug-in Development
  • Motivação
  • O Eclipse é um arcabouço poderoso, genérico,
    flexível e complexo.
  • Arcabouços devem fornecer
  • Boa documentação de alto nível
  • exemplos, muitos exemplos.
  • Disponibilizar exemplos pode ser uma tarefa
    árdua.
  • Achá-los é ainda pior.

7
Motivação (cont.)
  • Abordagens
  • Manual (grande maioria)
  • Razoável para tarefas fundamentais
  • impraticáveis no caso geral (defasagem, escopo).
  • Repositórios de exemplos ferramentas
  • Exemplos são o código
  • ferramentas auxiliam na busca por exemplos
    relevantes
  • Diferem quanto ao método de recuperação
  • ad hoc
  • busca por categorias (Eclipse)
  • query languages especializadas

8
Strathcona
9
Strathcona - busca
10
Strathcona - busca (cont.)
11
Strathcona
  • Exemplos auto-sustentáveis.
  • Poderia reduzir significativamente a inclinação
    da curva de aprendizado.
  • Custo administrativo adicional é negligível perto
    dos benefícios.
  • O código do plug-in NÃO está disponível.

12
Java Traits
  • Traits
  • Conceito simples e poderoso, sub-utilizado em OO.
  • São coleções de métodos.
  • Definem também um conjunto de requisitos.
  • Múltiplos traits podem ser aplicados a uma classe.

13
Java Traits (cont.)
  • Aumentam a qualidade do código
  • Reduzem código duplicado.
  • Altamente ligados aos conceitos de refatoração.
  • Experiência pessoal
  • Eliminariam muitas gambiarras
  • Classes utilitárias
  • Métodos estáticos.
  • Reduziriam significativamente a quantidade de
    código.
  • Infelizmente o plug-in não está disponível.

14
Java Traits - implementação
  • Traits são implementados sob a forma de classes
    abstratas.
  • Requisitos transformam-se em stubs métodos
    abstratos.
  • Ferramenta
  • implementa um browser parecido com o do
    Smalltalk
  • permite criar novos traits através da composição
    de traits já existentes
  • gerencia automaticamente as dependências.

15
MEProf Modular Extensible Profiler
  • Os requisitos para profiling são heterogêneos
  • Baixo nível
  • Informações detalhadas sobre o funcionamento de
    métodos-chave.
  • Pode envolver o uso de medidores de performance
    de hardware empregados no nível do bytecode ou
    até mesmo do código assembly.
  • Alto nível
  • Profiling específico a certos domínios
  • pode envolver acesso a dados gerados em níveis
    mais baixos.
  • Resultado
  • Muitos programas específicos
  • difícil unificar os dados produzidos.

16
Profiling Pipeline
  • MEProf Profiler modular para o Eclipse
  • Profiling pipeline.
  • Versão inicial fortemente baseada em AOP.
  • Composto por seis tipos de componentes que operam
    em dados
  • gatilhos (triggers)
  • coletores (collectors)
  • agregadores (aggregators)
  • adaptadores (adapters)
  • filtros (filters)
  • visualizadores (visualisation modules).

17
Profiling Pipeline
  • Pontas
  • Gatilhos coletores produzem dados
  • Visualizadores consomem dados.
  • O restante dos módulos apenas transformam/combinam
    dados.

18
Profiling Pipeline (cont.)
19
Criando novos módulos
  • Agregadores, adaptadores, filtros e
    visualizadores simples de conceber.
  • Gatilhos
  • conceito de corte pontual
  • podem ser definidos através deles.
  • Coletores
  • classe que implementa a interface Collector
  • junção aspecto-conselho se dá pelo framework.
  • Aparentemente gatilhos podem ser bem mais
    complexos do que isso (não fica claro pelo
    artigo).
  • Infelizmente, o código deste plug-in também não
    está disponível.

20
Eclipse tendências
  • RCP
  • Decolando aos poucos.
  • Maior parte dos passos IBM.
  • Plug-ins
  • projetos de educação ligados a Ciências da
    Computação
  • pesquisa em como incrementar ainda mais o poder
    das IDEs
  • gerenciamento de interrupções
  • programação pareada à distância
  • acessibilidade
  • Depuração e linguagens poucos.
  • Mudança de foco nenhuma nova IDE.

21
OOPSLA/ETX opinião pesoal
  • Pontos negativos - grupo heterogêneo
  • Não foi tão bom assim para conhecer novas
    pessoas.
  • Interatividade menor do que o que eu esperava.
  • maior parte das discussões centrada em trabalhos
    de cunho educacional.
  • chair incapaz de instigar discussões em outras
    áreas.
  • Pontos positivos
  • Muitos trabalhos interessantes.
  • Excelente experiência.
  • Principalmente ir à OOPSLA.

22
OOPSLA motivos para ir
23
OOPSLA motivos para ir (cont.)
  • Publicação de longe não é a única recompensa.
  • Contato com muita pesquisa séria em OO.
  • Eventos após os horários de conferência
  • computólogos à solta
  • bebida
  • excelentes oportunidades para falar abobrinha.
  • Falar abobrinha e fazer contatos.
  • Interação com
  • Pessoas que escrevem os livros que você lê.
  • Atmosfera descontraída.

24
Livros que você lê
  • Trojan Proxy
  • Encapsulated Big Fat Opening
  • Container-Managed relationships
  • Half Bad Boy Plus Protocol
  • best use of the word private members Ive ever
    seen (Anonymous reviewer)

25
pessoas que você respeita.
26
OOPSLA mais motivos para ir
  • Key notes, Invited Speakers, Turing Lecture
  • Alan Kay
  • Ward Cunningham
  • Jaron Lanier
  • Louco, visionário ou ambos?
  • Comunicação pós-simbólica.
  • Pós-simbolismo e software.
  • Singularidade tecnológica.
  • Aprender nos tutoriais.
  • Comer mais um pouquinho.
  • Conhecer lugares e pessoas interessantes.

27
OOPSLA pontos negativos
  • Ganhei 2 quilos.

28
Homenagem aos desbravadores do Canada
29
Perguntas?
Write a Comment
User Comments (0)
About PowerShow.com