Pull to refresh

Comments 68

Давно хотел попробовать, но все смущало отсутствие встроенного IB.

Хотелось бы еще узнать, возникают ли проблемы с миграцией больших проектов со сложной структурой из Xcode в AppCode?
В целом AppCode и Xcode полностью совместимы. Если проект большой, возможно, потребуется увеличить память для IDE.
Но если будут сложности — пишите нам в саппорт, будем разбираться!
Скажите, есть ли у вас в планах переписать AppCode с java на native. Лично меня очень раздражают не нативные приложения в OS X. Есть ли такой запрос от других пользователей или это лишь моя прихоть?
Пока таких планов нет, хотя время от времени такие запросы к нам приходят.
Оно что, не нативным выглядит? Или вы о потреблении RAM AppCode'ом?
Дьявол кроется в деталях. Очень не удобный скрол (без bounce и движение рывками а не плавное — если вы пользуетесь тачпадом это очень раздражает), шрифты по-другому рендерятся, интерфейс в целом не вписывается в OS X, все переходы резкие, без анимации, меню с миллионом разделов, без группировки и иконок (см. xcode и любое другое маковское приложение), обновление не интегрировано с app store и еще тонна мелких отличий.
Не берусь быть истинной в последней инстанции, все это исключительно основано на ощущениях. Но вот почему-то я угадал, что AppCode написан на java, хотя не заглядывал ни в википедию, ни куда-либо еще. То же раздражение вызывает у меня например Photoshop (и другие адобовские продукты).
Но вот почему-то я угадал, что AppCode написан на java

