Я учусь программировать: пора готовиться к Swift 2
В новом выпуске своего блога я на неделю забываю о Python. Конференция WWDC 2015 снова убедила меня — если в какой язык сейчас и надо вкладывать силы, то в Swift.
Swift, новому языку программирования Apple, уже почти год. За это время те, кто успел его опробовать, могли убедиться: обещания Apple не были пустыми словами. Это действительно удобный и мощный язык, который претендует не только на то, чтобы заменить Objective-C в экосистеме Apple, но и посягнуть на всё семейство C в целом — о чём Apple теперь открыто говорит в описании Swift.
Я взялся за Swift в начале этого года, а перед этим осваивал C и Objective-C. Последнее было не обязательным, но полезным для общего развития шагом, позволившим мне освоиться в Xcode (интегрированной среде разработки от Apple), устройстве iOS, а также легче разобраться в Swift, который многое унаследовал у предшественников. Когда этой осенью выйдет финальная версия Xcode 7 и Swift 2, мы сразу займёмся ими в этом блоге — так что если вы хотите основательно подготовиться, сейчас самое время браться за C и Objective-C. Особенно это полезно, если вы намереваетесь сделать программирование не только своим хобби — на Objective-C написано очень много проектов, код которых потребуется поддерживать немало лет.
В чём преимущества Swift для новичков?
По-настоящему опытных программистов на Swift нет до сих пор. Учиться и переучиваться приходится всем без исключения. Если вы займётесь Swift в 2015-м, то спустя сколько угодно лет будете отставать от самых опытных программистов в худшем случае на год. Преимущество опытных кодеров только в том, что Swift заимствует лучшие элементы других языков — тем, кто их знает, легче его освоить.
Это молодой язык. В новых версиях Swift по-прежнему происходят фундаментальные изменения в синтаксисе и типах данных. Язык взрослеет на глазах, и так легче понимать логику перемен — а при желании можно и помочь в его доработке. Конечно, кто-то может назвать это недостатком, учитывая, что проекты, написанные на более старых версиях Swift, не работают на новых — но миграция занимает не так много времени, а синтаксис становится только проще.
Это безопасный язык. В основе Swift — желание оставить как можно меньше уязвимостей и максимально обезопасить код от ошибок. Программист не обязан всё держать в голове и следить за всем. Это необходимо в C-подобных языках, и если раньше это было обоснованным, потому что они работали быстрее других, то Swift догоняет по производительности даже C++ — и ведь чем дальше, тем лучше он будет оптимизирован. Программист, который пишет код на Swift, лишён огромного количества головной боли, связанной с менеджментом памяти и другими вещами.
Легко читаемый синтаксис, вдохновлённый Python и Ruby. За предыдущие выпуски вы уже могли убедиться, как легко читать Python — и Swift в этом с ним схож. Основное отличие в том, что блоки отделяются не отступами, а фигурными скобками — мне так, если честно, привычнее и удобнее.
Это красивый язык. Очень субъективно, конечно, но код на Swift выглядит красиво — чего не скажешь о том же Objective-C с его бесконечными нагромождениями. А главное, что красота и удобство не сказываются на мощности.
Наконец, Apple объявила на WWDC 2015, что до конца года Swift станет языком с открытым исходным кодом. Это значит не только то, что в его доработке Apple будет ещё сильнее опираться на сообщество разработчиков, но и то, что в потенциале он станет воистину мультиплатформенным, а не будет ограничиваться экосистемой Apple. Иначе говоря, если вы разрабатываете приложение на Swift для iOS, то есть перспектива того, что вы сможете перенести его на Android, и вам не нужно будет учить Java, используемый операционной системой Google.
Возможно, у вас возникнет вопрос — а почему бы не взяться за Swift прямо сейчас? Я бы предложил подождать новой версии Xcode и самого языка, которые появятся в начале осени, а оставшееся время посвятить тому, чтобы подготовиться — как вариант, изучить основы C и Objective-C. Я не будут уделять им посты в блоге, потому что не считаю себя достаточным профессионалом, чтобы начать говорить о них всерьёз — но опасаться особо нечего, и ниже я приведу курсы, которые помогут вам с ними разобраться.
В следующий раз мы вернёмся к Python и начнём писать на нём текстовую игру, которая будет называться 40 Floors. Мы не только повторим то, что уже узнали о Python, но и рассмотрим кое-какие новые понятия. Как всегда, пишите комментарии под постом и в социальных сетях — буду рад и любым другим отзывам — особенно от тех, кто опытнее меня. Спасибо, и до следующего раза!
Читайте и смотрите также:
Разработка для iOS с помощью Objective-C на Code School
Разработка для iOS с помощью Objective-C на Treehouse*
* — платные курсы, но есть пробный период
Презентации сотрудников Apple на WWDC 2015
Комментарии
Подписаться