Лайфхакер
Лайфхакер
Лучшее
Рубрики
Рецепты
Подкасты
Сервисы
Колонки
Лучшее
Рубрики
Рецепты
Подкасты
Сервисы
Колонки
Выгодные покупки
Новости
Здоровье
Спорт и фитнес
Покупки
Технологии
Отношения
Кино
Реклама
МакрадарТехнологии
22 июля 2014

Как Swift навсегда изменит мир программирования

Фото автора Лена Ш
Лена Ш

Как Swift навсегда изменит мир программирования

Крис Латтнер полтора года создавал новый язык программирования, и за все это время никому об этом не сказал, даже своим близким друзьям и коллегам. Он начал летом 2010 года, работая по ночам и выходным, и к концу года уже наметил основы нового языка. Именно тогда он рассказал о своем проекте топ-менеджерам компании, которые были настолько впечатлены, что подключили к работе еще нескольких опытных инженеров.

Спустя еще полтора года его проект стал основным направлением компании, в котором было задействовано огромное количество специалистов, работающих бок о бок с Латтнером. Это означало лишь одно, что новый язык программирования вскоре должен изменить компьютерный мир. Латтнер, как вы понимаете, работал на Apple.

Новый язык был назван Swift, и Apple представила его на всеобщее обозрение во время WWDC 2 июня. Спустя 4 года после того, как Латтнер приступил к своему детищу, новый язык шокировал всех, за исключением нескольких осведомленных лиц Apple.

Викрам Адве, преподаватель Иллинойского университета, когда-то помогал Латтнеру создавать основы для одной программы, которая затем легла в основу Swift. Но, как и все остальные, он был невероятно удивлен тем, что его студент столько лет создавал новый язык программирования. «Apple настолько скрытная компания, и, похоже, Крис выпил ее волшебного зелья», — сказал, смеясь, Адве. — «Я знал, что он работает над проектом, который занимает все его время, но это все, что я знал».

Как правило, когда из ниоткуда появляется новый язык, ему требуется несколько лет, чтобы завоевать свою аудиторию. Это утверждение справедливо, даже если речь идет о таком гиганте, как Apple.

Apple_Swift_Logo

В 2009 году Google представила язык Go, разработанный известнейшими инженерами Кеном Томпсоном и Робом Пайком, и он до сих пор не завоевал большую популярность в мире. Но Swift — это иной случай. Он может достичь массового использования в кратчайшие сроки, превосходя по скорости освоения Java и C# в конце 90‑х и начале 2000‑х годов.

Преимущество Swift заключается в том, что он написан для среднего программиста и подойдет для создания самого простого мобильного приложения. А с таким простым инструментом, как Playgrounds, любой разработчик сможет легко изучить этот язык самостоятельно. К тому же, уже сейчас у множества программистов есть ряд причин для использования Swift.

Сегодня сотни тысяч разработчиков пишут приложения для iPhone и iPad, используя Objective‑C. И ввиду огромной популярности данной платформы, они, безусловно, продолжат их писать и дальше. Swift содержит в себе значительные улучшения, по сравнению с Objective‑C, а это значит, что огромное сообщество разработчиков по всему миру начнет изучать новый язык в ближайшие месяцы.

«Не было никакого реального стимула использовать Google Go», — говорит Пол Йансен, который отслеживал использование различных языков программирования при помощи Tiobe Index в течение последних 15 лет. «Разница заключается в том, что у Swift он есть».

Уже сейчас около 2400 проектов, находящихся на GitHub, популярном хостинге для открытых IT-проектов, используют Swift. А в этом месяце новый язык дебютировал под 16 номером в списке самых обсуждаемых языков по версии Tiobe. Да, почти то же самое происходило с Go в 2009 году, но с тех пор данный язык потерял свое влияние. А Swift со временем должен только усилить свои позиции.

«Люди перейдут на новый язык, потому что на нем проще писать код», — говорит Йансен. — «Они должны выбрать либо Objective‑C, либо Swift. И большинство выберет Swift».

DSC_1545-630x354

Крис Латтер курирует инструменты разработчиков Apple, все инструменты, которые используют инженеры Apple и сторонние разработчики, занимающиеся программным обеспечением для персональных компьютеров, ноутбуков, планшетов и смартфонов. Будучи аспирантом Иллинойского университета, под руководством Викрама Адве, он создал систему для разработчиков под названием LLVM, которая сейчас составляет основу Xcode.

