Particularmente, yo prefiero trabajar con el superglobal $_POST, $_GET, etc.. justamente por una de las razones de su existencia: Claridad en el código. O sea, saber de dónde proviene una variable.
Si se trata de scripts antiguos que hay que adaptar al register globals = OFF, tal vez el extract() sea una buena alternativa transitoria.
Pero si son scripts nuevos, sería bueno ir acostumbrándonos a utilizar superglobales.
Repito: Opinión personal.
Saludos