Mudanças entre as edições de "Design patterns em linguagens dinâmicas"

De Garoa Hacker Clube
Ir para navegação Ir para pesquisar
Linha 5: Linha 5:
 
== Contexto ==
 
== Contexto ==
   
O livro ''Design Patterns'' de Gamma, Helm, Johnson e Vlissides, documenta 23 padrões de projeto. A maioria dos exemplos de código são em C++ e há alguns em Smalltalk.
+
O livro ''Design Patterns'' de Gamma et. al., documenta 23 padrões de projeto. A maioria dos exemplos de código são em C++ e há alguns em Smalltalk.
   
 
Peter Norvig fez uma apresentação em 1996 "Design Patterns in Dynamic Languages"
 
Peter Norvig fez uma apresentação em 1996 "Design Patterns in Dynamic Languages"

Edição das 20h03min de 10 de março de 2013

Proposta

Grupo de estudos e discussão presencial no Garoa Hacker Clube para rever padrões de projeto e sua aplicabilidade e variações em linguagens dinâmicas (Python, Ruby, JavaScript etc.).

Contexto

O livro Design Patterns de Gamma et. al., documenta 23 padrões de projeto. A maioria dos exemplos de código são em C++ e há alguns em Smalltalk.

Peter Norvig fez uma apresentação em 1996 "Design Patterns in Dynamic Languages"

Nesta apresetnação o slide #10 tem o seguinte conteúdo:

Design Patterns in Dylan or Lisp

16 of 23 patterns are either invisible or simpler, due to:

  • First-class types (6): Abstract-Factory, Flyweight, Factory-Method, State, Proxy, Chain-Of-Responsibility
  • First-class functions (4): Command, Strategy, Template-Method, Visitor
  • Macros (2): Interpreter, Iterator
  • Method Combination (2): Mediator, Observer
  • Multimethods (1): Builder
  • Modules (1): Facade

Proposta detalhada

  • Para cada encontro, escolher 2 padrões para estudo e discussão:
    • um dos 16 da lista do Norvig (acima)
    • um dos 7 restantes, que não aparecem nesta lista porque devem ser aplicáveis também em linguagens dinâmicas mesmo na forma descrita no livro Design Patterns.
  • Apresentar código exemplo nas linguagens dinâmicas de preferência dos participantes

Cronograma

Reuniões em 2 quartas-feiras por mês (a cada 2 ou 3 semanas)

Datas:

  • 3/04
  • 17/04
  • 8/05
  • 22/05
  • 5/06
  • 19/06

Referências