The command
ls -a
lists all the "hidden" files that begin with a '.' (dot). All other files and directories are also listed.
This type of file is often created by you, the user, to hold commands that customise how a particular program is to work. These files are usually held together in your home directory.
Every directory has two dot files, '.' and '..' which can be used in a shorthand way to refer to the current directory '.'(dot) and the parent directory of the current directory '..' (dot dot).