Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Implementação em MVC L A T E X Model View Controller Breno Dias Leles de Araujo 22 de março de 2012 Breno D.L.A. () Padrao MVC L A T E X 22 de março de 2012 1 / 8 Classe Model Tipicamente no Modelo é onde fica os códigos de negócios da implementação. Na classe Modelo usada, foi implementado os métodos para que realize a busca na matriz pela palavra dada pelo usuario. public int buscarPalavra(String s){ int i = 0; for(int l=0; l<30;l++) for (int j=0; j<30; j++){ if(matriz[l][j].equals(+s.charAt(0))){ i += buscaEpD(l,j,s); i += buscaDpE(l,j,s); i += buscaCpB(l,j,s); i += buscaBpC(l,j,s); } } return i; } Breno D.L.A. () Padrao MVC L A T E X 22 de março de 2012 2 / 8 Classe Model private int buscaEpD(int i, int j, String s){ String tmp =��; for(int p=i;p<i+s.length();p++){ if(p<30) tmp += matriz[p][j]; } if(s.equals(tmp)){ return 1; } return 0; } Breno D.L.A. () Padrao MVC L A T E X 22 de março de 2012 3 / 8 Classe Model private int buscaBpC(int i, int j, String s){ String tmp =��; for(int p=j-s.length()+1;p<=j;p++){ if(p<30 p > 0) tmp += matriz[i][p]; } tmp = inverte(tmp); if(s.equals(tmp)){ return 1; } return 0; } Breno D.L.A. () Padrao MVC L A T E X 22 de março de 2012 4 / 8 Classe View Na classe View está toda a parte gráfica da implementação e nesta classe é feita uma chamada na camada inferior(Controller) para que realize as funções necessárias. Breno D.L.A. () Padrao MVC L A T E X 22 de março de 2012 5 / 8 Classe Controller Na classe Controller é feito os ajustes de controle necessários dos dados usados antes que os mesmos sejam passados para a camada inferior(Model). Neste caso a classe Controle completa a matriz e insere uma palavra específica dentro da matriz. Breno D.L.A. () Padrao MVC L A T E X 22 de março de 2012 6 / 8 Classe Controller public class ControllerCacaPalavras{ private Modelo.ModelCacaPalavras m; private Random r = new Random(); public ControllerCacaPalavras(){ m = new Modelo.ModelCacaPalavras(); m.setMatriz(completarMatriz( � teste � ,4)); } public int cacaPalavra(String s){ return m.buscarPalavra(s); } public String()() completarMatriz(String str, int i){ String s()() = setPalavras(str,i); for(int k=0;k<30;k++) for(int j=0;j<30;j++){ if(s(k)(j) == null) s(k)(j) = ��+(char)(97+r.nextInt(25));}return s;} Breno D.L.A. () Padrao MVC L A T E X 22 de março de 2012 7 / 8 Classe Controller private String[][] setPalavras(String s, int i){ String t()() = m.getMatriz(); int l = r.nextInt(4); int x = r.nextInt(30); int y = r.nextInt(30); int a = 0; if(i>0){ if(l==0){ if(x+s.length()>30) x = 30-s.length(); for(int j=x;j<x+s.length();j++){ if(t[j][y] == null) t[j][y] = +s.charAt(a++); else return setPalavras(s,i); } } Continua... Breno D.L.A. () Padrao MVC L A T E X 22 de março de 2012 8 / 8