После того, как Латтнер присоединился к Apple в 2005 году, компания перешла на LLVM, что повлияло на то, как Objective‑C стал использоваться разработчиками для создания приложений. И спустя 5 лет Латтнер внедрил данную систему в качестве основы Swift.

Он отказался давать интервью для данной статьи без одобрения PR-отдела Apple, но он кратко описал эволюцию Swift на своей странице. Даже не вдаваясь в детали, можно сказать, что Латтнер построил Swift в тандеме с существующими инструментами Apple, чтобы разработчики могли легко использовать новый язык наряду с Objective‑C.

Другими словами, Swift — это не только язык. Он тесно взаимодейстует с другими инструментами, которые позволяют разработчикам создавать свое программное обеспечение. А они включают в себя не только встроенную среду разработки, но и, в том числе, отладчик, который выявляет все погрешности кода. И большинство из этих инструментов знакомы каждому разработчику Apple. В общем, инженеры Apple создали простой переход для десятков тысяч разработчиков, которые пишут программы под iPhone, iPad и Mac.

Так как разработчики никогда раньше не работали с этим языком, у них должны быть веские причины, чтобы перейти от Objective‑C к Swift. «Я первый и единственный на сегодняшний момент человек с опытом работы Swift в течение 4 лет», — написал Латтнер в Twitter.

Для того, чтобы освоить новый язык, нужно время и усердие, что, зачастую, для многих является большой проблемой. Но Латтнер и Apple привели неоспоримые аргументы в пользу Swift. Нельзя сказать, что он намного привлекательнее других языков, таких как C#, Ruby или Python. Но это большой шаг вперед по сравнению с Objective‑C, который корнями уходит в середину 80‑х годов, и который не так легок в использовании.

«Множество людей отказывается от Objective‑C из-за его необычного синтаксиса», — говорит Майк Эш, инженер Apple, который последние 15 лет занимается разработкой разнообразного программного обеспечения компании, — «У Swift более правильный, стандартный синтаксис, который сможет заинтересовать таких людей». «Он сделан для продуктивного программиста, и позволяет ему делать больше вещей за меньшее время».

Как пишет Латтнер на своей странице, Playgrounds позволяет сделать программирование более интерактивным и доступным. «На него сильно повлияла философия дизайнера Брета Виктора и его интерактивная программная система Light Table. Как и в Light Table, он позволяет вам писать код на одной стороне экрана и смотреть на появляющиеся результаты с другой. Другими словами, вы можете прогонять программу во время того, как ее пишите».

http://www.youtube.com/watch?v=G4rDwr03VRQ

Во время WWDC 2014 Латтнер продемонстрировал некоторые возможности Swift и Playgrounds на примере очень простой игры. Инструменты позволяют добавлять новый код без повторной компиляции и перезапуска всей системы. «Когда вы вносите изменения, они внедряются в уже запущенный процесс, в ту версию программы, которая работает в этот момент», — говорит Крис Грейнджер, один из создателей Light Table.

«Я надеюсь, что программирование станет более доступным и веселым занятием», — написал Латтнер. — «Мы обращаемся к новому поколению программистов и помогаем пересмотреть методику преподавания информатики».

Light Table может совершать то же самое, только с различными языками, такими как Python, Clojure и Javascript. Но, по мнению Грейнджера, Playgrounds может быть особенно полезным инструментом, потому что Swift был разработан специально для работы с ним. «Поскольку они создали этот язык и его контролируют, они могут делать те вещи, которые мы не можем производить с другими языками».

Playgrounds еще немного подглючивает, но уже сейчас он может сильно сократить время, необходимое для написания кода. «Мгновенная обратная связь Playgrounds может привлечь огромное количество людей в новую область».

swift-interactive-playground-660x375

Традиционно существовала пропасть между компилированными языками программирования, такими как Objective‑C и C++, и интерпретируемыми языками, такими как Python, Ruby и PHP. Используя первые, вы сначала должны были написать код, а затем ждать, пока ваш компилятор превратит его в некое программное обеспечение. Но после того, как программа будет собрана, она будет работать очень быстро. Интерпретируемые языки позволяют тестировать программу почти мгновенно, но работают медленно. Swift собрал лучшее из этих двух миров. Он дружественен как по отношению к разработчику, так и по отношению к компьютеру.

Apple — не единственная компания, которая изучает новые области программирования. Facebook* пытается создать нечто подобное, разрабатывая языки Hack и D. Google прощупывает данную почву при помощи Go, Mozilla делает то же самое с Rust. Но все эти языки далеки от Swift.

