IDEA vs Eclipse

Балуюсь в свободное от работы время джавой. С другом ею балуемся:) Так вот постоянно возникают споры на тему IDE. Мне нравится IDEA, другу — eclipse. На моей машине (8 гб оперативы третьей, правда всего i3 4-го поколения) Gradle + IDEA туго работают, хоть и хип увеличивал. На той же машине эклипс отрабатывает куда быстрее. Так вот собсна вопрос: что лучше, идея или эклипс? :) И что посоветуете с идеей сделать? :)

П.С.: надеюсь мой ТЛ не увидит, что я тут потратил 10 минут времени на создание топика :)

Підписуйтеся на Telegram-канал «DOU #tech», щоб не пропустити нові технічні статті

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Просто оставлю это тут www.youtube.com/...h?v=ZS6t7p2gZW8

Посоветую поставить SSD. Тогда заведется и эклипс и идея и весь остальной зоопарк.

холивару много лет

а разница:
1. Идея кручее потому что давно оперирует AST. А JDT — исходниками. В итоге — часть видов автокомплита — качественно другая.
Навсегда. Ну как — никогда автовывод типов Scala, на уровне спеки ЯП, не заменить никакими примочками к ЯП у которого — типизация явно декларируемая, а автовывод — только для некоторых классов случаев.
2. Идея на Swing. Eclipse — на SWT.
3. Eclipse RCP открыт. пиляют потому много, ну и понятно что — поделий.
3а Идея — платная. и — не зря.
4. Идея избавляет от знания что «под капотом». Кстати, как и Netbeans. Eclipse почему-то — нет. вернее так — почему-то лезть под капот приходится чаще в Eclipse, чем в Идее, и даже чем в Netbeans.
4a для новичков, опытных это и плюс и минус. «Вопрос для собеседования» — расскажите какие утилиты из каталога «.../jre/bin» вы знаете, и какие и как вам очень как-то помогли
4b вы сталкивались что подсистемы используют библиотеку разных версий, которые несовместимы? и как вы ее решили настройками в своей IDE?

1. Eclipse тоже работает с AST. У Eclipse вообще компилятор встроенный, не надо отдельно билдить и JDK тоже не обязательно.
2. Именно поэтому у Idea (и Netbeans) проблемы с рендерингом шрифтов на Linux и Mac (на Маке хотя бы можно JDK6 использовать: который Apple писал).
3. И какое это имеет отношение к JDT?

Eclipse тоже работает с AST. У Eclipse вообще компилятор встроенный,
это НЕ тождественные вещи
3. И какое это имеет отношение к JDT?
к ПЛАГИНАМ, их разнообразию, свежести и — качеству.

речь ведь не о JDT, а об — IDE

Авторитетно заявляю — Eclipse использует AST для расчетов подсказок и многого другого.

Авторитетно заявляю
то есть вы автор?
Eclipse использует AST
вместо вас спросил гугл
November 20, 2006 www.eclipse.org/..._AST/index.html

но по той качественной разнице между работой автокпомлита в Идее и Эклипсе... в 2014ом году, думаю что на практике разница теоретическая :)

Гугл вам нашел то что вы просили. Можно поставить плагин www.eclipse.org/recommenders хз что там внутри, но уже как пару лет нет разницы в автокомплите.

у Idea (и Netbeans) проблемы с рендерингом шрифтов на Linux и Mac
Женя, а как проявляется эта проблема? И какой корень этой проблемы (SWT vs Swing?)? Если можно, то напишите пожалуйста развернутей, или дайте ссылку пожалуйста почитать.

P.S.: Я пишу на Netbeans 7/8 под Linux’ом (Java HotSpot 6+), но проблем не замечала...

Вот один из багрепортов NetBeans: netbeans.org/...g.cgi?id=216655

Проблема в том что Oracle не может сделать рендеринг шрифтов с тем же качеством что и Apple/кто там на Линуксе этим занимается. А возможность использовать родной рендеринг они не предоставляют.

Eclipse использует родные контролы с родным рендерингом.

Странно, Idea 13.1.5, Ubuntu 14.04.1, никаких проблем со шрифтами нет

Побольше бы таких пользователей, у которых все работает...

проблемы с рендерингом шрифтов на Linux и Mac
WHAT?

netbeans.org/...g.cgi?id=216655 — NetBeans
У IntelliJ те же проблемы по той же причине. Всё же подход SWT был умнее.

У меня не совсем Idea — Android Studio. Посмотрел — нету этой проблемы.

Як С++ -програміст який безуспішно намагається перейти на джаву вже більше ніж пів-року я повністю розділяю екпертну думку Ексобара з приводу цих двох IDE — www.youtube.com/...h?v=-FcYiK0chAI

American programmers: — why do you call Eclipse “your bunny”?
(в оригинале было про Visual Studio)

И в оригинале было «your bunny wrote»

странно, что никто не берет во внимание, что IDEA платная, а eclipse нет

..., і тому там вимкнуто все, на чому зазвичай заробляють кошти джава програмісти :)

Настоящему самураю гуй не нужен когда есть консоль

200 баксов во избавление от глюков эклипса на пожизненной основе. При зп сеньора в 3к и стабильной цене на сыр это не больший деньги за такой инструмент.

200 баксов
Размечтался. Уже 499.

А, ну точно. Там же целых две вкладки For companies and organizations и For individual developers. Нас интересует вторая, которая стиот $199. Это именная, персональная лицензия. Даже если бы она стоила $500 имело бы смысл ее приобрести т.к. это основной инструмент разработчика.

