what is template-name.php

I always name them like so: page-name.php; This keeps my page templates nicely together + in some cases this can make your code easier, for example…

<?php // Get the file called loop-page.php
get_template_part( 'loop', 'page' ); ?>

A quick Google revealed also this http://wp.tutsplus.com/tutorials/organizing-and-naming-your-themes-template-files-for-clarity-and-convenience/

Cheers