3 תשובות
"have done" זה present perfect (הווה מושלם).
בדרך כלל משתמשים בזה כדי לבטא הישג.
she has done the cake! - היא (סוף סוף) הכינה את העוגה!

"did" זה past simple (עבר פשוט).
משתמשים בזה כדי לשאול שאלה על פעולה בעבר או לכתוב שלילה בעבר.
did you tell her the truth? - האם סיפרת לה את האמת?
they didn't know about the case. - הם לא ידעו על התיק.

* didn't - did not
בhave done משתמשים כשאין זמן מוגדר מדוייק כמו למשל"i have done the before"
did זה למקרים שבהם יש זמן מוגדר כמו אתמול וכו
הם בזמנים שונים..
have done- present perfect
did-past simple
אנונימית