Видимо потому, что большинство IDE от JetBrains построены на одной кодовой базе.
Про идейку и другие продукты JetBrains я тоже никуда не заглядывал. В общем-то я ими и не пользуюсь.
Жестко тормозит, по сравнению с XCode. Возможностей у AppCode конечно больше, рефакторинг и автогенерация кода божественная. Но автокомплит у XCode быстрее, как и практически любой элемент интерфейса.
А у вас какой Mac? Я вот сейчас разницы в производительности не замечаю, даже наоборот, показалось, что автоподстановка быстрее, на Mac mini `11 + SSD.
MBPR 15 inch late-2013. Особенно заметно на темплейтах, у меня одинаковые шаблоны допустим для генерации проперти, соответственно я их набираю одинаково) XCode прекрасно успевает, а в AppCode приходится ждать примерно пол секунды — секунду прежде чем шаблон кода прогрузится.
На 3.0 тоже воспроизводится? Если да, можете снять CPU snapshot: devnet.jetbrains.com/docs/1087 и прислать нам в саппорт? Мы попробуем разобраться.
Да, тоже. Не думаю, что дело в конкретной машине, на работе на хакинтоше то же самое. Снэпшот как-то непросто у вас делается =) Поведение, о котором я говорю, воспроизводится довольно просто. Live templates AppCode против XCode templates.

Конкретно у меня автогенерация проперти повешена на такие сочетания:
www — @property (nonatomic,weak) x * y;
sss — strong
и так далее.

Если быстро набрать три буквы и нажать ентер — аппкод просто игнорирует автокомплит, и оставляет три буквы, не подставляя значения автокомплита.
Да, удалось воспроизвести, правда не всегда случается и надо реально очень быстро успевать нажать Enter, но тем не менее: youtrack.jetbrains.com/issue/OC-9985
Посмотрим, что сможем сделать. Спасибо!
Спасибо =) Справедливости ради надо сказать, что это довольно субъективная вещь, больше половины людей в нашем iOS отделе полностью перешли на AppCode, и не жалуются на такие вещи) Видимо дело привычки.
А кстати у Вас раскрытие шаблонов на дефолтовый Tab или Enter настроено? Если стоит Tab, а используете Enter, то это вообще не очень ожидаемое поведение. И тогда лучше просто перенастроить раскрытие на Enter, чтобы было удобнее. Проблема должна уйти.
Да, действительно) Даже не знал об этой настройке. В настройках апп-кода сам черт ногу сломит)
Согласен. Больше всего раздражают в AppCode две вещи — ненативный интерфейс и в целом топорноватый дизайн (по сравнению с Xcode), а так же тормоза. Если подолгу посидеть в AppCode, то вроде бы привыкаешь, но стоит переключиться в Xcode, и понимаешь — блин, какой он красивый и как быстро работает :).
Как вы себе представляете «переписывание» кроссплатформенного проекта на миллионы (если не десятки) строк кода и 15-летней историей?
Собственно, ещё примеры — kPHP, HipHop, Cython. Думаю, JetBrains проект такого рода может потянуть.
в чём смысл? что это даст?
Скорость работы (т.к. я предполагаю, что в случае с AppCode проблема именно в скорости работы Jav'ы, а не в скилле разработчиков JetBrains).
Вы привели примеры интерпретируемых языков. Там есть что и куда ускорять. В Яве, по большому счету, все что можно, и так реализовано быстро. Скорость любой реализация ограничена моделью памяти и языка.

Вообще в JetBrains пилят «улучшенную Яву» под названием Kotlin. Правда там цель не скорость или нативность UI, а безопасность и компактность.
В Яве, по большому счету, все что можно, и так реализовано быстро. Скорость любой реализация ограничена моделью памяти и языка.


Т.е. вы хотите сказать, что Ява сама по себе тормозная и горбатого могила исправит с ней ничего уже не сделать (для десктопного применения)? :)
Существенно ускорить можно только обновив модель памяти или JVM, например, введя типы-значения. Это прерогатива Оракла, а не JetBrains.
А ещё кстати вот такая штука есть: компилятор джавы в нативный код — www.excelsiorjet.com. В общем, есть варианты)
Это все никак не поможет с проблемами на которые указал FreemindMike.
Ну адоб смог сделать фотошоп в вебе. А фейсбук вначале делал приложение на html5, а теперь на obj-c. Понятно, что это довольно дорого, но это 100% решаемая задача для компании уровня JetBrains. Вопрос в том какому числу пользователей это нужно. Вот я бы например перешел на appcode будь он нативным. Поэтому я и спросил сразу сколько еще таких как я.
Ну вы сравнили приложение соцсети и IDE.
Это кстати да. Я не встречал веб-приложение размером ~ 7,5M строк кода. Ubuntu с UI частью где-то под 10M будет. Кода очень, ОЧЕНЬ много. На проектах такого объёма кодогенерация — это утопия.
Это не выгодно. Все IDE основаны на одной кодовой базе. Исправив баг в одной, легко запулить исправление в другую IDE.
Ну, начинку действительно было бы глупо кидаться и переписывать ради переписывания (она то как раз и так отличная), но разве нельзя отдельно разработать нативный (или хотя бы «более нативный») GUI для всей это начинки?
А чего поиска по Build Settings нет? Столько свойств и опций…
И почему я как в Xcode не могу выбрать чем подписывать, у меня несколько сертификатов… Reveal вот ругается, что они мол конфликтуют.
8(
Про поиск по Build Settings — кликните на произвольную строчку в таблице, чтобы перевести на нее фокус, и начните печатать. AppCode покажет все вхождения.
Про сертификаты — надо в Code Signing Identity написать просто нужное название. Там есть проблема с некорректным отображением: youtrack.jetbrains.com/issue/OC-9536, известная нам. Постараемся поскорее поправить.
Встроенная замена IB работает только в проектах для iOS, или в OS X-проектах тоже?
Нужно будет попробовать, прошлый раз не вышло потому как основной проект не открывало корректно. (Подозреваю потому что смешанный — ARC / не ARC)
Пишите в саппорт, если будут проблемы, постараемся помочь.
Посмотрел, к сожалению неюзабельно
Минусы:
Долго запускается
Не работает с моделями NSManagedObject
Не работают жесты на тачпаде а также некоторые комбинации, например «Cmd+[»
Нет быстрого доступа к документации по клику
Не нашел способа добавлять symbolic breakpoints
Не работают смешанные ARC / не ARC проекты
Отсутствие быстрой фильтрации по маске в Project Browser (Возможно есть, просто не знаю как)
Неудобный просмотр ошибок компиляции (Субъективно)
Тормозааа, кажется в предыдущей версии таких тормозов не было?
Убогий скроллинг
Плюсы:
Удобный и быстрый рефакторинг
Кастомизация горячих клавиш

Через 6 мин! после запуска появилась возможность запустить проект. Через 3 минуты после начала компиляции что-то наконец сдвинулось, посыпались ошибки компиляции.

Проект примерно 10000 файлов, не знаю большой это или нет ((
Первое открытие проекта действительно может занимать значительное время, так как требуется проиндексировать и проанализировать большое количество как исходников проекта, так и хедеров из SDK. Последующие открытия должны проходить быстрее.

«Cmd+[» работает если выбрать в настройках «Xcode» keymap, либо самостоятельно назначить на action «Unindent selection». Некоторые жесты на тачпаде работают (например, zoom in/out), некоторые пока нет, но зато практически всё можно сделать при помощи хоткеев, не отрывая руки от клавиатуры.

Доступ к документации есть по клавише F1 или ctrl+middle click, либо можно назначить как удобно/привычно. Symbolic breakpoints не вошли в этот релиз, но обязательно появятся в одном из следующих обновлений.

Фильтрации по маске в Project Browser действительно нет, вместо этого рекомендую попробовать значительно более функциональные Go to Class/Symbol/File, а Project Browser спрятать и тем самым сэкономить место.

Смешанные ARC/no-ARC проекты определённо работают, если есть какие-то конкретные проблемы, то лучше обратиться в саппорт для более детального разбора.

По поводу остальных проблем (UI, тормоза, Core Data модели): про всё это мы в курсе и продолжаем работать над улучшением. Пользовательская активность в трекере помогает нам приоритизировать задачи, поэтому — добро пожаловать :)
Мда… программа на мак, которая по умолчанию использует ЭТО: «F1 или ctrl+middle click», впечатление что никто из разработчиков не пользуется макбуками?
Почему не работает проект — понятия не имею, но факт остается фактом.

Имхо без решения трабл с тормозами и скроллингом остальное можно просто не смотреть.
F1 и ctrl+middle click приведены в качестве универсальных вариантов работающих во всех keymap'ах. В раскладке «Xcode» это делается так же, как в Xcode: ⌃⌘?..

Для решения проблем с неработающим проектом ещё раз рекомендую обратиться в саппорт. Здесь эту проблему решить точно не получится.
Неработающий в редакторе Cmd+del — это то, что мешало мне перейти на App Code. Разражжало страшно. Теперь буду пробовать и, если получится пересеть полностью, заплачу вам денег и таки пересяду на AppCode. Вообще вы молодцы!
Ребята! Опять фейл обнаружился. :-( AppCode не видит ничего кроме AppIcon и LaunchImage в Image Assets. То есть для этого проекта, где я использую эту фичу Xcode по полной программе, использовать AppCode я не смогу. Как решить проблему?
Пытался несколько раз пересесть на AppCode.
Собственно, выше всё уже написали. Все плюсы этого несомненно замечательного IDE убиваются ненативным интерфейсом и легким ощущением «подторможенности».
Желаю Вам развития!
Я понимаю, что Interface Builder — только первая версия, но я вот так с наскока не понял как работать с ограничителями в Autolayout. Создание не с Ctrl а с Alt странное решение, визуально я их не вижу и нет функции Update Frames и Update Constraints.
Ну а так продолжаю использовать AppCode и XCode совместно.
С Auto Layout и с редактирование contraints там еще и правда много работы. Есть целая пачка реквестов в трекере. Мы продолжаем работать. Надеемся сделать минорный адейт довольно скоро. И шорткаты обязательно поменяем на более привычные. Вот, например, ишью: youtrack.jetbrains.com/issue/OC-8598
Не понял как в UI Designer создавать Constraints. И есть ли у него возможность включить отображение границ элементов управления?
Рефакторинг работает просто божественно, лучше чем родной, намного быстрее и работает в тех случаях, когда встроенный пасует, молодцы разработчики!

Ошибся уровнем ((
Ответила выше, что редактирования ручного для constraints пока нет, но мы над этим работаем.
Такого пока нет, заведите запрос на фичу вот здесь: youtrack.jetbrains.com/issues/OC
Порадуйте, пожалуйста, новостями о C++ IDE, когда ждать?
Мы бы рады, но пока не можем сказать ничего определенного. Как будем готовы к публичному EAP, так сразу и объявим.
Простите, а в дебаггере одному мне кажется, что есть проблемы с автокомплитом?
Приходится нажимать Ctrl+space, а потом еще раз space вместо Enter, очень утомительно
Хм. А можете проблему завести в трекере? Можно скринкаст или какое-то описание добавить с примером. Мы глянем.
я попробую, но не уверен что это 100% баг, т.к. такое поведение наблюдаю на 2 разных машинках, как на 10.8 так и на 10.9
и, к тому же, наблюдал это еще на 2.5.5
Если встретите на 3.0 — пишите ишью, будем разбираться.
Как сделать чтобы .m/.h файлы открывались в одном табе?
В одном табе открыть их нельзя. Вы вероятно имеете в виду split mode? Можно сделать у таба Move right.
неа, в xcode когда я жму ctrl+cmd+down/up я переключаюсь между .h/.m файлами в рамках одного таба. А в appcode открыл 3 файла и завалил табами весь таббар, поэтому его вовсе убрал, очень отвлекает.
Поняла, спасибо. В AppCode это зовется Navigate to Related Symbol. В default раскладке Ctrl+Cmd+Up.
Я знаю про это, я уже понял что нельзя в одной это делать (((
Вообще не очень понятен use case. В целом есть ведь Go to declaration/definition. Они переходят между .m и .h файлами как раз обычно.
Sign up to leave a comment.