Да, они находятся в свободном доступе, и в теории, они могут быстрее распространиться при помощи различных устройств и сервисов других компаний. Со Swift — совершенно другая ситуация, его программное и аппаратное обеспечение жестко контролируется. И, скорее всего, его нельзя будет использовать для других платформ.

Но даже если он останется исключительно за Apple, он сможет получить огромное влияние и распространение, не сравнимое ни с одним современным языком программирования. И все благодаря столь популярным iPhone, iPad и Mac.

Да, многие другие языки могут проделывать те же вещи, что и Swift, а некоторые даже лучше, а в том же Light Table есть альтернатива Playgrounds. Но все же, Swift уникален своей простотой и интерактивностью и уже сейчас, спустя всего несколько месяцев после своего представления, он интересен многим десяткам тысяч разработчиков по всему миру.

via Wired

*Деятельность Meta Platforms Inc. и принадлежащих ей социальных сетей Facebook и Instagram запрещена на территории РФ.

Если нашли ошибку, выделите текст и нажмите Ctrl + Enter

Лучшие предложения

Распродажа 11.11 на AliExpress: скидки до 90% на всё, что мы любим

Распродажа 11.11 на AliExpress: скидки до 90% на всё, что мы любим

15 idej original'nyh podarkov na Novyj god

15 идей оригинальных подарков на Новый год

Realme 15 Pro

11 лучших скидок на смартфоны с распродажи 11.11 на AliExpress

Настолько хорошие куртки и плащи, что про них пишут в отзывах целые книги

Настолько хорошие куртки и плащи, что про них пишут в отзывах целые книги

Chto podarit' muzhchine na Novyj god: 120 interesnyh idej

Что подарить мужчине на Новый год: 120 интересных идей

Chto komanda Lajfhakera pokupaet na rasprodazhe 11.11

Что команда Лайфхакера покупает на распродаже 11.11

Надо брать: мини-ПК с Intel Core i7 со скидкой 61%

Надо брать: мини-ПК с Intel Core i7 со скидкой 61%

Утеплённые кроссовки от Baasploa, которые не подведут зимой

Утеплённые кроссовки от Baasploa, которые не подведут зимой

Это интересно
7 фактов о детском пюре «ФрутоНяня», которые стоит знать родителям

7 фактов о детском пюре «ФрутоНяня», которые стоит знать родителям

Реклама
Ребёнок в машине: 6 главных ошибок, которые допускают родители

Ребёнок в машине: 6 главных ошибок, которые допускают родители

Как выбрать тренера для ребёнка: 7 признаков классного профессионала 

Как выбрать тренера для ребёнка: 7 признаков классного профессионала 

Как покупать продукты рационально: полезная инструкция

Как покупать продукты рационально: полезная инструкция

