Долго искал ответ, но так и не нашел нигде. При переходе с песочники Playground в проект Xcode, так и смог понять зачем нужны файлы с расширением *.swift в проекте? Зачем создаются новые файлы типа cocoaTouch, а иногда просто .swift? Почему весь код не пишется в одном файле viewController?
Вопрос по папке проекта в Xcode
это наследники objectiv-c как я понимаю. Все классы от него наследуются. Если вы создаёте новый файл .swift, то там обычно хранят данные. В любом случае все котроллеры и классы - это наследники objectiv-c
Т.е. на obj-c вас не смутило кол-во файлов, а на свифте у вас вдруг возник вопрос почему не один файл…
Димон, ну стыдно не знать этого. Даже блондинка знает. Мммм… смотри, фильм операция «Ы» смотрел? Вот и здесь так же. Чтобы никто не догадался. Все программисты боятся, что их код кто-то стырит, вот и усложняют. Особо граммотные программеры вообще все названия функций кодируют только в понятный им язык и каждую функцию в отдельном файле, чтобы только они могли понять программу и начальникамана не мог их уволить. Так что чем больше файлов, тем круче спец писал код. Есть особо толковые программеры, они на машинном коде пишут, вот эти вообще зверюги, недавно появились такие спецы.
Я спросил серьезно, а вам лишь бы потроллить так как нигде в курсах об этом не говорится. Нашел ответ в книге Swift для детей, файле может быть хоть сколько классов, но лучше писать каждый класс в отдельном файле и называть его соответствующе.
Вам дали правильный ответ, не для детей. Вы спросили почему, вам ответили потому … а в книжке для дете вам ответили, что можно, но не нужно, а почему, потому что сойдете с ума … вот у меня в программе больше 3000 строк кода сейчас … я уже схожу сума, хотя они распиханы по разным файлам … а если в одном?
А дальше началось, потому что как ответить на ваш вопрос “Там я тоже не понимаю, зачем там их 30 штук” … это больше было похоже, что Вы нас троллите)
Потому что минимализм упрощает понимание, и улучшает стабильность как правило. Также старайтесь держать тела методов минимальной длины и максимально распределять функциональность.