Anotações do Trabalho da Paulyne.

Description

Principais dúvidas, mudanças, visões, entre esses itens no trabalho da paulyne.
Luan Lima
Note by Luan Lima, updated more than 1 year ago
Luan Lima
Created by Luan Lima almost 9 years ago
16
0

Resource summary

Page 1

IconSQLExceptionErra exceçãuos modelos ErroPara próxima tarefa tivemos uma reunião com a equipe responsável por implementar a solução filme, de modo que conversamos com seus representantes afim de verificar possíveis mudanças nas interfaces que iremos oferecer ao seu modulo.Modificamos o nome dos pacotes no projeto do nosso modulo para o padrão utilizado. br."alguma coisa" para br.ufc.vv."alguma coisa".Modificamos as interfaces do DAO e Controle, mais especificamente o método cadastrarPessoa, retiramos o parâmetro filme, a responsabilidade de relacionar filme com a pessoa foi passado para a API do filme. Isso foi discutido e confirmado com a equipe do módulo filme.Para a criação do Stub, criamos a interface IFilme, para conseguir testar o método que precisa passar o filme como parâmetro. Os métodos de DAO que tinha como parametro um Object que se referia a filme foram substituidos por essa interface criada.Fizemos alteração na Interface IPessoaDAO, mais precisamente no método "Public Pessoa buscarPorId(int id)", neste caso foi mudado a passagem de parâmetro de Pessoa pessoa para Int Id, essa alteração refletiu na alteração da classe PessoaDAO.pessoa , foi mudado o tipo do atributo Salário para Double.Verificamos que seriam necessários algumas exceções no DAO, então criamos duas classes para elas, ErroNaConexao e ErroDAO.Utilizamos o JUnit para realizar os testes unitários por questão de simplicidade, isso pq o nosso módulo não necessita de outros, só precisamos de um STUB de filme, pois necessitamos isso no método que busca pessoas de um certo filme passado.Tivemos problema em criar um teste unitário para testar a conexão com o banco, onde a própria JUnit não encontra o teste.observamos que o problema encontrado foi pq os métodos precisam ter "test" na frente, nos ficamos um tempão ociosos tentando descobrir isso.Tivemos uma mudança na relação entre Pessoa-Ator, Pessoa-Diretor, as subclasses foram removidas, isso pq a fim de ficar um controle melhor no DAO, e foi colocado uma variavel "tipo" dentro de Pessoa para que se posso ter ideia de qual tipo ela é(Ator ou Diretor). Logo a classe Pessoa não se torna mais abstrata.Para realizar os testes com o banco, foram utilizadas tabelas candidatas, a primeira formação pensada foi essa primeira a direita, usamos ela até a parte da mudança do das relações entre Pessoa-Ator-Direto, depois foi proposto essa segunda da direita.Depois disso foi criada a classe Controle Concreta, com base na Interface, nela foi verificada os campos passados como parametro, e dessa forma chama os métodos do DAO para realizar as tarefas.A partir dela foi criado a exceção de parametros inválidos, para ser retornada a quem utilizar.------------------------------------------------------------------------//Primeira IntegraçãoUma das primeiras coisas observadas na conversa da integração foi em relação a falta de um método necessário para o módulo filme que não estava implementado por nós, que no caso seria o buscar todas as pessoas cadastradas no banco, para que eles pudessem adicioná-las em um filme qualquer. Por causa da adição desse método foram modificados as interfaces do nosso módulo IPessoaDAO e IControlePessoa, logicamente suas classes concretas também foram.Outra coisa observada foi que o nome dos nossos pacotes estavam fora do padrão, no caso estavam em português, o estabelecido foi em inglês.Pensavamos que o nosso módulo não teria interface gráfica, que isso seria feito pelo módulo filme que nos integra. Mas na hora da integração foi percebido que no módulo filme só tinha sido realizado a interface gráfica para parte do filme em si, então foi necessário para o nosso módulo a criação da interface gráfica para cadastrar, alterar, excluir e visualizar as pessoas cadastradas no banco e um menu para selecionar esses meios. A parte que eles tinham como responsabilidade com relação a nossa era a de adicionar pessoas em um filme especifico e mostrar pessoas de um filme essa ao qual damos o serviço mas apenas por parte do controlador.------------------------Integração:a primeira coisa observada ao fazer a integração foi que os pacotes do modulo filme não está no padrão.depois dos pacotes serem verificados, os modelos começaram a ser copiados, e com isso o Stub filme que usávamos não é mais necessário e foi apagado.A interface IPessoa utilizada por filme tinha menos métodos que o que implementamos, logo foi substituído pelo nosso.No IFilme que tinhamos implementado, o método que retornava o ID para o nosso era do tipo Integer, mas o do Módulo filme era do tipo primitivo, mudamos para o tipo Integer.Os dois grupos haviam feito uma fabrica de conexao para se conectar ao banco de dados mysql, nós utilizamos a que continha constantes para salvar os dados da conexão.A classe FilmeDAO implementava dois constutores com a diferença de que o primeiro passava o host de conexão, e o outro não passava, já que estamos utilizando constantes isso será removido. E a classe adaptada.No mesmo construtor era tratado a exceção SQLException, mas isso é uma tratamento muito especifico, então foi substituido por ErroNaConexao.na classe FilmeControlador as exceções retornadas para os métodos são SQLException, então entra no mesmo problema anterior já citado. Com isso essa exceção será substituida por ErroNaConexao. Lógico que a classe concreta também teve de ser modificada.Foram criadas os pacotes contract para serem adicionadas as interfaces.Na interface IFilmeController do módulo filme, forma adicionados nos métodos getAtoresDoFilme, setAtoresDoFilme, setDiretorDoFilmeas exceções ErroNaConexao, ErroDAO, ErroParametros, porque o Controle do nosso módulo pessoa levanta essas exceções.O módulo filme tinha uma classe PessoaFilmeDAO que era utilizada para substituir a nossa para a realização dos testes.

Show full summary Hide full summary

Similar

10 Study Techniques
PatrickNoonan
Prueba de Aptitud Académica - Lenguaje
Teresa Nadal
Chemistry
Holly Bamford
F211- Module 1 Cells, exchange and transport
eilish.waite
AQA GCSE Physics Unit 2
Gabi Germain
Haemoglobin
Elena Cade
IGCSE Chemistry Revision
sachakoeppen
The structure of the heart
rachel_w
“The knower’s perspective is essential in the pursuit of knowledge.” To what extent do you agree with this statement?
Lucia Rocha Mejia
RadioTelefonia
Adriana Forero
1PR101 2.test - Část 8.
Nikola Truong