Pues yo diría que depende xD.
A veces puede ser interesante ponerle extensión .html a un archivo php y decirle a apache que lo parsee con el interprete.
Aunque en los casos normales deben ponerle la extensión a un archivo dependiendo del código que contenga:
- HTML: .html
- Javascript: .js
- CSS: .css
- PHP: .php
- ASP: .asp
- Python: .py
- C: c
- C++: .cpp
- ...