На пожизненной только право пользования, грубо говоря, текущей версией — через год право обновления истекает и или плати снова 200 баксов, или сиди на том до чего успел обновиться за год, да, пожизненно.

Не для всех задач нужна платная версия.
А Мегакрутаякантора, пишущая мегакрутойпроект на Java EE может и не пожалеть 500 баков на нужды любимых сотрудников.

EMACS.

ed

А вот при ситуации типа «сменились id разделов, в fstab устарелая ересь, надо вписать нормальное и бутнуться» именно ed и спасал. Это уже позже научились кормить всякие vi-tiny интеллектом вида «не знаем, куда попали, включаем vt100».

Однажды коллега попросил помочь разобраться в коде. На вопросы почему все так медленно работает и где память, он ответил «это ж эклипс» и нажал внизу на статусбаре кнопочку, которая делает быстрее и очищает память. С тех пор когда джуны фигово кодят пугаю их этой штуковиной.
Idea не видел, но уверен, что оно в принципе не может быть хуже.

И что эта кнопка делает, по вашему мнению? Подсказка — она не возвращает память ОС.

System.gc() она делает. Можно тут долго рассуждать о проблемах gc и ненулевых ref count’ерах, но одно её существование говорит о том, что есть серьезная проблема, которую решают самым очевидным и неправильным способом — костылем.

ORLY? Что это у вас за VM, которая полагается на ref counter? Каким образом размер Java Heap сам по себе тормозит систему?

Ну вот, начались копания. Пользователю плевать что и где там тормозит, бибикает и всё ломает. Важен сам факт. Или знание того, когда участок памяти станет недосягаем для gc root, а Java Heap начнёт влиять на перфоманс после того как сожрёт всю оперативу и полезет в своп сильно помогут во время медитации после нажатия кнопки мыши?

Java Heap с настройками по умолчанию уже может съесть всю ОЗУ?

наверное речь о практике «пользователя» — разработчика:
локально
в IDE открыт жирный проект
запущена жирная СУБД
в браузере SPA, в нескольких вкладках разные версии, и для каждой открыто dev окошко

... и тут, запускаю значит я сборку с командной строки мавеном...

Я в свое время запускал на 512мб:
Eclipse + Ant + XDoclet
Weblogic 6.x
Oracle
Outlook
Броузер
Far

Летало :) Потому что до этого 256мб тормозило.

речь была о том, что настройками JVM как и настройками php.ini — размер хипа — ограничивается явно.
в .NET — вроде нет.
ну и обычно в «С/С++» — будет вызывать malloc, если специально не контролируется — до выедания всего и вся.

Обычно настройки JVM меняют в сторону увеличения максимального размера — т.к. по умолчанию она «ест» не больше 1/4 памяти (кажется было еще ограничение в 1Гб). У меня впечатление что синьер из Люксофта считает что Ява ест всю ОЗУ.

О Учитель. Я ничего не смыслю в java. Я лишь однажды видел эту кнопку и предназначение её узнал со слов коллеги. Я понял, что она делает не то, что он сказал, хотя начал подозревать об этом после того как он на неё нажал и не стало сильно лучше. Но молю Вас, скажите, какую кнопку нажать чтобы eclipse перестал тормозить и жрать память? Кроме close разумеется.

Ну не надо ложной скромности. Вы же синьер. Наоборот, меня просветите.

Не знаю, поэтому и спрашиваю. Так же не знаю с какими настройками Java Heap может понять, что ОЗУ закончилось и работа идет в свопе.

Товарищь синьор, а каким образом приложение на С (или любом другом языке) запущенное под десктопной/серверной ОС (Windows/Mac OS X/Ubuntu/Fedora/CentOS/т.д.) может узнать что «ОЗУ» «закончилось»?

Ладно, ни сарказма, ни юмора, ни намёков вы не понимаете. Зато решительно принимаете собеседника за идиота.
Попробую спокойно и без недоговорок:
При работе сотрудник использует несколько различных приложений. Приложения эти используют VM. Для каждого приложения создается отдельный инстанс этого VM, которые естественно о друг друге ничего не знают. Есть ситуация: при определенных обстятельствах каждый инстанс запрашивает некоторе количество памяти. По умолчанию для java этот максимум 1/4 всей доступной памяти или 1 гб о чём вы писали. То есть, если у нас 4 инстанса VM и 4 гб памяти, то теоретически они могут использовать всю доступную память. Если их больше — теория переходит в практику. Почему? Во-первых: VM сама по себе требует память. Во-вторых: память освобождается как правило по триггеру, время и условия срабатывания которого конечно не идеальны как и всё в этом мире. Поэтому имеет место накапливание некого оверхеда использованной памяти, которую разработчики частично решили добавлением «рубильника» для триггера. Если вникнуть в ситуацию, то это слабое, но решение. Но со стороны это выглядит нелепо. А еще есть и другие проблемы, которые аккумулируются и в итоге имеем то, что имеем.

«Принудительный» запуск GC освобождает физическую RAM?
GC, который запускает (если повезет) кнопка освобождает столько же памяти как и GC который запускается самой VM когда память заканчивается?
Сработает ли GC без нажатия кнопки до того как Java VM выделит себе максимальный объем памяти?

