http://en.wikipedia.org/wiki/Dependency_injection
2008/8/18 Pedro Belmino <[EMAIL PROTECTED]>:
> ??
>
> Att,
>
> Newton Wagner escreveu:
>
> ???
>
> explica melhor ae! :D
>
> 2008/8/18 Marcus Cavalcanti <[EMAIL PROTECTED]>:
>
>
> Dependendy Injection para fazer load
>
> 2008/8/18 Newton Wagner <[EMAIL PROTECTED]>
>
>
> Pois é Belmino, mas o Code Igniter tem essas limitações, até por que
> ele não foi feito pra trabalhar com Interfaces, devido à
> compatibilidade com PHP 4.
>
> Outra idéia que me ocorreu agora é extender o Loader e criar um método
> loader de interface que dá o require() mas não cria uma instância da
> mesma.
>
>
> 2008/8/18 Pedro Belmino <[EMAIL PROTECTED]>:
>
>
> Estou querendo evitar um require, acho que ele foge da idéia de load do
> codeigniter.
>
> Att,
>
> Newton Wagner escreveu:
>
> O que eu chamei de "Outra solução" ali, na verdade é uma solução pra
> carregar a Model_Interface automaticamente. :).
>
> Dando uma olhada aqui, acho que a criação da library não é uma boa. Eu
> tinha pensado nisso, pois assim vc poderia carregar ela usando o
> Loader, mas uma interface não pode ser instanciada, se não causa um
> Fatal Error no PHP.
>
> Criando uma library, vc pode usar o Loader pra fazer o trabalho sujo,
> mas acredito que ele vai tentar instanciar essa interface, o que
> causaria um Fatal Error no PHP. A solução é criar esse arquivo em
> algum local e dar um require() nele em algum momento.
>
>
> Uma solução elegante, PHP 5, é implementar o __autoload() e botar uma
> lógica pra ele carregar isso automaticamente, algo do tipo:
>
> function __autoload($class_name)
> {
> if (preg_match("/Interface$/", $class_name)) {
> require(APP_DIR."interfaces\".$class_name.".php"); }
> }
>
> Isso ta básico, mas é o caminho.
>
>
> 2008/8/18 Newton Wagner <[EMAIL PROTECTED]>:
>
>
> Você pode usar a declaração de implements e extend ao mesmo tempo, tipo:
>
> class Usuario_Model extends Model implements Model_Interface {
> }
>
> Você pode carregar a interface de diversas formas, mas acho que a
> forma mais coerente, sem mexer no Core do CI, seria criar uma library
> e carregar ela.
>
> Outra solução é criar o "MY_Model" e, no construtor dessa classe, ele
> instanciar esse library da interface.
>
>
> 2008/8/18 Pedro Belmino <[EMAIL PROTECTED]>:
>
>
> A interface extends model?
> As classes que vão implementar a interface vão dar o load da interface
> aonde?
>
> Att,
>
> Newton Wagner escreveu:
>
> Acho que fica mais fácil você dizer logo qual a sua dúvida... a
> resposta pra esse e-mail poderia ser só: "Sim".
>
> Mandae!!! Qual a dúvida? :).
>
>
> 2008/8/18 Pedro Belmino <[EMAIL PROTECTED]>:
>
>
> Olá,
> Alguém já utilizou interface(Orientação a objetos) no codeigniter?
>
> Att,
>
> --
> 'É um orgulho ter você como nosso cliente'
> ____________________________
> Pedro Belmino
> Desenvolvedor
>
> ArgoHost.net
> Hospedagem Web com Facilidade
> http://www.argohost.net
> Suporte Telefônico: (85) 3264 9944 / (11) 4063 4844
> Contato direto: Ramal 107
> E-mail: [EMAIL PROTECTED]
>
>
> _______________________________________________
> Lista mailing list
> [email protected]
> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>
>
>
>
>
>
> --
> 'É um orgulho ter você como nosso cliente'
> ____________________________
> Pedro Belmino
> Desenvolvedor
>
> ArgoHost.net
> Hospedagem Web com Facilidade
> http://www.argohost.net
> Suporte Telefônico: (85) 3264 9944 / (11) 4063 4844
> Contato direto: Ramal 107
> E-mail: [EMAIL PROTECTED]
>
> _______________________________________________
> Lista mailing list
> [email protected]
> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>
>
>
>
> --
> Newton Wagner
>
> skype: newtonwagner
> msn/gtalk: [EMAIL PROTECTED]
>
> http://www.newtonwagner.net/
> - http://www.owshit.com.br/
>
>
>
>
>
> --
> 'É um orgulho ter você como nosso cliente'
> ____________________________
> Pedro Belmino
> Desenvolvedor
>
> ArgoHost.net
> Hospedagem Web com Facilidade
> http://www.argohost.net
> Suporte Telefônico: (85) 3264 9944 / (11) 4063 4844
> Contato direto: Ramal 107
> E-mail: [EMAIL PROTECTED]
>
> _______________________________________________
> Lista mailing list
> [email protected]
> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>
>
>
>
> --
> Newton Wagner
>
> skype: newtonwagner
> msn/gtalk: [EMAIL PROTECTED]
>
> http://www.newtonwagner.net/
> - http://www.owshit.com.br/
>
> _______________________________________________
> Lista mailing list
> [email protected]
> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>
>
> _______________________________________________
> Lista mailing list
> [email protected]
> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>
>
>
>
>
>
> --
> 'É um orgulho ter você como nosso cliente'
> ____________________________
> Pedro Belmino
> Desenvolvedor
>
> ArgoHost.net
> Hospedagem Web com Facilidade
> http://www.argohost.net
> Suporte Telefônico: (85) 3264 9944 / (11) 4063 4844
> Contato direto: Ramal 107
> E-mail: [EMAIL PROTECTED]
>
> _______________________________________________
> Lista mailing list
> [email protected]
> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>
>
--
Newton Wagner
skype: newtonwagner
msn/gtalk: [EMAIL PROTECTED]
http://www.newtonwagner.net/
- http://www.owshit.com.br/
_______________________________________________
Lista mailing list
[email protected]
http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br