[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "i", "ps": "cndo", "p2": "fizc" } } }, { "id": 4, "label": "240х200_mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "i", "ps": "cndo", "p2": "flbq" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "ezfk" } } }, { "id": 6, "disable": true, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byswn", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "fjog" } } }, { "id": 10, "disable": true, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "disable": true, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "create", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "cndo", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-223677-0", "render_to": "inpage_VI-223677-0-101273134", "adfox_url": "//ads.adfox.ru/228129/getCode?p1=byaeu&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid11=&puid12=&puid13=&puid14=&puid21=&puid22=&puid31=&fmt=1&pr=" } }, { "id": 15, "label": "Плашка на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudv", "p2": "ftjf" } } } ]
{ "author_name": "Дратути)0) ", "author_type": "self", "tags": ["\u043c\u043d\u0435\u043d\u0438\u044f","\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435","apple"], "comments": 30, "likes": 20, "favorites": 6, "is_advertisement": false, "section_name": "blog", "id": "62345", "is_wide": "" }
Дратути)0)
3 369
Блоги

Мнение: Swift не нужен?

Разработчик приложения Underpass Джеф Джонсон поделился своим мнением о будущем языка программирования Swift.

Поделиться

В избранное

В избранном

Читатель TJ выделил основные тезисы из перевода на Хабрахабре.

Логотип Swift

Что отвечает создатель языка

Кто-нибудь знает, действительно ли Apple собирается прекратить поддержку С и С++? Fortran уже не поддерживается, хотя осталось ещё много кода на Fortran, и сравнительно нового, как в MultiNest. Пожалуйста, скажите, что это не так. Не все считают, что «опытные пользователи» — это те, кто просто создаёт полнометражные мультики. Многие из них учёные и инженеры.

Михаэль

Мы не строили планы на что-либо подобное. Swift — это просто новый вариант разработки под платформу. Мы не собираемся прекращать поддержку ни C, ни C++, ни Objective-C. Если вы разрабатываете на одном из этих языков, можете свободно продолжать его использовать.

Крис Латтнер

Дело в том, что в это никто не верит. Крис Латтнер уже давно покинул Apple, и если его утверждение окажется ложным, он не сможет принять критику от лица компании. В целом, разработчики согласились, что Apple в конечном итоге откажется от Objective-C и Swift и станет единственным языком «первого класса» для разработки Cocoa-приложений.

Сообщество разработчиков, вероятно, право. Я согласен, что Objective-C и Swift не могут продолжать сосуществовать неопределённое время. Однако я не так уверен, что будущее за Swift. Что, если это так? Позвольте рассказать, почему Swift и Objective-C не могут мирно сосуществовать.

Новая надежда?

Ни Swift, ни Objective-C почти не используются за пределами платформ Apple. Это может поменяться в будущем, но на данный момент это факт. Так что если вы хотите разрабатывать приложения под платформы Apple, вам нужно изучить какой-либо из них, либо оба. «Какой именно язык изучать?», — довольно трудный вопрос для новичка.

Если брать один язык, то стандартным советом будет Swift. Хотя я не согласен с ним, но признаю, что он стандартен. Умные головы предложат изучать оба языка. Но тут кроется загвоздка. Если нужно осваивать оба специфичных для платформы языка лишь для написания приложений, Apple-платформы теряют свою привлекательность для разработчиков. Swift понравился разработчикам из-за своей «современности» и «привычности», нежели Objective-C.

Swift стал очень популярным. Это вызвало огромный спрос на Swift-ресурсы. В почтовых рассылках, форумах, блогах, Stack Overflow, Твиттере, да везде, — разработчики хотят знать о Swift и обсуждать его. Swift повлиял на техническую книгоиздательскую индустрию. Даже на рынок труда повлиял — многие компании намеренно, или из-за моды на язык, или просто из-за безграмотности, нанимают только Swift-разработчиков.

Многие разработчики под платформы Apple не знают Objective-C. И многие Objective-С-разработчики берутся использовать исключительно Swift. До такой степени, что начинают забывать Objective-C и испытывают трудности, если приходится снова к нему возвращаться. Увлечение Swift и спрос на него среди разработчиков угрожают заглушить Objective-C.

