none
Injecao de dependencia e classes concretas RRS feed

  • Pergunta

  • Quando trabalhamos com injecao de dependencia, uma das formas de injecao eh via constructor.
    Considerando a classe abaixo, ainda temos um forte acoplamento nas propriedades Endereco e Artigos.

    public class Empresa
    {
        private int _cod;
        public int Cod
        {
            get { return _cod; }
            set { _cod = value; }
        }
        private Endereco _endereco;
        public Endereco Endereco
        {
            get { return _endereco; }
            set { _endereco = value; }
        }   

        private Artigo _artigo;
        public Artigo Artigo
        {
            get { return _artigo; }
            set { _artigo = value; }
        }
     }



    E quando fazemos uma injecao, teremos que passar Endereco e Artigo no mesmo constructor ? Essa certa essa forma que passei ? E terei que fazer isso para TODAS as classes que possam ser concretas, tendo 1 interface para cada classe ?

                            
     public interface IObjetoEndereco
          {
              ...
          }
     public interface IObjetoArtigo
          {
              ...
          }
    public class Empresa
          {
              private IObjetoEndereco _endereco;
      private IObjetoArtigo _artigo;

              public Empresa(IObjetoEndereco objeto1, IObjetoArtigo objeto2)
              {
                  _endereco = objeto1; 
         _artigo = objeto2;
              }

          }


    segunda-feira, 24 de setembro de 2018 14:16