"design" de classes, métodos

5 respostas
Z

Pessoas, procuro algum guia, ebook ou algo do tipo com orientações de como devo construir e separar minhas classes de forma mais organizada... existe algum padrão recomendado para isso?

Eu sei que de maneira geral isso pode variar dependendo do caso mas acabo sempre fazendo bagunça quando começo a adicionar várias classes e métodos.

No meu projeto atual por exemplo tenho uma classe responsável por "jogar" tudo na tela, ela possui os metodos loadResources (que carrega imagens e textos), drawImages(), updateImages(que chama a drawImages), drawText() e updateText(que chama a drawText) e tudo isso "agrupado" no método firstRound() com

public void firstRound(){

		loadResources();
		updateImages();
		updateText();
	}

depois chamo esse método por outra classe :roll:

Eu deveria criar classes diferentes cuidando de textos e imagens ou loads e draws ou sei lá? Isso é questão de estilo de cada programador ou existe um padrão a ser seguido?

Procurando aqui no fórum cheguei nisso daqui http://www.guj.com.br/java/8857-links-pra-design-patterns mas o post é de 2004 e alguns links estão quebrados, e outros parecem não ter informações muito claras (pelo menos pro meu nível atual). O tal de UML tem algo a ver com isso? valeu

5 Respostas

douglas_arantes

O caminho para resolver isso é estudar Design Patterns.
Tem o livro que é considerado a bíblia dos Design Patterns, que foi escrito se não me engano em 1994 e com uma reimpressão em 2008 “design patterns elements of reusable object-oriented software”, que possui exemplos em C++ e Smalltalk, e existe outros atuais com exemplos em java. Mas independente da linguagem utilizada os conceitos são semelhantes.

Link da amazon com alguns títulos:
http://www.amazon.com/s/ref=nb_sb_noss?url=search-alias%3Daps&field-keywords=design+patterns+elements+of+reusable+object-oriented+software

Z

Caramba, dei uma “passada” pelo conteúdo do livro a leitura é bem longa :expressionless: mas é isso aí, não posso querer tudo mastigado também né.

Preciso entender melhor algumas coisas antes de conseguir absorver o que é mostrado lá mas agradeço a recomendação :smiley:

douglas_arantes

znx:
Caramba, dei uma “passada” pelo conteúdo do livro a leitura é bem longa :expressionless: mas é isso aí, não posso querer tudo mastigado também né.

Preciso entender melhor algumas coisas antes de conseguir absorver o que é mostrado lá mas agradeço a recomendação :D

Sim, vai ser um longo caminho até dominar tudo aquilo.
Peguei o livro na Biblioteca da minha Universidade estou lendo, o livro é muito interessante.

Outra dica é a apostila sensacional do curso FJ-16 da caelum, acho que vale muito a pena ler ela, pois é desenvolvido um sistema completo,
utilizando Swing, XML, Testes de Unidade, e alguns Design Patterns.

http://www.caelum.com.br/apostila-java-testes-xml-design-patterns/

fabiomariner

cara… acho q antes de mergulhar em design patterns seria interessante ter sólidos conhecimento em design orientado a objetos, estou seguindo esse caminho e recomendo fortemente q faça o mesmo, pesquise por “SOLID” absorva esses conceitos e pratique-os, isso está mudando minha vida como desenvolvedor e não é coisa de outro mundo. boa sorte.

ex:
http://www.linhadecodigo.com.br/artigo/3131/principios-de-design-orientado-a-objeto-srp.aspx

Z

douglas_arantes:

apostila sensacional do curso FJ-16 da caelum, acho que vale muito a pena ler ela, pois é desenvolvido um sistema completo,
utilizando Swing, XML, Testes de Unidade, e alguns Design Patterns.

http://www.caelum.com.br/apostila-java-testes-xml-design-patterns/

Estou pensando em fazer alguns cursos presenciais na caelum, começando pelo FJ11, mas eu acho que aprendo melhor “sozinho” (foi assim até hj). Achei bem legal eles disponibilizarem as apostilas, vou olhar essa também, valeu.

fabiomariner:

cara… acho q antes de mergulhar em design patterns seria interessante ter sólidos conhecimento em design orientado a objetos, estou seguindo esse caminho e recomendo fortemente q faça o mesmo, pesquise por “SOLID” absorva esses conceitos e pratique-os, isso está mudando minha vida como desenvolvedor e não é coisa de outro mundo. boa sorte.

Bem interessente esse SOLID, parece ser mais direto ao ponto e é o que preciso. Vou pesquisar mais sobre isso, valeu :smiley:

Criado 29 de abril de 2013
Ultima resposta 2 de mai. de 2013
Respostas 5
Participantes 3