then every user can refer to TABLE_NAME without using the schema prefix. If you
CREATE PUBLIC SYNONYM table_name FOR schema_name.table_name
then the current user (the owner of the synonym) can refer to TABLE_NAME without using the schema prefix. Private synonyms like this are generally preferrable to public synonyms since that allows your application to exist in a database that supports other applications without worrying about conflicting synonym names.
CREATE SYNONYM table_name FOR schema_name.table_name