Linguagens de Programação e Design Patterns

votos
3

diferentes linguagens de programação têm características diferentes ou falta de certos recursos. padrões de projeto são uma forma de contornar essas deficiências. Eu vi os livros e listas sobre padrões de projeto em orientação a objeto linguagens estáticas, (Java, C ++), mas também os vídeos sobre padrões de projeto em Python.

Estou interessado em ver alguns padrões de design comuns em outras línguas como o Forth, Ícone, Lisp etc. Uma breve descrição como eles se parecem e por que eles são necessários em uma língua seria bom. Talvez uma pequena comparação para outro idioma que resolve esse problema sem um padrão de design.

Publicado 24/09/2008 em 15:11
fonte usuário
Em outras línguas...                            


5 respostas

votos
2

Em Lisp, em vez de padrões de projeto que você está usando:

  • lambda e fechamento (funções anônimas e ambientes de captura)
  • funções de ordem superior (funções de lidar com funções)
  • macros (extesnions de sintaxe)
  • diferentes estratégias de avaliação (avaliação lenta, retrocesso)
  • funções de primeira classe, classes, espaços de nomes, módulos, etc.
  • ambiente dinâmico (por exemplo, substituir as funções em qualquer momento)
  • etc.

Eu realmente não sei o que é um padrão de design significa neste contexto. Se um padrão de design é uma receita que se deve seguir para resolver certos tipos de problemas, então é uma falta de recurso na linguagem de programação ou o ambiente. Os computadores podem lidar com tarefas repetitivas muito bem, por isso, padrões de projeto deve ser implementado e apenas chamado com os parâmetros reais.

Respondeu 24/09/2008 em 15:24
fonte usuário

votos
3

Para padrão de design em LISP, você pode ler este , por Peter Norvig.

Citando este slide :

16 dos 23 padrões de projeto ou são invisíveis ou simples

Respondeu 24/09/2008 em 15:25
fonte usuário

votos
2

Design Patterns não são realmente concebido para ser ligada a qualquer idioma. São soluções mais gerais para problemas comuns.

Respondeu 24/09/2008 em 15:29
fonte usuário

votos
0

Delegados e eventos em C # e .NET torná-la trivial para implementar o padrão de observador , uma vez que é tão comumente usado, por exemplo, para lidar com eventos de GUI.

Respondeu 24/09/2008 em 15:30
fonte usuário

votos
8

padrões de design são às vezes chamados "idiomas". Em linguagens não-oo (C, Forth, COBOL, etc.) eles são apenas "as formas habituais de fazer as coisas". Às vezes, eles são chamados de "algoritmos". Toda língua (na verdade, todas as disciplinas) tem padrões de soluções de design.

Se você já viu algo duas ou três vezes, você já viu um padrão. Se você pode descrever o contexto, o problema, a solução e as consequências, você elevou o padrão de algo vago para algo concreto e específico.

Em línguas não-OO, os padrões não são muitas vezes chamado e catalogadas. Não sei por que este seria o caso, parece ser assim.

Respondeu 24/09/2008 em 17:47
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more