Objective-C не имеет пространств имен, и многие (например, Руководство по стилю какао CocoaDevCentral) рекомендуют использовать префикс имена ваших классов с инициалами, чтобы избежать столкновения пространств имен.
Цитата из приведенной выше ссылки:
Objective-C не имеет пространств имен, поэтому перед именами классов ставьте инициалы. Это позволяет избежать «коллизии пространств имен», когда два фрагмента кода имеют одно и то же имя, но делают разные вещи.
Полагаю, в этом есть смысл. Но, честно говоря, в контексте относительно небольшого приложения (скажем, игры для iPhone), действительно ли это проблема? Должен ли я действительно переименовать MyViewController в ZPViewController? Если нет, то в какой момент конфликты пространств имен действительно становятся проблемой?