Реклама
Комментарии
Nickolay Yurin
22.07.14 22:35
"он сможет получить огромное влияние и распространение, не сравнимое ни с одним современным языком программирования" Ну да, сейчас про objC многие только слышали, а про Swift может и не слышали даже. Swift, как и objC навсегда останется узкоспециализированным языком для устройств от Apple, догнать Java/C#/Ruby/Python ему врятли удастся.
Vasiliy Popov
23.07.14 00:15
Столько пафоса на абзац, что читать невыносимо. Этих языков программирования как грязи, еще один выделяется только тем, что является альтернативой ObjC, еще и название спи-ли.
Stas Leonov
23.07.14 00:53
Какой ужас, что за чушь несет автор? Это писал очередной "аналитик" или человек, реально понимающий предмет статьи?
Stas Leonov
23.07.14 00:55
Ясно, писала женщина, сразу не приметил... Расходимся.
Елена Калинина
23.07.14 00:59
Вы обо мне? Мне кажется, стоило бы обратить внимание на ссылку в конце статьи. Ее написал Cade Metz, редактор Wired. У вас есть к нему вопросы? Вот ссылка на его Twitter: https://twitter.com/CadeMetz
Stas Leonov
23.07.14 01:02
Спасибо, но вопросов как раз и нет.
Александр Журович
23.07.14 01:17
Это веский аргумент в пользу своих претензий, стопудняк.
Stas Leonov
23.07.14 01:37
А чем не аргумент? Вполне себе состоятельный. Правда, оказался неверным, но хоть как-то оправдывал статью.
Александр Журович
23.07.14 01:14
О, и под оригиналом статьи такие же сектанты-эксперты собрались, жаждущие отмщения за поруганную честь любименького {название-языка}, с которым их так много связывает. :) Когда уж тут подумать и обсудить высказанное мнение предметно?
Nickolay Yurin
23.07.14 15:30
Если говорить предметно, то ничего нового по сравнению с другими языками Swift не несет. По сравнению с objC - это действительно большой шаг вперед. Новая система типов по идее должна сократить количество NullPointerException, сам язык добавил синтаксического сахара, но сравнивать его, например, с Go как минимум некорректно, поскольку у них совершенно различные области применения и разрабатывались они совершенно по разному. Swift и objC - языки нишевые, ориентированные на конкретную платформу и вполне конкретные задачи, поэтому такой же популярности, как у Java/Ruby/Python, на которых можно написать почти что угодно, у них не будет.
Александр Журович
23.07.14 15:32
О, другое дело. Спасибо. :)
MrThe Pedomedved
23.07.14 12:42
TL; DR >>Как Swift навсегда изменит мир программирования Никак.
Шерко Дмитрий
07.02.16 10:08
Swift намного приятнее Object C, но лучше бы они взяли синтаксис Javascript или любого другого классического распространенного языка.
Что вы могли пропустить
Samsung Galaxy S27 Ultra может получить уникальную систему распознавания лиц
Samsung Galaxy S27 Ultra может получить уникальную систему распознавания лиц
0
14:50
Новости
Устройства
11 лучших скидок на смартфоны с распродажи 11.11 на AliExpress
11 лучших скидок на смартфоны с распродажи 11.11 на AliExpress
0
13:00
Покупки
Устройства
В WhatsApp появится «экстремальный режим аккаунта» для защиты от мошенников
В WhatsApp появится «экстремальный режим аккаунта» для защиты от мошенников
0
11:10
Новости
Технологии
Складной iPhone станет первым смартфоном с подэкранной камерой на 24 Мп
Складной iPhone станет первым смартфоном с подэкранной камерой на 24 Мп
0
Вчера
Новости
Устройства
iPhone 18 Pro может получить прозрачную заднюю крышку, как у iMac конца 1990-х
iPhone 18 Pro может получить прозрачную заднюю крышку, как у iMac конца 1990-х
0
Вчера
Новости
Устройства
12 смартфонов Xiaomi получат HyperOS 3 на базе прошлогодней Android 15 — список
12 смартфонов Xiaomi получат HyperOS 3 на базе прошлогодней Android 15 — список
0
Вчера
Новости
Устройства
Альтернатива ноутбуку и планшету: представлен карманный ПК OmniOne 5.7 с сенсорным дисплеем
Альтернатива ноутбуку и планшету: представлен карманный ПК OmniOne 5.7 с сенсорным дисплеем
0
Вчера
Новости
Устройства
Moonshot AI представила Kimi K2-Thinking — бесплатную ИИ-модель, которая превосходит GPT-5
Moonshot AI представила Kimi K2-Thinking — бесплатную ИИ-модель, которая превосходит GPT-5
0
Вчера
Новости
Технологии
Black Shark выпустила игровые полноразмерные наушники Fengming S1 — 155 часов на одной зарядке
Black Shark выпустила игровые полноразмерные наушники Fengming S1 — 155 часов на одной зарядке
0
Вчера
Новости
Устройства
ИИ не оправдал ожиданий: компании начали нанимать уволенных сотрудников обратно
ИИ не оправдал ожиданий: компании начали нанимать уволенных сотрудников обратно
0
Вчера
Новости
Технологии
Россиянам будут блокировать мобильный интернет и СМС после роуминга — временно
Россиянам будут блокировать мобильный интернет и СМС после роуминга — временно
0
Вчера
Новости
Технологии
Увлажнитель, мойка и очиститель воздуха: в чём разница и что выбрать
Увлажнитель, мойка и очиститель воздуха: в чём разница и что выбрать
0
Вчера
Как выбрать
Устройства
Объясняем за минуту: можно ли заливать воду из-под крана в увлажнитель воздуха
Объясняем за минуту: можно ли заливать воду из-под крана в увлажнитель воздуха
0
6 ноября
Ликбез
Технологии
Кнопку остановки будильника в iOS 26.1 заменили на слайдер — но её можно вернуть
Кнопку остановки будильника в iOS 26.1 заменили на слайдер — но её можно вернуть
0
6 ноября
iOS
Новости
Samsung раскрыла информацию о линейке Galaxy S26 — они станут «революцией в ИИ»
Samsung раскрыла информацию о линейке Galaxy S26 — они станут «революцией в ИИ»
0
6 ноября
Новости
Устройства