Я вижу что мой собеседник уверенно говорит на темы, в которых весьма слабо разбирается. Это мне ничего не говорит об его интеллектуальном уровне, я не считаю что каждый человек должен разбираться в JVM. Хотя, если человек Senior Programmer...

Стоп. Что у вас есть триггером для запуска GC? Таймер что ли?

В таком случае скажите, пожалуйста. Вот есть «стандартный» стиль Java типа «считаем, сколько у данной ОС есть ОЗУ, и берём от неё долю», перекрываемой ключами почему-то, например, не «увеличить долю», а «есть не больше X MB». А есть стиль Lua, в котором момент следующей сборки (до 5.1 включительно) или «граничный» момент усиления активности инкрементального GC (в более поздних) определяется в коэффициенте от предыдущего установленного размера (и, соответственно, нет ситуации типа вот эта крохотуля, у которой данных на 3MB, сначала разъедается до 512, и только тогда начинает собирать). _Почему_ умолчание авторов большинства JVM именно по первому стилю, как будто в этой ОС больше никого нет?

Или я отстал от жизни, и этот 20-летний кошмар наконец начали исправлять?

Всегда могла...

Каким образом размер Java Heap сам по себе тормозит систему?
Ну я понимаю это следующим образом.
Java Heap является неотъемлемой составляющей Java процесса, и если Java Heap заполняется (параметром InitiatingHeapOccupancyPercent определяется предел, с которого запускается GC), то его чистка приводит к останову процесса на какое-то время (Stop-the-World pause), из-за чего могут наблюдаться тормоза во время работы Java процесса. На сколько я понимаю, то все типы GC приводят к паузам, но их характер отличается. Но вот один товарищ пишет (stackoverflow.com/a/18584690), что есть JVM — Zing, на которой нет сборщиков мусора, приводящих к Stop-the-World pause с соответствующим роликом на эту тему от вендора: www.azulsystems.com/zing/pgc

Комментарий от вендора:


Zing is a JVM that is fully compliant with the Java SE 8, 7 or 6 specification. Zing is optimized for Linux server deployments and designed for enterprise applications and workloads that require any combination of large memory, high transaction rates, low latency, consistent response times or high sustained throughput. It is the only JVM that eliminates Java garbage collection pauses for large heap sizes. Zing Trials are free, and conducted at your facility by an Azul engineer.

P.S.: поправьте меня пожалуйста, если я ошибаюсь.

и если Java Heap заполняется (параметром
InitiatingHeapOccupancyPercent
определяется предел, с которого запускается GC), то его чистка приводит к останову процесса на какое-то время (Stop-the-World pause
Есть шанс что здесь речь идет о minor GC, который не делает stop the world.
Есть шанс что здесь речь идет о minor GC, который не делает stop the world.

Ну почему же, делает, по крайней мере я это поняла из следующего ресурса (JVM — hotspot, GC — CMS): www.oracle.com/...ls-1876574.html, а именно это видно по фазам (и их описанию), из которых состоит процесс выполнения GC:


CMS Collection Phases
(1) Initial Mark (Stop the World Event)
(2) Concurrent Marking
(3) Remark (Stop the World Event)
(4) Concurrent Sweep
(5) Resetting

Там написано что это фазы для old generation (major GC), а для young generation написано: MS collector on young generation uses the same algorithm as that of the parallel collector. Я не знаю что они здесь имели в виду под паралельным колектором.

я думаю, что имеется ввиду The Parallel Collector, который также имеет паузы:


Enabling the parallel collector should just make the minor collection pauses shorter.

Но вообще если оно даже делает какие то паузы, с чего ты взяла что они критичны? CMS же так задизайнен что бы паузы были суперкороткими и не вызывали задержек в приложении.

Согласна, что такого рода оптимизация возможно не будет заметна в IDE :), но нужно проверять конкретный случай...

Правильно. Тормозит не размер Java Heap — тормозит сборщик мусора. Т.е. когда памяти мало — сборщик мусора вызывается чаще, может получится trashing если он не сможет освободить достаточно памяти. Увеличение размера Java heap сделает так что сборщик будет вызываться реже (отдельные его вызовы будут дольше обрабатываться, но это часто терпимо).

Одна из интересных особенностей — Hotspot (да и остальные обычно) не отдает сразу память ОС. Т.е. должно пройти несколько циклов GC прежде чем ОС покажет уменьшеный размер образа.

А вот у Люксофтовского синьера все начинает «летать» после отработки GC.

Т.е. должно пройти несколько циклов GC прежде чем ОС покажет уменьшеный размер образа.
Женя, а могли бы Вы пожалуйста объяснить эту строчку, либо дать ссылку на почитать? Я просто не уверена, что Вас правильно поняла.

Заранее благодарна.

ага, круто, спасибо, Женя. Здесь кстати помойму даже лучше написали: It Is Nice To See JVM Shrink Its Heap.

А вот у Люксофтовского синьера все начинает «летать» после отработки GC
Я понял, что она делает не то, что он сказал, хотя начал подозревать об этом после того как он на неё нажал и не стало сильно лучше
ORLY?