Эти два языка могут сосуществовать «официально» в сознании Apple, но могут ли они сосуществовать неофициально в чьём-либо ещё?

Использует ли Apple этот язык?

Судя по вышеуказанным аргументам, Objective-C обречён. Всё больше разработчиков предпочитают Swift. Однако не всё потеряно, потому что не разработчики управляют платформами Apple. Единственное место, где Swift ещё не доминирует, это, как бы иронично ни звучало, сама Apple. Компания очень медленно осваивает Swift. К настоящему времени Apple внедрили удивительно мало Swift-кода. Было предложено несколько объяснений, хотя многие могут называть это оправданиями.

Например, фреймворки Apple не могут использовать Swift, потому что он ещё не достиг ABI-стабильности (или даже source-стабильности, если уж на то пошло). Каким бы ни было объяснение, факт остаётся фактом: внутренняя кодовая база Swift у Apple относительно крошечная, в то время как база Objective-C, скорее всего, самая большая в мире.

  • Apple действительно намеревалась поддерживать оба языка неопределённое время.
  • Apple планировала в конце концов отказаться от Objective-C и перейти на Swift, во что и верят разработчики.
  • У Apple не было конкретного плана, да и вообще в компании не были уверены, что Swift выстрелит.

Ожидание — реальность

Это лишь мои подозрения, но мне кажется, что Apple не ожидали, что Swift так быстро станет популярным. Вся эта стратегия имела бы больший смысл, если бы Swift медленно развивался в течение долгих лет. Двойной стек выгоден, если разработчики распределены на два лагеря примерно равномерно.

У Apple и сторонних разработчиков было бы достаточно времени, чтобы переписать существующий код с Objective-C на Swift. Swift может быть нашим будущим, может быть единственным языком для разработки, но это отдалённое будущее.

Как они справляются с неожиданной популярностью Swift за пределами компании, когда внутри нее к нему ещё не готовы?

Я подозреваю, что Apple отступятся от Swift. Как я думаю, отставка Леттнера делает эту возможность ещё более вероятной. Многие разработчики положили все свои ресурсы на Swift. Это могло казаться неплохим вложением в то время, и возможно, оно окупится. Вероятно, это окупится. Но что если нет?

Вдруг произойдёт смена управления, или просто изменятся настроения внутри управления? Что если Apple внезапно решит, что их внутренние ограничения труднее преодолеть, чем они ожидали и смена языка невыгодна? Можете ли вы исключить эту возможность? Боюсь, многие не готовы к настолько жестокому миру. Если это произойдёт, будет много слёз и криков. Но не среди разработчиков Objective-C, которые будут смеяться и веселиться, как будто на дворе 1999. В крайнем случае, 2001.

А что думаете вы? Предлагаю отвлечь разработчиков от написания кода и призвать подискутировать в комментариях.

#мнения #программирование #apple

Статьи по теме
Мнение: Вам больше не нужно покупать антивирусы
Популярные материалы
Показать еще
{ "is_needs_advanced_access": true }

Лучшие комментарии

Дискуссии по теме
доступны только владельцам клубного аккаунта

Купить за 75₽
Авторизоваться

Преимущества
клубного аккаунта

  • отсутствие рекламы
  • возможность писать комментарии и статьи
  • общение с членами клуба
Подробнее

Преимущества
клубного аккаунта

  • отсутствие рекламы
  • возможность читать и писать комментарии
  • общение с членами клуба
  • возможность создавать записи

Сколько это стоит?

Членство в клубе стоит всего 75₽ в месяц. Или даже дешевле при оплате за год.

Что такое клуб?

Клуб ТЖ это сообщество единомышленников. Мы любим читать новости, любим писать статьи, любим общаться друг с другом.

Вступить в клуб

Комментарии Комм.

Популярные

По порядку

0

Прямой эфир

Вы не против подписаться на важные новости от TJ?

Нет, не против