XCode 4.2 ¿Por qué veo @interface tanto en files .h y .m

¿por qué veo @interface dos veces (dentro de files .h y .m en este UIViewController files que he creado. el uno en el .m parece ser como un constructor. ¿verdad?

file .h

@interface BlackTimer : UIViewController @end 

file .m

 @interface ViewController () @end 

generalmente en el file .m usted pone todas las declaraciones para methods privados

es un buen uso escribir la palabra "privado" (o algo similar) así:

 @interface ViewController (private) -(void)myPrivateMethod; @end 

La @interface en el file .m se denomina extensión de class. Aquí hay un buen enlace que lo explica. Espero que esto ayude. Y aquí está la documentation de Apple sobre las extensiones de class.

La @interface ViewController () en el file de implementación (.m) es una categoría anónima. Permite definir ivars, properties y posts implementados por su class sin exponerlos a otros objects que importen su interfaz pública (.h).