Чисто инкрементальные GC, которые работают по принципу — равномерность обеспечивается за счёт того, что на каждую запрошенную юзерским кодом операцию с памятью делается от 1 и больше операций проверки уже существующих объектов — пишутся любым грамотным студентом вполпинка. Но они:
1. На каждый учтённый объект тратят сильно больше памяти (нужны указатели для включения в несколько дополнительных списков).
2. Плохо сочетаются с системой поколений (вот тут уже требуется очень тщательно кодить).
3. Плохо сочетаются с требованием сжать взятую у ОС память. Stop-world имеет в разы больше свободы на перемещение объектов. Если же вести всякие обратные списки (какие ссылки каких объектов указывают на текущий), то начинается аццкій адъ с управлением синхронизации этого всего в многонитевой среде. А так как аккуратная синхронизация это самое сложное для человека (вон в OCI на моей памяти один глюк всплывал в >10 тикетах за двадцать лет и так и не вылечен), то обычно стараются этого избегать.
По сумме описанного, алгоритмически подъёмны для человека и чтобы не убивали машину только те алгоритмы GC, в которых есть меньший, но таки stop-world.

Может, где-то в высоконаучных журналах уже есть решение этого всего, но я пока не видел.

Дурацкий холивар...
Но, справедливости ради, в этом идиотском эклипсе ни разу кроме «хелоу втф» так ничего изготовить не удалось. Все не как у людей.... А постоянные запросы на фрилансе.ком «настройте эклипс за 20 баксов», тоже говорят сами за себя.

Стало быть эклипс отличный тестер прямоты рук.

скорее склонности к садомазо. ))) Я как-то уже подзабыл те времена, когда каждый компилил себе свой собственный gcc и не имею ни малейшего желания возвращаться туда. А во время войны с погаными крыSSиянами, использовать ломанную Идею, вообще крайне патриотично ;)

Зачем ты компилишь ГЦЦ при юзании эклипса?

Нет. Я не хочу заниматься идиотизмом (эклипсом). Мое рабочее время слишком дорого, что бы тратить его так бездарно. А корявые попытки стеба лучше выделять как-то заметно, что бы знать где смеяться. Кто работал, например, в SunOS, знает о чем речь.

Я все еще теряюсь увидеть связь между эклипсом и канпелянием гцц, думается мне ты рассуждаешь о вкусе устриц, которых ты не ел.

Какое четкое проявление эффекта Даннинга — Крюгера :)

Про эклипс тебе сказать таки нечего, Ок.

Не нужно экстраполировать свою незавидную судьбу андроид программиста на остальных пацанов-формошлепов.

IDE должна быть простой в настройке, удобной в интерфейсе и легко модифицируемой под Ваши нужды.
Какая из этих IDE более соответствует данным требованиям — решать Вам. Попробуйте и то, и то. Разберитесь, посмотрите как работается и выбирайте.
Для Java есть еще NetBeans — можете еще ее попробовать для разнообразия.
Какая IDE лучше — это чистый холивар. Лучше та в которой Вам лучше работается.

IDE должна быть простой в настройке, удобной в интерфейсе и легко модифицируемой под Ваши нужды.
Жаль, что такой пока нету.

Когда-то такое мог сказать про Клипсу.
Перейдя на Идею, понял, что она более соответствует этим критериям (для меня).

Повиключай непотрібні плагіни, IDEA рулить!

А чи не краще обговорювати те, як оптимізувати роботу IDEA та Eclipse...
Куди треба заглянути, які налаштування поправити, аби максимально оптимізувати роботу...

Колись і на двоядерних нормально народ програмував, а не те, щоб перебирати покоління i7 процесора))

Я долго сидел на IDEA, потом перешел на Netbeans и счастлив с ним уже лет 5. Много раз пытался привыкнуть к Eclipse, чтоб быть «как все», но безуспешно. Она мне кажется эклектичной неповоротливой кучей малополезных «ништяков», лишенной всякой внутренней логики, а если что-то действительно нужное — хрен найдешь. Сугубо ИМХО, конечно. Как говорится, кому и кобыла — невеста.

А у меня в точности до наоборот было — я начинал в нетбинсе, а потом пришлось перейти в эклипс из-за отсутствия для нетбинса одного нужного тогда плагина. Очень долго плевался и привыкал к странностям эклипса (что есть, то есть). Но теперь он мне как родной и в других IDE (а перепробовал я действительно много) сразу чувствую кучу мелких недостатков и неудобств.

странностям эклипса
Перспекти-и-и-в-ы-ы-ы!
Автокомпилляция!
Куча-вкладок-в-нижней-части-хрен-поймешь-какая-зачем!
Перспекти-и-и-в-ы-ы-ы!
согласен, удобная штука
Автокомпилляция!
Project->uncheck Build Automatically
А вообще тут кто-то только что предлагал в IDEA эту опцию включать, чтоб она билдила скорее ;)
Куча-вкладок-в-нижней-части-хрен-поймешь-какая-зачем!
Drag n drop в помощь. К.О.

Я Нетбинс использовал не долго. Но помню, что столкнулся со следующими неудобствами:
1. Запаздывающий code assist (ты уже строку дописал, а он только расчехлился).
2. Отсутствие сниппетов как в Клипсе (может не нашел?).
3. Отсутствие интеллектуального code assist-а (например в Идее code assist понимает контекст и выводит соответствующие подсказки).

У меня i7 3-го поколения, 8 Гиг озу, ssd винт, что еклипс что идея летает, мой выбор за идея, но это кому что ближе к душе. Не думаю что на твоем і3 должно сильно лагать. Попробуй в идея в настройках найти вкладку компиляция и поставь галочки собирать проект в фоне, будет значительно быстрее работать.

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

IDEA туго работают
P.S. Ну вот, например, Вы пробовали как работает Intellij Idea, если отключить неиспользуемые плагины?

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

