Pull to refresh

Comments 41

Обзор на аглицком.
На мой взгляд вы пропустили не менее приятную вещь: доступ к объектам массива/словаря по []:
arr[0]
arr[5]
dict[@"Fuu"] 
// и т.п.

И самое приятное в самом Xcode — это «умный» автокомплит, который предлагает сначала наиболее используемые слова, а не NSStream вместо NSString =)
О! Спасибо! Действительно пропустил. Более того, я это в материалах при просмотре пропустил. И да, про «умный» автокомплит, согласен, поправлю.
Это в какой версии xCode? мой все еще NSStream предлагает
Спасибо) ждем релиз тогда)
Уже DP2, который, вопреки release notes, работает под Lion.
Ну у меня все еще DP1 стоит, значит нужно обновиться.
не нужно — в DP2 что-то мощно сломали в области iOS SDK — часть приложений крешается после компиляции на взлете.
Единственное, что этот умный автокомплит пока подтормаживает ощутимо по сравнению с 4.3. Надеюсь в будущем «ускорят».
Думаю это из-за «inline-доков», но все же это быстрее чем листать до NSString =)
Кстати, такой способ доступа к элементам (через квадратные скобки) можно использовать и для своих классов.
Для этого нужно реализовать методы -objectAtIndexedSubscript: и -setObject:AtIndexedSubscript: для числовых индексов, -objectForKeyedSubscript: и -setObject:forKeyedSubscript: — для индексов-объектов (см. лекцию Modern Objective-C, 28 мин). Поддержка этого, опять таки, на уровне компилятора, т. е. это должно работать и для старых версий ОС.
В перспективе обещается отказ от поддержки C++ и, как следствие, избавление от его компилятора и отладчика.


Откуда взялась эта клевета? Apple создали собственную libc++ и поддерживают уже практически весь С++11.

Указывайте источники, пожалуйста, иначе грош цена такой информации.
Указываю. Видео с WWDC 2012, Developer Tools Kickoff (400), примерно с 44-й минуты.
Возможно я несколько неверно изложил, но слово клевета — явно слишком сильное, не находите?
Ну учитывая что модули ядра (kext'ы) разрабатываются на C++ (хоть и Embedded и урезанном), то новость об отказе от плюсов выглядит как-то странно, что ли.
Только что посмотрел это видео. Речь идет о компиляторе. Они вовсю работают над новым компилятором LLVM и дебагером LLDB, которые уже давно стали дефолтными. Что-то вроде дословного перевода на 45 минуте звучит так «В то время как Xcode 4.4 и 4.5 все еще поддерживают устаревшие LLVM-GCC и DBG, на данный момент они официально не поддерживаются (deprecated) и в следующем году их не будет вообще.»

Вот и все, новый LLVM компилятор точно так же поддерживает C++, как и старый, по крайней мере нигде не утверждается обратное. То что пропало «GCC» в названии, никак не означает отказ от С++, имхо. Так что ваше заявление реально слишком сильное, «несколько неверно изложил» — это слабо сказано :)

Я уже испугался, как же boost со всеми его плюсами.
Думаю подправить нужно статью.
Походу напутал с версиями XCode в коменте, но суть, думаю, понятна.
Да, спасибо. Поправлю с статье :) Коллективный разум рулит!
фраза «полный отказ от устаревших компилятора (LLVM-GCC)» в нынешней версии статьи объявляет LLVM устаревшим, что сильно удивляет. Может, написать не про отказ от устаревших, а про обновление используемых?
Вроде обещали что и в 4.4, которая с Mountain Lion выйдет уже будут все эти новшества.
Исправьте название IDE на Xcode. 1101_debian его правильно пишет, а Вы — нет.
Ох! Да это просто праздник какой-то! Новые литералы — это жесть!
А за автодополнение NSString отдельное спасибо!
Уже известна минимальная версия runtime для OSX/iOS для которой ЭТО будет работать? А то окажется что только для OSX 10.8 / iOS 6 :(
Насколько я понял из видео, должно начать работать уже c выходом Горного Льва.
Да, да, вот и наступил момент когда мой MacBook 2008 года устарел. Mountain Leon на него официально не установится. С другой стороны — железный повод для апгрейда, ведь для работы нужно.
Я вот тоже думаю о новом MacBook Pro Retina, потому что на чем же смотреть в полном разрешении эмулятор нового iPad? Остается жену в этом убедить ;)
Везет вам. Вы не испытываете боль в энном месте, когда работаете на 15" мониторе…
Если вы про литералы, то в видео «Modern Objective-C» говорилось что будет работать на всех версиях iOS. Про OS X не помню, вроде тоже на всех. Типа это компилятор все делает. Нужен только Xcode свежий.
Ну да, это просто синтаксический сахар, очень сладкий сахар.
Рботать будет везде, т.к. при компиляции это все оборачивается в обычные [… array/dictionaryWith...].
На самом деле, рад небольшому количеству привнесенного синтаксического сахара, надеюсь не превратится в доселе известный мне C# к котором шла прямо-таки гонка за языком, что требовалось для чтения чужого кода, нежели от работы на самим приложением.
Интересно пофиксили ли они эту багу:
Couldn't register com.yourcompany.XXX with the bootstrap server. Error: unknown error code.
Это врядли. Баги в области подписки и сертификатов — это святое. :(
Objective-C стал ещё чуточку ближе к прародителю — Smalltalk.
Сравните:

NSArray *myArr = @[@«one», @«two», @«three»];

и

array := #(#one #two #three).
Насчет автоматически синтезируемых @property. Для каждого свойтсва name будет автоматически создана Ivar "_name", при этом Apple наконец сказали, что отказываются от слов, что _ в начале имени переменной зарезервировано ими. При этом они все равно говорят, что в начале имени метода импользовать симвло _ не рекомендуется.
UFO just landed and posted this here
А я бы хотел регулярные выражения из Perl :)
Мдя… в App Store с DP не пускают. 4.3 на Lion, 4.4 на Caugar.
Sign up to leave a comment.

Articles