During spam attacks, the confirmation speed is very low.
Can't it be done like litecoin where we have to pay extra to send dust transactions.
It is a good method of preventing spam attacks, in my opinion.
Bitcoin is something which evolves over time. If you want your transaction confirmed quickly, you can always send it with a higher fee.

Hmm higher fee.
Yes your point is right, but I will prefer to wait for some extra time for my transactions to confirm than paying extra fee for same transaction.