Oi Rafael, blz?
Quando trabalhamos com views como ListView, que também são conhecidas como AdapterViews, utilizamos essas entidades chamadas de Adapter para poder receber os dados e indicar ao ListView como eles serão apresentados na tela.
Em outras palavras, a ListView serve apenas como uma view capaz de receber outras views e o adapter é o responsável em montar o visual de cada uma das views que o ListView vai receber.
É exatamente por esse motivo que criamos as Views do ListView no adapter.
Se ainda estiver abstrato, recomendo que dê uma olhada nos novos cursos iniciais de Android que foram dividos em 3 partes:
Neles eu falo detalhamente sobre a ListView, AdapterViews e como trabalhamos com os seus adapters.
Se preferir apenas uma leitura rápida, também, temos o post no blog da Alura falando de listas no Android :)