IDEA туго работают
P.S. Ну вот, например, Вы пробовали как работает Intellij Idea, если отключить неиспользуемые плагины?

В интЫрнетах внушительная куча статей на тему «оптимизация intellij idea», как собственно и по теме «оптимизация eclipse». Ни одна не дала выхлоп?

Самая крутая оптимизация идеи, что я использовал — энергосберигающий режим.

Для Android имхо пока лучше Eclipse. В идее постоянно различных вещей не хватает, и да — тупит идея в несколько раз сильнее Eclipse, увеличение хипа не помогает.

Тупит? когда это она тупит? Просто при запуске идеи она в фоне начинает индексацию проекта делать, только в этот момент и кажется что она тупит, но потом это только в плюс.

тоже не замечал, чтоб ИДЕЯ тупила (разве что при открытии проекта — индексация). Работал с проектом, где Екслипс вис наглухо спустя 4 часа работы. Идея же никогда не зависала и шустрее работала.

Вы видимо мало работали в разработке под андроид с multi flavor билдами, которые в общем-то сейчас очень актуальны(реклама/про/дебаг/релиз варианты). Гугл посмотрел на эклипс, понял, что для того чтобы это сделать нужно переписать эклипс с нуля и перешел на гибкую идею в связке с градлом. А если вы подключите исходники андроид сдк к проекту то тут эклипс будет тормозить даже на топовых тачках.

Именно с такими и работаю, идея тупит (по сравнению с Эклипсом) при каждом билде и при индексации. И не надо путать работу IDE с работой билд тулзовин — градл элементарно подключается к Эклипсу.

With it’s tight Gradle integration, Android Studio is pioneering how modern IDE’s should integrate with build systems. Gradle enables this kind of deep IDE integration with the Gradle Tooling API, which provides a mechanism for programmatically interacting with Gradle and lies at the heart of this effort on the Gradle side. We continually add to these capabilities in cooperation with the Google Android team
Цитата с gradle.org — билд система не столь параллельна ide как вы думаете.

И с multi flavor работаю, и исходники SDK подключены — не тупит (по крайней мере не более, чем Клипса). Что-то со мной не так? :)

Прикручивать Gradle к идее не проще чем к Eclipse.

Я как бы интимно знаком с поддержкой Gradle в IntelliJ.

Попробуй использовать 13 версию идеи, возможно ты использовал идею времен мамонтов

Я 13й и проблем с Gradle и даже SBТ нету. Я что-то не так делаю?

Рад за вас. Если бы еще багтрекер был согласен...

они обещают.
в смысле градловцы, что будет API, для контроля и управления ходом процесса
«Какого ни у кого раньше не было!»
но пока... как и раньше :)

Eclipse ровно так же мог бы этими API воспользоваться.

Ну про исходники то такое, я когда то пытался aosp заимпортить в идею, очень много часов индексации выдала она мне. Но это было давно, может что-то они и пофиксили.

Для Android имхо пока лучше Eclipse

А что скажете про Android Studio?

Лучшее на сегодня, что есть для Андроида. Хоть и бета.

Это ваше личное мнение. Оно не зря бета.

Бета потому что еще пилят, использую еще с первых превью версий

Лаги есть, но удобно, цобако — все из коробочки + android-снипеты.

Оно не зря бета
Да. Но лучше с ней, чем без нее

Для Андроида нормальной альтернативы Android Studio нет.
Эклипс — вообще не вариант. Насколько я знаю, он до сих пор не поддерживает градл.
А если ещё вспомнить головную боль с воркплейсами...
Ну и сколько раз он у меня складывался намертво — вообще не счесть.

Эклипс с плагином ADT на сегодняшний день наиболее полно поддерживаемый и функциональный инструмент для разработки под андроид. Если у вас головная боль с воркспейсами, то возможно вы просто не умеете ими пользоваться.

наиболее полно поддерживаемый и функциональный инструмент для разработки под андроид
Кем?

Никем) На гугл I/O 2014 на вопрос что будет с эклипс была лишь тишина, активно развивается только андроид студио, за год в ADT практически не было обновлений кроме баг фиксов. Сопротивляться разработчику платформы(андроид) и средств разработки под нее — себе дороже.

oн до сих пор не поддерживает градл
WHAT? gradle.org/...pse_plugin.html

Как оно в 2010? Сейчас Android Studio уделывает эклипс во всем, кроме как в разработке используя NDK

Опять голые утверждения

Ну и чем эклипс лучше андроид студии ?

Тут уже говорили лучшая поддержка NDK, Android-специфичный рефакторинг, скорость. Есть еще куча мелочей. Но вы так и не сказали чем студия для вас лучше? Пока единственный вразумительный ответ был — поддержка градла из коробки — в эклипсе надо отдельно ставить плагин. Это явно не тянет на

Android Studio уделывает эклипс во всем
Android-специфичный рефакторинг,
В студии есть
скорость
Студия в отличие от экслипса не умирает больших проектах, а эклипс же умирает на больших проектах. Когда уже в эклипсе запилят вменяемую поддержку гита? меркуриала?
Студия в отличие от экслипса не умирает больших проектах
Овер 50000 строк кода не считая комментариев и полтора десятка подключенных проектов/либ, включая использующие NDK и все это билдится в один клик — это большой проект? ЧЯДНТ?
Когда уже в эклипсе запилят вменяемую поддержку гита?
Egit — из каробки сейчас идет
меркуриала?
mercurialeclipse

