Modern (SQL) databases provide a multi-level hierarchy of separated contexts.
A database management system (DBMS) can manage multiple databases.
A database can contain multiple schemas.
A schema usually contains multiple tables, views, sequences and other objects.
Most of the time we developers only care about our database and the objects it contains – ignoring schemas and the DBMS.
In PostgreSQL instances this means we are using the default schema – usually called public – without mentioning it anywhere. Neither in the connection string or in any queries.
Ok, and why does all of the above even matter?
Special situations
Sometimes customers or operators require us to use special schemas in certain databases. When we do not have full control over our database deployment and usage we have to adapt to the situation we encounter.
Camel-casing
One thing I really advise against is using upper case names for tables, columns and so on. SQL itself is not case sensitive but many DBMSes differentiate case when it comes to naming. So they require you to use double-quotes to reference mixed-case objects like schemas and tables, e.g. "MyImportantTable". Imho it is far better to use only lower case letters and use snake_case for all names.
Multiple schemas in one database
I do not endorse using multiple names schemas in one database. Most of the time you do not need this level of separation and can simply use multiple databases in the same DBMS with their default schemas. That way you do not have to specify the schema in your queries.
What if you are required to use a non-default schema? At least for PostgreSQL you can modify your login role to change the search path. So you can leave all your queries and maybe other deployments untouched and without some schema name scattered all around your project:
-- instead of specifying schema name like
select * from "MyTargetSchema".my_table;
-- you can alter the search path of your role
alter role my_login set search_path = public,"MyTargetSchema";
-- to only write
select * from my_table;
Wrapping it up
Today’s software systems are quite complex and the problems we are trying to solve with them have their own, ever growing complexity. So when using DBMSes follow common advice like the above to reduce complexity in your solution even if it seems to be mandated.
Sometimes there are easy to follow conventions or configuration options that can reduce your burden as a developer even if you do not have complete control over the relevant parts of the deployment environment.