Programação voltada a Interface - O que isso quer dizer?

Olá galera do guj.

Tempos atras entrei aqui num forum, e vi dizendo que muita gente programa em java de forma procedural.
e que deviamos programar voltada a interface.
Bem mas o que isso quer dizer?
Pelo que eu sei “interface” em java é tipo uma classe 100% abstract. Se eu for criar as minhas tela e ai?

bem é isso pessoal,

valew

Então se eu entendi o que você quis dizer é o seguinte, o comentário que você viu no forun o rapaz quiz deizer que jara é uma Linguagem Orientada objetos e tem gente usando ela como se fosse uma linguagem se se utiliza de procedimentos não Orientação a objetos ai ele disse apra usar de interface que te obriga a programar de forma orientada a objeto.Ele não quis se referir a interface Grafica.Para interface grafíca você pode utilizar da ferramenta Ide NetBeans que para iniciar é bem mais facil que o Eclipse.Bom acho que é isso qualque coisa me mande e-mail que eu tento te esclarecer mais um puco.Espero que eu tenha ajudo bom estudos.

:lol:

Bom acredito que com o uso de Interfaces ( não gráfica ) vc se força a pensar no modelo de dominio não pensando em um primeiro momento na implementação e sim no design da aplicação, ou seja quais comportamentos os seus objetos deverão ter ao invés de como eles como eles deverão se comportar (implementação), sem falar que quando se utiliza interfaces vc cria em um segundo momento um padrão de implementação que todo objeto deve seguir sempre que implementar a interface criada.

Espero ter ajudado. :slight_smile:

Programação voltada a Interface, está ligada a boas práticas de programação.

Mais precisamente, a regra que diz, que devemos ter baixo acoplamento entre nossas classes.
Minimizar acoplamento, é um dos principios da programação OO.

Mais o que diabos é acoplamento afinal? de forma simplificada:
é o quão forte um classe está conectada, conhece a a implementação ou tem dependência de outra classe.

Por isso, quando utilizamos programação voltada a Interface, juntamente com outras boas práticas, como
single responsability e injeção de dependência, podemos conseguiur baixo acoplamento.

Porque ao invés de utilizar a instancia de uma classe diretamente, expondo assim sua implementação, podemos
injetar sua interface.

por exemplo. injetando a interface ICarro, ao invés, da classe Carro.
Minha classe sabe que tenho um método void andar(), e isso basta.
Não sei como o método andar() é implementado, e pouco me importa, só sei que ele existe.

Qual a vantagem disso tudo?
? Uma classe fracamente acoplada não é afetada (ou pouco afetada) por mudanças em outras classes
? Simples de entender isoladamente
? Facilita o Reuso

1 curtida