Android Studio пробовали?

тупит идея в несколько раз сильнее
Поотключайте плагины лишние.
Java по-новее установите.
Или же (как вариант, но не факт) поставьте нормальное железо.
постоянно различных вещей не хватает
Сталкивался только с «тугой» поддержкой NDK. Есть что-то еще?
Для Android имхо пока лучше Eclipse
70% разработчиков перешли на Android Studio. Сам когда-то писал на Клипсах. В чем профит?
Поотключайте плагины лишние.
Не помогает
Сталкивался только с «тугой» поддержкой NDK. Есть что-то еще?
Где-то месяц назад вроде пробовал, там небыло андроид специфичного рефакторинга из того что запомнил
70% разработчиков перешли на Android Studio.
откуда цифры?
откуда цифры?
Из личных наблюдений. Надо будет создать опрос.
андроид специфичного рефакторинга
Да был, вроде. Год-потора назад точно. Хотя может я не совсем понимаю что такое «андроид специфичный рефакторинг».
Не помогает
Тут несколько вариантов:
1. У вас Винда.
2. Древний JDK/JRE.
3. Древнее железо.
Я использовал Клипсу 2 года, Идею — 1 год. На разных машинах. Под разными платформами (Linux/MAC) — ни разу не видел, чтоб Идея работала медленнее чем Клипса.
Идея может грузиться дольше, но не более того.

P.S.: Зачем Вам Идея — Андроид Студия же есть?

Аналогично могу предположить, что вы запускали эклипс на дефолтном в линуксе OpenJDK потому он у вас и работал медленнее. У меня Mac дома, на работе винда — на винде эклипс работает еще шустрее, так что мимо.

P.S.: Зачем Вам Идея — Андроид Студия же есть?
Android Studio is a new Android development environment based on IntelliJ IDEA
Проще говоря, это почти одно и тоже. Так же само я никогда не использовал гугловский Eclipse ADT Bundle — не монимаю смысла в паках аля все включено, по этому не уверен — может быть и вы сравниваете идею с этим бандлом, который, возможно, у вас тормозит.
на дефолтном в линуксе OpenJDK
Нет, на Оракловском.
на винде эклипс работает еще шустрее
Если на винде работает что-то шустрее — это... ХЗ.
это почти одно и тоже
Почти. + Android-сниппеты, редактор ресурсов (другой), поддержка Gradle Android Plugin из коробки, nine9-редактор, поддержка multi- и multibuilds из коробки. Может к Идее это все и можно прикрутить, но повозится придется.
вы сравниваете идею с этим бандлом
Нет. С чистой Клипсой (классик или жаба-ее).
Это каких вещей?
Building workspace...

у меня занимает не более минуты. Столько же грузится только сплешскрин Идеи

Бла-бла.. Круче, лучше — такая субьективщина

А вот медленнее она вполне реально.

Не зря такие вопросы на SO закрывают, как неконструктивные.

Балуюсь в свободное от работы время джавой.
Мне нравится IDEA
другу — eclipse

А в чем проблема тогда? Вы — используйте IDEA, друг пусть использует Eclipse.

Больше всего мне не нравится в Eclipse — до тупости неинтеллектуальное удаление неиспользуемых пакетов. Если пакет не был разрешен(зависимости не хватает, etc) — Eclipse его удаляет. Особенно это доставляет удовольствие, когда редактируешь код с зависимостями на автосгенерированный.

В IDEA бесит отсутствие нормального плагина с декомпилятором, который поддерживал бы alignment, т.е. нормальную отладку декомпилируемого кода. В Eclipse Marketplace такой есть.

На проектах с большим количеством модулей Eclipse тупит чуть больше, имхо.

Коментар порушує правила спільноти і видалений модераторами.

«The existence of Eclipse proves, that there is no such thing as God.» © оттуда же.
Смеетесь что-ли? Вот квинтэссенция неудачной поделки от IBM, которую индуссяки довели до полной невменяемости, глючная, тормознутая поибень для сказочных пользователей.

А у меня жалоб на глюки нету, как то так.

(8 гб оперативы третьей, правда всего i3 4-го поколения) Gradle + IDEA
И оно у вас того работает? На рабочей машине похожая конфигурация — все летает.
Может у вас что то с системой?

туго по сравнению с эклипсом. скорость разнится не на порядок, но раза в три быстрее было в эклипсе. сегодня приду, подправлю конфиги как советовали и посмотрю на результат

Не знаю як там справа із самою останньою версією ідеї та плагінів, але деякий час назад з великим грейдл проектом працювати було тупо неможливо. Довелося відкатитись на мавен + ант.

Всего около 50 модулей.
Причем стенделоун грейдл — полет нормальный. А вот если попытаться заимпортить это в идею — тупо зависон на многие часы (и это на норм тачке).

Ну да. Грейдл нелучшим образом интегрирован с IDEA. Но тормозов в 13 версии не замечал.

Попробуйте как-нибудь еще раз, недавно вышел градл 2.1 и по крайней мере в андроид студио появилась глубокая интеграция с градлом. По крайней мере большие андроид проекты со свистом собираются.

А если куча .so в проекте? То может и до 5 минут билд доходить

Чего в студии пока нет, того нет. Но это пока. Обсуждение то идет в разрезе pure Java. Ждите обновлений.

НЕ раньше чем допилят до релиза СLion