Новые комментарии

Аватар автора комментария
Skufa13 минут назад

0 / 0

Усваиваемость оранжевой чечевицы организмом Оранжевая чечевица усваивается лучше других бобовых (горох, фасоль, нут), но не на 100 % из-за антипитательных веществ. Варка устраняет большинство проблем. 1. Усваиваемость нутриентов - Белок: 85–92 % после варки (один из лучших растительных источников). - Углеводы: 98 % (быстро дают энергию). - Железо: 20–30 % (с витамином C — до 50 %). - Цинк: 40–50 % (фитаты снижают). - Клетчатка: не усваивается, но питает микробиом. 2. Что мешает усвоению - Фитаты — связывают минералы → замачивание + варка. - Лектины — раздражают кишечник → разрушаются при варке 10+ мин. - Олигосахариды — газы → замачивание + специи (тмин, фенхель). 3. Как повысить усвоение - Добавляйте витамин C (лимон, томаты) — железо ↑ в 3–6 раз. - Ешьте с зерновыми (рис, хлеб) — полноценный белок. - Замачивайте 6–8 ч с лимонным соком — фитаты ↓ на 50 %. - Вводите постепенно — избежите вздутия. 4. Кому может быть тяжело - СРК/метеоризм: начинать с 1–2 ст.л., замачивать. - Язва/гастрит: варить до пюре. - Подагра: не чаще 1–2 раз в неделю. - Дети до 1 года: не рекомендуется. 5. Биодоступность (100 г варёной, из 40 г сухой) - Белок: ~10 г. - Железо: 1,0–1,5 мг (с лимоном — до 2 мг). - Клетчатка: 6–7 г. - Фолаты: ~80 мкг. 6. Идеальный способ приготовления 1. Замочить 6–8 ч в тёплой воде + 1 ч.л. лимона → слить. 2. Промыть. 3. Варить 12 мин (1:2,5). 4. За 2 мин: соль + куркума + лимон. 5. Подать с рисом + овощами. → Железо ↑ в 5 раз, белок ↑ до 90 %, газы ↓ на 70 %. Вывод - Общая усваиваемость: 85–95 % после варки. - Лучшая среди бобовых. - Подходит ежедневно: 2–4 порции в неделю. Готовьте с умом — чечевица станет идеальным суперфудом.
Как варить чечевицу разных цветов
Аватар автора комментария
Skufa24 минуты назад

0 / 0

1. Замочить 6–8 ч в тёплой воде + 1 ч.л. лимонного сока → слить 2. Промыть 3. Варить 12 мин в свежей воде (1:2,5) 4. За 2 мин до конца: соль + куркума + сок лимона 5. Подать с рисом/киноа + овощами (помидоры, перец)
Как варить чечевицу разных цветов
Аватар автора комментария
Радик Карамов1 час назад

0 / 0

что бы продать подороже
Распродажа 11.11 на AliExpress: скидки до 90% на всё, что мы любим
Аватар автора комментария
Klava Balaklava2 часа назад

0 / 0

Всем привет. Также удаляла гланды 6.11.25. Сегодня заканчивается второй день после операции(не считая сам день операции) Блин. Это ад. Обезбол можно только раз в день. Антибиотики не прописывали. Ем, только тогда, когда надо выпить таблетки. И то, таблетки дроблю в порошок. Только обезбол помогает как то жить. Я всем сочувствую, кто проходит через это. Это Нифига никак ангина
Как пережить восстановление после удаления миндалин
Задача — дойти до школы самому: как подготовить ребёнка и убедиться, что всё будет в порядке 

Задача — дойти до школы самому: как подготовить ребёнка и убедиться, что всё будет в порядке  

Лайфхакер
Информация
О проектеРубрикиРекламаРедакцияВакансииДля начинающих авторов
Подписка
TelegramВКонтактеTwitterViberYouTubeИнициалRSS
Правила
Пользовательское соглашениеПолитика обработки персональных данныхПравила применения рекомендательных технологийПравила сообществаСогласие на обработку персональных данныхСогласие для рекламных рассылокСогласие для информационной программы
18+Копирование материалов запрещено.
Издание может получать комиссию от покупки товаров, представленных в публикациях