Комментарии 24
Мне лично кажется, что чтобы swift более менее взрослым стал, для него должен появиться открытый компилятор.
Очень похоже на vendor locking. Вот наш девайс, для этого девайса вот наш сертифицированный язык, для этого языка вот наш сертицифированный статик-чека, вот наш сертифицированный… ну и тд. и тп. Открытые решения в наше время имеют больше шансов на успех, посмотрим что получится у Apple.
А много Вы пишете на ObjC вне OSX и IOS? а на C# вне .net (кроме Unity)?
Мне правда интересно, т.к. нет знакомых программистов, чтобы спросить. Просто у меня сложилось впечатление, что хоть для этих языков и доступны компиляторы на других платформах, но используются они в основном на тех, которые их развивают.
Мне правда интересно, т.к. нет знакомых программистов, чтобы спросить. Просто у меня сложилось впечатление, что хоть для этих языков и доступны компиляторы на других платформах, но используются они в основном на тех, которые их развивают.
Микрософт же наверное не просто так .net приоткрывает? Да и до этого же жил себе mono и им даже пользовались.
FYI: itmozg.ru/vacancy/show/123166#.VTdlHM4Vf8s
Это необычно, да.
Ядро платформы — видео-бэкенд — это кластер машин, оснащенных GPU, которые с помощью софта на Objective-C и Lisp’е создают и показывают видео.
Это необычно, да.
Тоже намучился с указателями на функцию с аналогичным нестабильным результатом. Пришлось на просто си писать.
А вообще свифту, самое главное, как вы сказали в конце, не хватает своей собственной стандартной библиотеки, где все будет адаптировано под возможности и концепции именно этого языка.
А вообще свифту, самое главное, как вы сказали в конце, не хватает своей собственной стандартной библиотеки, где все будет адаптировано под возможности и концепции именно этого языка.
У swift и C разные call conventions, так что так лучше не делать. В будующем возможно добавят аналог extern «C».
про call conventions не знал, теперь понятно что указатель на С-функцию работать не должен. но в playground'е же сработало, это непонятно. хотя точно не помню, а код пока нет возможности посмотреть, может в pg я создавал функцию без параметров…
А такой вопрос, накидайте туториалов и уроков по Swift хороших, спасибо :)
На мой взгляд введение в свифт в документации достаточно полно написано. Там, где описания структур, вызовов функция и бриджей к objc, основы языка. Только его проштудировал перед началом работы с ним. Хотя, в целом, документация у apple не очень. Но, минимум половину необходимой информации из неё получить можно. Вторую половину можно извлечь из playground. Я поначалу не оценил эту фишку, но там достаточно удобно: поначалу на практике пробовать способности и ограничения языка, вместо того чтобы искать нужный пункт в документации. Затем тестировать куски кода до 100 строк без необходимости компилировать весь свой проект
Спасибо, просто я так давно ничего не писал, что уже сложно влиться в новый язык таким способом. Нужно все с нуля, как ребенку :)
P.S. Те кто заминусовал меня — конкуренции боитесь? :)
P.S. Те кто заминусовал меня — конкуренции боитесь? :)
выучить синтаксис Swift не так сложно… сложнее вникнуть в написание приложения. Можно в песочнице писать суровейшие алгоритмы, но если вы не знаете структуру написания аппликации — успеха не будет. Мне кажется надо брать туториалы именно по созданию приложений и повторять-повторять-повторять… Потом попробовать написать самому какой-то калькулятор со своим блекджеком.
Спасибо, у меня именно в этом и проблема, последний раз я писал давно и к мобильным никогда не прикасался.
Будет тяжело… надо сначала восстановить в памяти принципы ООП и для начала погружаться в освоение UIKit framework. Или может быть для вас будет более удобный вариант создавать саначал прототипы без логики и понять как работает Xcode. По этой теме есть неплохой курс Design + Code — гугл знает. Там именно по созданию работающих прототипов и как потом их «оживлять»
Название неудачное. Я бы перешел на язык с названием i (ай). Ой! Ай! А стриж — увольте. Я играю за буревестник.
НЛО прилетело и опубликовало эту надпись здесь
С++, С#, Java, php. В основном диссонанс вызывает вызов фукций в виде [object function], это и писать менее удобно, хотя в xcode это достаточно хорошо реализовали. Именованные параметры при вызове функции тоже непривычно. И все вот эти вот директивы с @ в начале тяжело воспринимаются
Мигрировать на 1.2 мне помог автокомплит который помог подобрать новые параметры pattern matching:
или
- func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewFlowLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize! {
+ func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize {
или
- func application(application: UIApplication!, willFinishLaunchingWithOptions launchOptions: NSDictionary!) -> Bool {
+ func application(application: UIApplication, willFinishLaunchingWithOptions launchOptions: [NSObject : AnyObject]?) -> Bool {
Не встретил в статье про несовместимость enum и struct, написанных в obj-c и используемых в swift и наоборот.
Ещё есть проблемы с глобальными переменными, #define.
Ещё есть проблемы с глобальными переменными, #define.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Опыт разработки приложения на Swift, наблюдения и выводы