Идея лучше потому, что приучает программиста писать хорошо — data flow анализ очень хорош, а при применении декларативных аннотаций он вообще выходит на новый уровень. Но за это надо платить — анализ кода на лету требует и процессора и быстрого жесткого диска, в комбинации с градлом этот вопрос еще актуальнее. При 4х гигабайтах оперативы в vmoptions идея(андроид студио) чувствуют себя намного комфортнее — поиск по проекту и исходникам всего сдк практически мгновенен. Раньше 4 года сидел на эклипсе, но попробовав идею, понимаю что назад дороги нет — все мои знакомые, которым не лень было попробовать назад в эклипс не вернулись. Минус идеи конечно в их странных понятиях модули/фасеты/артефакты — настройка большого проекта с зависимостями еще та PITA, но градл эту проблему практически решил. А и еще... мерж конфликтов(git/mercurial/etc) по сравнению с эклипсом просто земля и небо.

Модули та фасети дійсно не зовсім зрозумілі, але якщо використати мавен, то торкатися цих налаштуваннь необхідність відпадає.

IntelliJ IDEA — та IDE, в которой мы решаем свои проблемы, а не проблемы разработчиков IDE и не слушаем отговорки: «ребята, это ж опенсорс (через жопу), если не нравится — делайте сами лучше». Насчет хипа, добавьте себе в idea64.exe.vmoptions PermSize, XMS, XMX памяти на уровне эклипсы и она будет работать еще быстрее.

На прошлой работе я приходил, открывал Eclipse и шел пить чай минут на 40 пока магический процесс «building workspace» что-то делал, поставил IDEA и сходный процесс синхронизации стал занимать 1-2 минуты на том же железе и ОС.

Если вы любите сложности, особенно преодолевать их, то ставьте Eclipse, конфигурируйте там плагины, боритесь с ее «особенностями» и глюками, синхронизируйте файлы вручную, мёржите только из-под git bash-а, это сделает из вас стойкого во всех смыслах человека и через 5-10(!) лет вы сможете настраивать Eclipse чтобы она работала быстрее IDEA. Или вообще решите, что это не тру, надо все писать в блокноте и компилировать из командной строки, добавляя classpath вручную.

Или вообще решите, что это не тру, надо все писать в блокноте и компилировать из командной строки, добавляя classpath вручную
Думаю вот это будет переходный период eclim.org :)

Лучше наоборот.

В ноуті замінили HDD на SSD, ексліпс просто літає

В маке IDEA работает раз в десять медленнее, чем на том же маке в виртуалке под минтом.
Это не говоря о том, что по настройкам версия для мака намного более убогая, чем версия под линукс и винду.
Так что не только от железа всё зависит.

«Idea для работы, для учебы — ставь эклипс и мучайся» мне так ответили когда я спрашивал примерно тот же вопрос)

Idea для работы, для учебы — ставь эклипс и мучайся
Довольно ... спорный совет. ИДЕ — это инструмент, если вы не будете пользоваться инструментом, то вам будет сложно им овладеть в полной мере.

Согласен, но также сталкивался с мнением что с Idea программист тупеет т.к. она думает за него(Сам пользуюсь идей, поэтому сразу попрошу в меня камнями не бросать), не говорю что оно верно или нет, просто существует, и для начала нужно что то более хардовое чтобы потом оценить все достоинства Idea©сказал не я — ногами не бить.

Так же сталкивался с мнением, что с Porshe Cayenne водитель тупеет, т.к. он думает за него.

Проехал 70к и не разу не заглядывал под капот, только масло менял и резину, ну где такое видано? Не то что "ласточка"/Lanos, которой в капот смотришь чаще и дольше чем на дорогу.

А я о чем и говорю) Совсем уважаемый забыли о том что там под капотом)

Тогда надо четко себя позиционировать, либо профессионал, который инструментом зарабатывает деньги, либо энтузиаст, для которого тулза — хобби и ему нравится ковыряться и решать проблемы.

«Idea для работы, для учебы — ставь эклипс и мучайся»
Проехал 70к и не разу не заглядывал под капот, только масло менял и резину, ну где такое видано?
А я о чем и говорю) Совсем уважаемый забыли о том что там под капотом)
Не надо путать.
«Заглядывать под капот» — это использовать вим+ант/мавен/другой_консольный_сборщик. К слову, заменив вим на идею, вам будет удобнее (а значит и эффективнее) «заглядывать под капот».
Эклипс — это не про заглядывание под капот, это просто другой «тип» ИДЕ.

Ant, Maven и прочие сборщики это часть инфраструктуры вашего проекта и любая IDE должна помогать в запуске этих средств, а не мешать. «Заглядывать под капот», это когда в Eclipse сыпятся магические ошибки — не собирается war-ник мавеном и всё тут, из консоли мавеном собирается, а хочется же продебажить нормально из-под IDE, не морочась с remote-debug-ом к серваку. Потом оказывается что мавен-плагин криво встал и на него срочно доставить фикс. А если плагинов много и они конфликтуют — то сносить. Лично сталкивался на Juno 4.2.2 как и с проблемой, что XML редактор открывается 5-10 секунд на XML-ках любого размера.

Пожалуйста, пример с Indigo, когда нормально не ставится m2eclipse плагин
stackoverflow.com/...m2eclipse-error Для IDEA подобная ситуация нонсенс.

Контекст: Я пользователь идеи, и с эклипсом у меня очень негативный опыт.
.

