That destroys a file, making it 0 bytes. It doesn't touch a file, not at all.
"touch" exists for a reason.
The actual use case touch was designed for was to update the timestamp of a file. This is a huge case for developers, since timestamps are used in dependency resolution of partial compilation. [1]
[1] https://man7.org/linux/man-pages/man1/touch.1.html
NAME touch - change file timestamps DESCRIPTION Update the access and modification times of each FILE to the current time.
That destroys a file, making it 0 bytes. It doesn't touch a file, not at all.