'데'는 '-더라'의 의미로, 화자가 직접 경험한 사실을 말할 때 사용하며,
'대'는 '-다고 해'의 의미로, 화자가 다른 사람에게 전해 들은 사실을 전달할 때 사용하며
예를 들어
A: 어제 수학시험이 어려웠대.
B: 그러게, 어제 수학시험이 어렵데.
A는 다른사람에게 들은 내용을 전달한 것이고 B는 자신이 경험해서 어렵다고 말하는 것입니다.
데와 대가 헷갈릴 땐 '더라' 또는 '다고 해'를 대입해보시면 됩니다.
'-ㄴ데'는 감탄조 또는 상대의 의견을 넌지시 물을 때도 사용합니다.
예를 들어
A: 어제 풍경이 참 멋지데.
B: A야, 옷이 참 멋진데.
A는 과거의 자신의 경험을 말하는 것이고 B는 감탄조로 말하는 것입니다.
국립국어원 페이지 입니다.
https://www.korean.go.kr/nkview/news/10/107.htm