Пожалуйста, пример с Indigo, когда нормально не ставится m2eclipse плагин
stackoverflow.com/...m2eclipse-error Для IDEA подобная ситуация нонсенс.
У идеи так же хватает проблем с интеграциями, наиболее често (где-то около 5 раз в год) замечал что-то вроде: Под виндой ант (запускаемый из ИДЕ) не видит переменные окружения; намного реже — ей сносит крышу и пока не грохнешш все кеши и дист, ИДЕ не видит классов из других модулей проекта.
.
UPD
Это к тому что не надо идеализировать инструмент. У того же эклипса кастомные сборки (например для ГВТ) работают вполне вменяемо (ну по крайнек мере пару месяцев :) )
Контекст: Я пользователь идеи, и с эклипсом у меня очень негативный опыт.
 +1. Еще в 12-й версии были проблемы со snapshot-ами, когда у вас в репо лежит something-xxxxx.13.jar , а IDEA пытается добавить something-xxxxx.14.jar и естественно не находит, в 13-й версии пофиксили. Да, в IDEA тоже есть проблемы, но они редки и скорее как исключение, а не как правило.

За 2 года собачка могла и подрости, и вообще этот m2eclipse сомнительной нужности тулзень.

You have a point. Но по проектам скорее на что согласился клиент, или покупай себе сам)

это шутка такая?
у каена за 70к колодки как минимум два раза по кругу должны быть уже в ноль стерты

так это ж правда
интеллектуалы ездят на Приусах или Теслах

IDEA, хотя бы потому что для нее есть в разы адекватней плагин для скалы чем у эклипса. Да и прочие вещи в разы лучше сделаны. И в отличия от эклипса идея не тормозит

Да будет СРАЧ!!!
Как и у любого аспекта серебрянной пулет здесь нет. С моей точки зрения Идея более удобная и более взрослая как IDE, у неё больше разных плюшек. Хотя я работаю в этой среде, соотвественно с её плюшками знаком лучше чем с эклипсовскими. Но и платить за плюшки приходится, Идея любит пожрать. Ещё из её недостатков: платная и у западных заказчиков чаще Eclipse. Так что если планируете работать на Java на западного заказкика и не хотите перенастравать прект под себя (в том случае, если заказчик не познал maven), то лучше учите эклипс.

Вы меня опередили — в чем зашел проект в том и делается :)

Пардон, а вы разве проект не из системы контроля версий берете, а вместо этого копируете между собой eclipse целиком со всеми папками по проекту?

Как пришлют так и берем :)

Иногда даже приходится еще библиотеки сторонних разработчиков искать/выпрашивать чтобы прислали :) Настолько все печально :(

Несколько легше работать в тиме, где все одну и туже иде используют. Впрочем, дело наживное.

Когда начинаются привязки к IDE, версии JDK, версии IDE, конфигурации плагинов IDE это начало конца проекта. Легче всего работать, когда код не зависит от IDE, кроме файлика .gitignore и любую сборку и деплой можно сделать как из консоли, так и из IDE.

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

у grammar nazi кровавые потоки из глаз, читая ваш комментарий :)

Да, автозамена не работает, чертов эклипс!

нормально сделанные проекты не содержат никаких файлов относящихся к IDE а билдятся из командной строки . кому че нравится тот то и ставит и импортирует. а на билд серверах все равно никакой ИДЕ нет , там все из консоли или скрипта собирается.
я про STD Java тут в основном говорю. ибо для специализированных языков и платформ ИДЕ может быть необходима.
например у нас в Ембеддед проектах есть инструмент для дизайна на базе конечных автоматов в виде statechart UML диаграммы , из которых потом генерится код. тулза существует только в виде плагина для Эклипса, и понимает специальное расширение файлов. поэтому в данном случае без эклипса никак

том случае, если заказчик не познал maven
Хоть ant он то должен был познать :) А Ant-project можно даже в NetBeans импортнуть.
Так что — пофиг :)
А Ant-project можно даже в NetBeans импортнуть.
Так что — пофиг :)
Ant как бы не описывает структуру проекта. Ant — это просто билд-скрипты, и в случае сложных проектов будет совсем не пофик.
Ant как бы не описывает структуру проекта
classpath придется править руками — факт.
Мне сейчас сложно представить (хотя в 2010-м такое видел), что сложные проекты собираются без Maven или Gradle.
Но даже если и так, то в случае любой IDE придется помучится с локальной структурой проекта. А где она будет прописана — в .classpath или .iml — не так уж и важно.

А вообще, хороший проект должен собираться из терминала, тогда его легче импортировать в IDE.

Мне сейчас сложно представить (хотя в 2010-м такое видел), что сложные проекты собираются без Maven или Gradle.
Если у вас есть сложный проект на анте, то его как раз проблематично перевести на равен/гредл. Основные проблемы: кастовый билд-флоу, кастовая структура исходников, прочтенные библиотеки.
Но даже если и так, то в случае любой IDE придется помучится с локальной структурой проекта.
От поэтому и сказали что или мавен/гредл из которого ИДЕ все сгенерит, или одна ИДЕ (в эо случае можно расшарить «базовый проект»)
А вообще, хороший проект должен собираться из терминала, тогда его легче импортировать в IDE.
Это не связано между собой. Нормальный антовый проект и собирается из терминала, но это не гарантирует простоту его импорта в ИДЕ (см выше)

Підписатись на коментарі