[Comm] Лучшая IDE для C++

spider =?iso-8859-1?q?spider_=CE=C1_lsi=2Ebas-net=2Eby?=
Ср Июн 8 05:48:04 MSD 2005


Alexey Rusakov пишет:

> spider wrote:
>
>> Vasya Makarov пишет:
>>
>>  
>>
>>> Hi, All!
>>>
>>> Подскажите, кто каким сабжем пользуется, а то что-то я в недоумении. 
>>> KDevelop мне совесть не позволяет юзать, Anjuta так всё и вылится на 
>>> ровном месте. Я уже грешным делом стал на C-Forge поглядывать...
>>>
>>> PS: Emacs не предлагать!
>>>   
>>
>>
>> Многое зависит от того, что Вы ожидаете от IDE, некоторые считают, 
>> что самое необходимое -- это:
>> 1. возможность запускать внешние программы и разбирать их вывод (make 
>> и gcc)
>> 2. обрабатывать ошибки компиляции
>> 3. автодополнение кода основных структур языка
>> 4. навигацию по символам проекта с учетом всех исходников, на которые 
>> есть
>> ссылки #include
>> 5. настраиваемый автостиль
>> 6. свертку (фолдинг) по функциям, блокам и комментариям
>> 7. контекстная помощь по языку  и вызовам
>> 8. автодополнение по библиотечным вызовам
>> 9. запись макросов
>> 10. назначение кнопок на действия с целью минимизации числа нажатий и 
>> возможностью отбора
>> любимых хоткеев у десктопа. 
>
> Этот список соответствует тому, что должен уметь /редактор/ от IDE. 
> Разве что два первых пункта ещё относятся к IDE в целом. Чтобы это 
> была IDE, а не редактор, в ней должны быть средства управления 
> программными проектами.

Управление программными проектами в UNIX/Linux идет от make, а не от 
IDE, поскольку нет пока ни одного
IDE, который подменил бы make. Более-менее приличные IDE опираются на 
make. Следует отметить, что
Slick имеет возможность слепить нормальный makefile, либо работать по 
примеру IDE'ев от IBM и
строить проект т.н. билдером (т.е. генерить скрипт, который запускает 
явно компиляцию для файлов прокекта,
что есть не кошерно).

> Поддержка различных сборок (Debug/Release),

Debug/Release -- отличаются везде только тем, что не используется опция 
-O, и если Вы наструячили доку,
она откомпилится вместе с проектом. Уж не станете же Вы крутить с 
оптимизацией, которая нигде на i386+
нормально не работает за исключением древних 16-разрядных компайлеров в 
режиме x86 (Watcom, TopSpeed --
и все-ту-тя) Тем не менее, там есть этот выбор.

> обязательная интеграция с системой контроля версий (хотя бы CVS),

И интеграция с cvs есть, мало того, для особо усерающихся впереди 
основных паровозов есть интеграция с SubVersioN.
Сам я ручками предпочитаю набирать cvs ci -ci "", поскольку настойчивые 
требования внести комментарии при коммите
разрушают процесс мышления -- начинаешь задумываться, а почему, 
собственно, я их не вношу?

> поиск не вообще по файлам, а по файлам проекта,

Поиск там по чем угодно, в том числе и по файлам проекта имеется уже 15 
лет. Мало у кого есть это вообще (ни у кого
не видал).

> поддержка отладки, чтобы не приходилось прыгать между исходниками и 
> отладчиком;

Отладчик (морда над gdb) там есть, причем очень неплохая, хотя я не 
врубаюсь, чем встроенная морда лучше чужой,
которая запускается той же кнопкой. Функции то у них в пределе 
одинаковы. Кстати, может кто с бимерами дружит,
у них должна быть суперморда к gdb или даже своя поделка (from scratch 
icat debugger) для внутреннего и внешнего
корпоративного употребления на расстоянии -- у них это религия -- 
отладчик и программерский софт должны удаленно
работать принципиально более функционально, чем локально, хотя бы 
потому, что локальные девайсы не интерферируют
с процессом разработки/отладки.
Вообще с легкой руки Borland внедрилась дурацкая схема программирования 
типа редактирование-отладка-в-режиме-интерпертации,
что возможно удобно для студентов, но никем еще не реализовано так, 
чтобы голову на отруб дать, что после такой отладки
релиз будет работать аутентично. Отладка всегда выполняется после 
окончателоьной сборки проекта. Настоятельно рекомендуется

> организацию файлов проекта и список задач запишем в необязательные вещи.
>
> Поэтому я для себя выбрал Eclipse.

Жадные ребята с www.slickedit.com имеют к нему довесок, который 
превращает Затмение в нечто удобное и для C/C++



Файл проекта -- есть там такой -- чтобы знать, чего cvs-ить в текущем 
каталоге по кнопке и из чего лепить шаблон
makefile.

Забыл сказать, ввод русского из коробки не поддерживается -- редактор 
исключительно для пиндосов, хотя позиционируется
как сто лет unicode. Русский показывает, но не вводит. Говорят, шаманить 
надо типа как сто лет назад с кириллицей.
Типа xmodmap ему помогает, однако не понятно как  -- сообщество 
линуксоидов не очень то делится знаниями -- чаще
отправляют читать доку, тем более, что дока вся -- полное говно -- нет 
даже примеров использования всех опций --
и в связи с этим для использования без выполнения в свободное от жизни 
время дохуя экспериментов она совершенно
непригодна -- я три раза прочитал man xmodmap и ни хрена не понял, что и 
кому мне надо сказать, что бы этот гребаный
SlickEdit стал хоть как нибудь реагировать на нажатие после alt_grp.



случае, makefile получается чистым без лишней суеты вокруг диванов и 
идиотской структуры каталогов, которая
идет от не умения прикрутить cvs tag.

)
)быстро



Подробная информация о списке рассылки community