Padrão de projeto e frameworks são a mesma coisa?

Estive procurando informações sobre estes dois assuntos e em alguns lugares, falaram que são a mesma coisa…alguém poderia dar uma ajuda? Indicar algo pra ler?
Eu sei que padrão de projeto é um modelo que alguém um dia utilizou pra resolver um problema e disponibilizou para todos, mas nunca usei isso…acho que por isso que ta dificil entender a diferença entre estes dois temas "/
E framework, o que seria? Um conjunto de classes que te dá um caminho e vc tem que seguir somente ele?

Padrões de Projeto = Conjunto de técnicas utilizadas no desenvolvimento de software para alcançar um determinado objetivo
ex: varias classes que tem um comportamento muito parecido e para identifica-los vc usa um monte de if’s…isso poderia ser facilmente ser substituido por um Padrão de projeto.

Framework = biblioteca(s) que te ajudam a fazer determinadas tarefas de forma mais rápida e as vezes prática.
ex: ler/escreve xml, criar gráficos, utilizar data e hora.

Resumindo: Padrões de projeto -> para você (teoricamente) fazer um código melhor…
Framework -> te ajuda a fazer tarefas de forma mais facil e rapido (automatizador de processos)

Sobre um bom livro de padrão de projeto dá uma olhada no link: http://www.americanas.com.br/produto/177684/livros/informatica/informatica/livro--padroes-de-projeto

Concordo com a indicação do Japa da Bíblia dos padrões Gof e outro livro muito bom pois os exemplos são baseados em JAVA é o Use a Cabeça Padrões de Projetos. Pois o livro do Gof é baseado em SmallTalk

Use a cabeça padrão de projetos parece ser muito bom pretendo compra-lo.

gRoOve , é isso que o joeroots falou.
Os padrões de projeto são usados para que o código da aplicação se torne mais legível e mais limpo, sem gambiarras. Mas cuidado! Não saia aplicando padrões no seu código a torto e a direito, cada padrão deve ser aplicado para uma determinada finalidade. Há casos que um padrão deve ser aplicado e há casos que não.
Nesse link tem uns materiais resumidos sobre padrões, mas bem interessantes.

E os frameworks são ferramentas ou bibliotecas que facilitam a vida do programador, o objetivo é fazer com que o desenvolvimento seja mais prático e rápido.

Entendi, na verdade o nome diz tudo: padrão de projeto, é uma forma de resolver uma situação utilizando código padrão afim de tornar mais claro para todos.

Estou lendo o Use a cabeça: java e estou gostando(fora os erros de tradução "/) depois que terminar será que estou apto a aprender algo sobre padrões de projeto? Se não, qual assunto indicariam?

Obrigado pelas dicas galera :slight_smile:

Padrão = solução reutilizável para problemas recorrentes.
Padrão de Projeto = padrão que se aplica a problemas em nível de design/projeto OO.
Framework = conjunto de padrões combinados para prover uma estrutura genérica, que pode ser customizada para resolver grandes problemas, como: persistência, logging, GUIs, segurança.

Ou seja, frameworks são um conjunto de bibliotecas customizáveis para atender uma necessidade específica. Necessariamente possuem uma implementação, ou seja código.

Padrões são idéias reutilizáveis. Podem possuir uma implementação sugerida, mas é apenas uma sugestão.

Ambos têm o objetivo de poupar esforço de desenvolvimento e evitar a abundância de soluções de qualidade não uniforme. Não são receita para a excelência. Se você quer elevar o estado da arte, ache uma forma original de combinar padrões ou crie os seus próprios.

[quote=esmiralha]Padrão = solução reutilizável para problemas recorrentes.
Padrão de Projeto = padrão que se aplica a problemas em nível de design/projeto OO.
Framework = conjunto de padrões combinados para prover uma estrutura genérica, que pode ser customizada para resolver grandes problemas, como: persistência, logging, GUIs, segurança.

Ou seja, frameworks são um conjunto de bibliotecas customizáveis para atender uma necessidade específica. Necessariamente possuem uma implementação, ou seja código.

Padrões são idéias reutilizáveis. Podem possuir uma implementação sugerida, mas é apenas uma sugestão.

Ambos têm o objetivo de poupar esforço de desenvolvimento e evitar a abundância de soluções de qualidade não uniforme. Não são receita para a excelência. Se você quer elevar o estado da arte, ache uma forma original de combinar padrões ou crie os seus próprios.[/quote]

Ótima explicação!