TObjectType – novo método: procedure InitInstance; virtual; Chamado no construtor, após a criação de todos os objetos internos, então será chamado antes do AfterConstruction, acho que assim temos uma alternativa razoável e pode ser um padrão. Já atualizei as classes do exemplo FirstPersister para refletir esta mudança.
Fiz algumas alterações na classe TObjectQuery, abstraindo ainda mais o acesso a “Fields”, “FieldCount” e a carga do Field recuperado para o Member, desta forma o código específico do mecanismo ficou mais simples, com estas alterações todas as melhoras do DatabaseMechanism foi propagado ao ADOMechanism que tinha muito código especifico. Aproveitei e já fiz testes completos, o ADOMechanism volta ao estado de estável.
Alguns dos problemas desta semana não seriam resolvidos com testes unitários, mas muitos sim. Eu não implementei os testes unitários ainda, por que acho que preciso estudar mais a fundo para fazer a implementação de forma definitiva, se alguém tiver sugestões e mais informações sobre esta área, além é claro do material que já vem com DUnit, por favor me envie.
Durante a semana fizemos foram reportados vários problemas, creio que todos foram resolvidos, se ficou algo pendente por favor me cobrem. Entre os problemas e dúvidas reportados, e que considero todos resolvidos:
Relacionamento 1 x 1
Relacionamento 1 x N
Mapeamento de relacionamentos
LazyLoad
Operações em cascata
Retorno de funções: TObjectListType.AsString e TObjectListType.FindObject
ADOMechanism
TODO + o que ficou para pesquisar
TDataGenerator para Generators de Firebird/Interbase – vou priorizar isto
Problemas com contexto no AfterConstruction
Reimplementar FindObject para aceitar ICriteria como parâmetro – provavelmente para uma próxima versão
Implementar Testes Unitários
MVP – Concluir Views
MVP – propagar estado dos commands para a UI
Sincronismo do banco de dados
Mapeamento de um atributo para StoredProcedure ou SubSelect
Documentação
Manual
Mais exemplos
Obrigado a todas colaborações, sujetões e criticas
Bookmark and Share:
One Comment on “Jazz week – Invalid pointer operation – atualizações – testes unitários”
Minha sugestão referente a testes unitários é que você inicie o quanto antes, pois quanto mais tempo levar, mais dificil vai ser. Se tiver duvidas mais especificas de como fazer, fique a vontade para entrar em contato.
Leave a Reply
Bem vindo!!!
Programação Delphi - OOP, Orientação a Objetos, Design Patterns, OPF - Object Persistent Framework, MVP - Model View Presenter, Banco de dados e Sistemas Operacionais.
"Delphi Programming"
dezembro 2nd, 2006 at 20:21
Minha sugestão referente a testes unitários é que você inicie o quanto antes, pois quanto mais tempo levar, mais dificil vai ser. Se tiver duvidas mais especificas de como fazer, fique a vontade para entrar em contato.