Swift vs Objective-C: востребованность на рынке в длительной перспективе
Так, во время пандемии COVID-19 департаменты IT играют ключевую роль в поддержании и сохранении бизнеса, обеспечении удаленной деятельности работников компаний. Вместе с тем, появилась потребность в разработке новых приложений и сервисов в максимально сжатые сроки для более мобильного и, по возможности, бесконтактного оказания услуг.
Глобальная цифровизация обуславливает повышение спроса на специалистов в области IT и вместе с тем, наиболее важными критериями оценки кандидатов на соответствующие позиции остаются наличие релевантного опыта и хорошо развитые hard skills.
На сегодняшний день и выпускники ВУЗ-ов, и опытные специалисты задаются вопросом: на чем лучше «прогать», чтобы иметь возможность быстро найти подходящую работу. Сравнение Swift и Objective-C может помочь сделать выбор.
Это нативные языки программирования для разработки приложений, совместимых с операционными системами Apple iOS и macOS, а также watchOS, tvOS, Ununtu, CentOS, Amazon Linux и Windows.
Оба инструмента в настоящее время используются для разработки приложений, каждый из них имеет свои преимущества и недостатки, однако на сегодняшний день, с точки зрения удобства написания кода и перспектив развития, выделяется явный фаворит по основным характеристикам, изложенным ниже.
Objective-C
Objective-C — это старший из рассматриваемых в данной статье языков, который известен как язык программирования для создания приложений, используемых на устройствах Apple. Своими корнями он уходит в 80-е годы прошлого столетия и является плодом слияния двух языков — C и Smalltalk: позаимствовав объектный синтаксис у Smalltalk, а у C не объектно-ориентированный подход к операциям, ObjC вместил в себя плюсы обоих предшественников.
Еще десять лет назад он мог быть интересен специалистам, которые уже писали надежные и «чистые» приложения на C, но также хотели бы получить дополнительную возможность использовать объекты. Сейчас актуальность этой возможности однозначно ниже, так как существует множество альтернатив с аналогичной опцией.
Плюсы:
• Стабильный и проверенный временем язык;
• Совместимость с C++ и С;
• Поддержка адоннов;
• Динамический набор кода;
• Поддержка старых версий iOS и Mac OS.
Минусы:
• Сложен в изучении;
• Комьюнити постепенно уменьшается;
• Код относительно легко может быть подвергнут обратному инжинирингу;
• Сложный синтаксис.
Swift
Swift был представлен в 2014 году корпорацией Apple как язык программирования для продукции компании. Сейчас технологический гигант активно продвигает данный инструмент и обеспечивает поддержку быстрорастущего сообщества программистов, которые используют Swift для написания программного обеспечения.
В 2016 году на ежегодной конференции WWDC состоялся анонс Swift Playgrounds — интерактивного приложения для iPad, которое ориентировано на обучение как начинающих, так и опытных специалистов. Оно совмещает в себе обучающие материалы, примеры кода и возможность увидеть результат работы кода непосредственно в приложении.
Казалось бы, незначительная вещь, но рынок ее оценил, ведь программа помогает быстро и просто вникнуть в ключевые особенности языка, чтобы начать писать на нем свой собственный код — приложение выполняет роль тренажера. Помимо этого, существует возможность протестировать небольшие фрагменты кода без необходимости компиляции всего кода и создания приложения.
Последняя версия языка — 5.4, была представлена в феврале 2021 года и входит в состав Xcode 12.5.
Плюсы:
• Производительность и безопасность;
• Open Source проект;
• Лаконичный и понятный синтаксис;
• Компактный код;
• Быстрорастущее и развивающееся комьюнити;
• Поддержка динамических библиотек;
• Экономия ресурсов RAM;
• Совместимость с Objective-C в одном проекте.
Минусы:
• Относительно новый язык, из-за чего могут возникнуть проблемы совместимости прошивок;
• Отсутствие поддержки библиотек C++;
• Не очень гладкая работа с Xcode;
• Поддержка iOS только с v.7 и Mac OS с v. 10.9.
Востребованность и положение на рынке
Согласно опросу, проведенному Stackoverflow, работа с ObjC оплачивается выше, за написание кода на нем платят приблизительно 64k$, а средний опыт программирования у опрошенных респондентов составляет 10.3 года.
За работу на Swift программисты могут рассчитывать на 58k$, при среднем опыте программирования около 9 лет.
Разница в оплате связана не только с тем, что работа на старшем брате технически сложнее, но и ввиду меньшего количества людей, которые на нем работают: в части популярности он устарел и уступает более молодому и прогрессивному продукту Apple.
Стоит ли забросить Objective-C и с головой уйти в Swift — скорее всего, нет, но очевидно, что с течением времени количество предложений о работе с использованием ObjC будет уменьшаться. Вместе с тем, при общем снижении потребности в работниках, использующих данный язык, есть вероятность повышения их стоимости ввиду малого числа опытных специалистов на рынке.
Перспективы развития
Основываясь на данных, изложенных выше, Swift продолжит развиваться с высокой скоростью, о чем также ярко свидетельствует политика Apple.
В сообществе программистов идут обсуждения вокруг потенциальной возможности отказа технологического гиганта от поддержки старшего брата — Objective-C. Но в настоящее время это видится маловероятным ввиду многих причин. В частности, огромное количество приложений, которые написаны на нем, приносят доход многим компаниям, включая Apple, так как они размещены на торговой площадке корпорации — AppStore.
Если вы еще не знаете ни один из двух языков, хотите работать с современным инструментом и легко найти работу, то ваш выбор, очевидно, падает на Swift.
Если же вы программируете на Objective-C, и вас волнует вопрос «насколько быстро я смогу найти новую работу», то изучение второго языка явно не будет лишним.
Найти работу или сотрудников в IT сфере за 5 минут? Это возможно с сервисом WannaWork. wannawork.ru