Re[6]: Программирование под линукс
От: Danchik Украина  
Дата: 11.05.11 11:38
Оценка:
Здравствуйте, мыщъх, Вы писали:

М>Здравствуйте, Danchik, Вы писали:


D>>Здравствуйте, мыщъх, Вы писали:


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


D>>То что вы привыкли к чему-то, не значит что это эффективно.


М>разумеется, не значит. но отладчик (независимо от степени его итегрированности) покрывает меньше сценариев, чем логгер + скрипт для обработки результатов логгирования. но даже если использовать отладчик. в чем смысл его итеграции? запуск одной кнопкой? такое даже самый примитивный редактор может. обеспечить. в чем эффективность интеграции? в чем неэффективность использования различных инструментов? как раз ide обычно устроено по принципу дешево и сердито, а по отдельности можно найти намного более мощные инструменты.


Ну самое простое в том же редакторе мышкой навел — вот тебе значение переменных, бряку поставил или бряку с кондишинами — вот тебе быстро помотреть что там творится. Тут же подправил, емли Edit and Continue включено то продолжил дальше дебажить.
Вместо того чтобы долго и нудно доходить до воспроизведения проблемы, можна просто написать юнит тест и запускать его одним шорткатом, дебажить.
Плагинов наставил — SVN, GIT, Mercurial показывают состояние файлов. Например для SVN тут же можна отменить изменения как блока кода так и всего файла.

D>> IDE это уже давно не просто редактор.

М>в чем прелесть интеграции?! почему нельзя отдельно юзать редатор, отдельно ситему контроля версий, отдельно багтреккер... отладчик тоже отдельно. и профайлер отдельно. причем, все это настраивается. к любому нормальному текстовому редактору прикручивается скриптовый парсер разбирающий сообщения компилятора об ошибках и автоматически переводящий курсор на нужное место. для популярных компиляторов скрипты уже есть. в ms vc компилятор не встроенный (как когда-то в турбопаскале). и линкер там ни разу не встронный, а вызывается как внешняя тулза и дальше парсится вывод.

Ведь синтаксический анализ у вас не проводится редактором? Это нужно для последующего рефакторинга и контекстно зависимового интелисенса. Рефакторю каждый день и постоянно. Для меня переименовать метод/класс, переставить местами параметры — постоянный процесс. Также контекстно зависимая навигация — мега жесть (где метод используется (вспомните overloads), где класс инстанциируется, кто наследуется, кто предки, покажи ка мне все методы, классы, интерфейсы и тд.)
Re[7]: Программирование под линукс
От: мыщъх США http://nezumi-lab.org
Дата: 11.05.11 13:24
Оценка:
Здравствуйте, Danchik, Вы писали:

D>Здравствуйте, мыщъх, Вы писали:


D>Ну самое простое в том же редакторе мышкой навел — вот тебе значение переменных,

на это есть qwatch — чтобы не наводить.


D> бряку поставил или бряку с кондишинами — вот тебе быстро помотреть что там творится.

а набор бряков хранить где? особенно если к ним нужно будет вернуться спустя много времени. бряка ставиться и в "блокноте". пишешь что-то типа A1() или A1(условие) и оно работает со всеми отладчиками. (A1 определено как int 03 на x86)

D>Вместо того чтобы долго и нудно доходить до воспроизведения проблемы,

D>можна просто написать юнит тест и запускать его одним шорткатом, дебажить.
еще раз предлагаю отдебажить FSM она же машина состояний, обычно реализуемая в виде бааальшой структуры данных. матрицы или дерева. предлагаю отдебажить, например, видеокодек который иногда образует артефакты. мне интересно чем тут дебаггер поможет?

D>>> IDE это уже давно не просто редактор.

М>>в чем прелесть интеграции?! почему нельзя отдельно юзать редатор, отдельно ситему контроля версий, отдельно багтреккер... отладчик тоже отдельно. и профайлер отдельно. причем, все это настраивается. к любому нормальному текстовому редактору прикручивается скриптовый парсер разбирающий сообщения компилятора об ошибках и автоматически переводящий курсор на нужное место. для популярных компиляторов скрипты уже есть. в ms vc компилятор не встроенный (как когда-то в турбопаскале). и линкер там ни разу не встронный, а вызывается как внешняя тулза и дальше парсится вывод.

D> Ведь синтаксический анализ у вас не проводится редактором? Это нужно для последующего

D> рефакторинга и контекстно зависимового интелисенса. Рефакторю каждый день и постоянно.
1) "каждый день и постоянно" -- жениться вам барин надо;
2) даже простые и легковестные текстовые редакторы имеют скриптовые движки (во всяком случае в никсах), на них пишутся довольно сложные вещи, причем скрипт можно написать на любом языке, а вызывать по хоткею, передав ему только позицию курсора и границы выделенного блока (если есть). но это входит в задачу текстового редактора. и любой нормальный редактор изначально поддерживает полсотни популярных языков.

D> Для меня переименовать метод/класс, переставить местами параметры — постоянный процесс.

D> Также контекстно зависимая навигация — мега жесть (где метод используется (вспомните overloads),
D> где класс инстанциируется, кто наследуется, кто предки, покажи ка мне все методы, классы, интерфейсы и тд.)
...короче си++ порождает столько пробелем, что требует создания новых специализированных инструментов для написания программ.
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Re[3]: Программирование под линукс
От: Ночной Смотрящий Россия  
Дата: 11.05.11 15:03
Оценка:
Здравствуйте, jazzer, Вы писали:

J>Потому что файл проекта — это на самом деле не файл проекта, а файл настройки IDE, чтоб она смогла работать с этим проектом.


Далеко не всегда. В той же современной студии файл проекта это msbuild скрипт. А настройки храняться в отдельном файле.
Re[8]: Программирование под линукс
От: Ночной Смотрящий Россия  
Дата: 11.05.11 15:03
Оценка:
Здравствуйте, мыщъх, Вы писали:

М>2) даже простые и легковестные текстовые редакторы имеют скриптовые движки


Скриптовые движки ... Ты себе представляешь объем задачи? Типичный рефакторинговый тул это сотни тысяч строк кода искодников. Скрипты ...
Re[9]: Программирование под линукс
От: мыщъх США http://nezumi-lab.org
Дата: 11.05.11 17:13
Оценка:
Здравствуйте, Ночной Смотрящий, Вы писали:

НС>Здравствуйте, мыщъх, Вы писали:


М>>2) даже простые и легковестные текстовые редакторы имеют скриптовые движки


НС> Скриптовые движки ... Ты себе представляешь объем задачи?

НС> Типичный рефакторинговый тул это сотни тысяч строк кода искодников. Скрипты ...
"Дочитав инструкцию до конца, я прямо диву дался, как человек исхитряется выжить, да еще в скафандре" (c)
"Но вот передо мной лежит скафандр, который сотни часов служил человеку защитой в космосе" (с)

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

хотелось бы увидеть несколько сценариев рефракторинга, требующих сотен тысяч строк для автоматизации. более того, хотелось бы услышать объяснения зачем нужен такой рефракторинг.
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Re[4]: Программирование под линукс
От: yoriсk.kiev.ua  
Дата: 11.05.11 20:51
Оценка:
Здравствуйте, мыщъх, Вы писали:

D>>Чтобы ошибки на лету подсвечивала,

М>у вас так много ошибок?

Гениальный ответ. Нет, правда, гениалный. Он, пожалуй, в моей коллекции будет соперничать с ответом суровых PHP-шников(Far+colorer, прочее — прах!): "Зачем тебе дебагер? Надо сразу без ошибок писать.".
Re[5]: Программирование под линукс
От: мыщъх США http://nezumi-lab.org
Дата: 11.05.11 21:15
Оценка:
Здравствуйте, yoriсk.kiev.ua, Вы писали:

YKU>Здравствуйте, мыщъх, Вы писали:


D>>>Чтобы ошибки на лету подсвечивала,

М>>у вас так много ошибок?

YKU>Гениальный ответ. Нет, правда, гениалный. Он, пожалуй, в моей коллекции будет соперничать с ответом суровых PHP-шников(Far+colorer, прочее — прах!): "Зачем тебе дебагер? Надо сразу без ошибок писать.".


в far'е я написал проект на 10+ килострок (сейчас уже больше, но лень считать сколько точно) и без проблем открыл его на маке в xcode и продолжил работу не заметив никакой разницы в окружении.

не, а правда, у вас много ошибок? я последние два года работы дают make с командной строки, и вручую в редакторе набираю goto #строки и меня совсем не ломает.

что я не так делаю? объясните. кстати, дебагер тоже не использую.
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Re[4]: Программирование под линукс
От: мыщъх США http://nezumi-lab.org
Дата: 11.05.11 21:24
Оценка:
Здравствуйте, Skorodum, Вы писали:

S>Здравствуйте, Aleх, Вы писали:


S>По хорошему это ортогональные вещи:

S>- Makefile — неотъемлемая составная часть проекта, описывающая зависимости, процесс сборки.
S>- файл проекта IDE — индивидуальные настройки разработчика: что и как открыто. Должен генериться на основе makefile.
а как его генерить? какие файлы открывать? открывать _все_ файлы, которые есть в makefile? так этих файлов тысячи... а если в IDE есть быстрая нафигация по функциям/классам -- тут мало импортировать имена файлов из makefile. эти файлы еще необходимо распарсить. а файлов много...

вот за что люблю командную строку -- видишь перед собой файлы как они есть в FAR'е. открываешь какие тебе нужно. а какие не нужно -- не открываешь.
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Re[10]: Программирование под линукс
От: Ночной Смотрящий Россия  
Дата: 11.05.11 21:37
Оценка:
Здравствуйте, мыщъх, Вы писали:

М>сложность задачи парсинга плюсов я себе хорошо представляю


На парсинг плевать. Это 0.01% от задачи.

М>хотелось бы увидеть несколько сценариев рефракторинга, требующих сотен тысяч строк для автоматизации.


Решарпер + декомпилятор и вперед.

М> более того, хотелось бы услышать объяснения зачем нужен такой рефракторинг.


Пока не попробуешь, не поймешь. И да, плюсы на редкость неподходящий для этого язык.
Re[5]: Программирование под линукс
От: Cyberax Марс  
Дата: 11.05.11 21:37
Оценка:
Здравствуйте, мыщъх, Вы писали:

S>>- файл проекта IDE — индивидуальные настройки разработчика: что и как открыто. Должен генериться на основе makefile.

М>а как его генерить? какие файлы открывать? открывать _все_ файлы, которые есть в makefile? так этих файлов тысячи... а если в IDE есть быстрая нафигация по функциям/классам -- тут мало импортировать имена файлов из makefile. эти файлы еще необходимо распарсить. а файлов много...
Компьютер — он железный и четырёхядерный. Кто мешает ему нормально распарсить код и построить индексы?
Sapienti sat!
Re[6]: Программирование под линукс
От: yoriсk.kiev.ua  
Дата: 11.05.11 22:01
Оценка:
Здравствуйте, мыщъх, Вы писали:

YKU>>Гениальный ответ. Нет, правда, гениалный. Он, пожалуй, в моей коллекции будет соперничать с ответом суровых PHP-шников(Far+colorer, прочее — прах!): "Зачем тебе дебагер? Надо сразу без ошибок писать.".


М>в far'е я написал проект на 10+ килострок (сейчас уже больше, но лень считать сколько точно)


Да вы вообще странный человек... Проститутки в спидозной столице мира без презерватива, в far 10К+ строк...
Мазохизм какой-то. Ну да каждому своё.

М>не, а правда, у вас много ошибок? я последние два года работы дают make с командной строки, и вручую в редакторе набираю goto #строки и меня совсем не ломает.


А номера строк в памяти держите и в уме пересчитываете при каждой набраной строчке. Ну-ну.

М>что я не так делаю? объясните. кстати, дебагер тоже не использую.


Всё так. Просто это называется "стоя в гамаке на лыжах".
Re[7]: Программирование под линукс
От: мыщъх США http://nezumi-lab.org
Дата: 12.05.11 01:10
Оценка:
Здравствуйте, yoriсk.kiev.ua, Вы писали:

М>>в far'е я написал проект на 10+ килострок (сейчас уже больше, но лень считать сколько точно)

YKU>Да вы вообще странный человек... Проститутки в спидозной столице мира без презерватива, в far 10К+ строк...
по вашему IDE сделала бы мою жизнь лучше? быстрее? причем значительная часть этих строк набиралась в асусе еее (нетбук) в стесненых условиях (типа в самолете) где даже far едва вмещается на экран, а IDE выглядят жутко, оставляя для редактировая окошко размером с почтовую марку и очччень долго грузится. мыши нет, тачпад ненавижу. сейчас пересел на мак. на маке совсем другие среды разработки. благо мне не нужно переучиватся, ибо мне ide не нужно. кстати, финальная сборка осуществляется под никсами, под которые, собственно, я и программирую. gcc ругается там, где ms vc молчит на /W4. правлю прямо в никсах в vim, потому как никсы это что-то грузящееся с флешки на том же асухе. эклипса там понятное дело нет.

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

М>>не, а правда, у вас много ошибок? я последние два года работы дают make с командной строки, и вручую в редакторе набираю goto #строки и меня совсем не ломает.

YKU>А номера строк в памяти держите и в уме пересчитываете при каждой набраной строчке. Ну-ну.
вот результат сборки после ночи и целого дня кодинга. куча изменений в разных местах. и вот заветный make.

$make
sc_ll.c
sc_ll.c(1469) : warning C4244: '=' : conversion from 'int ' to 'unsigned char ', possible loss of data
engine.c
GetPC.c
GetPC.c(6122) : warning C4047: 'return' : 'unsigned int ' differs in levels of indirection from 'unsigned char *'
js_engine.c
GetPC_cli.c
filter_FlateDecode.c
filter_FlateDecode_cli.c
engine_cli.c

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

так же можно make > out или far:edit < make и дальше простым макросом выдирать номера строк -- это если уже совсем лениво что-то делать.


М>>что я не так делаю? объясните. кстати, дебагер тоже не использую.

YKU>Всё так. Просто это называется "стоя в гамаке на лыжах".
"мне так удобно" (с). и так быстрее. я уже спрашивал вас -- как мне хранить историю точек останова в системе контроля версий, чтобы при возникновении ошибки было можно быстро вернуться к любой комбинации установленных ранее точек останова с учетом модификации программы. да хотя бы как прокомментировать точку останова со сложными условиями? более того, в 9 из 10 случаев мне не нужно останавливать программу, а нужно логгировать то или это.

так же обращаю ваше внимание, что точка останова ставится прямо в самих исходных текстах и она будет работать даже в релизе, а не только в отладочной версии (если мне это нужно). а вот ваша студия может поставить точку останова в _релизе_ и показать мне там имена переменных и все такое? поделитесь рецептом если да. но даже если да (в чем я сомневаюсь) оно будет работать только под студией. а у меня установленная точка останова в текстовом редакторе отработает и на никсах, и на маке и еще много где.
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Re[6]: Программирование под линукс
От: мыщъх США http://nezumi-lab.org
Дата: 12.05.11 01:22
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>Здравствуйте, мыщъх, Вы писали:


S>>>- файл проекта IDE — индивидуальные настройки разработчика: что и как открыто. Должен генериться на основе makefile.

М>>а как его генерить? какие файлы открывать? открывать _все_ файлы, которые есть в makefile? так этих файлов тысячи... а если в IDE есть быстрая нафигация по функциям/классам -- тут мало импортировать имена файлов из makefile. эти файлы еще необходимо распарсить. а файлов много...
C>Компьютер — он железный и четырёхядерный. Кто мешает ему нормально распарсить код и построить индексы?
и сколько будет открываться проект средних размеров? возьмем для определенности Google v8. что мы будем открывать в IDE автоматом? парсить все файлы?! там их около 4 тысяч в 400 метрах. а вот мне тут потребовалось увеличить стек в шелле и правке подвергся единствннный файл -- сам шелл shell.cc в котором всего три сотни строк. зачем мне ide которая откроет все?!

кстати, makefile там нету. зато есть SConscript. как его парсить будем?
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Re[11]: Программирование под линукс
От: мыщъх США http://nezumi-lab.org
Дата: 12.05.11 01:27
Оценка:
Здравствуйте, Ночной Смотрящий, Вы писали:

НС>Здравствуйте, мыщъх, Вы писали:


М>>сложность задачи парсинга плюсов я себе хорошо представляю

НС>На парсинг плевать. Это 0.01% от задачи.
гм. вы пробовали парсить плюсы?

М>>хотелось бы увидеть несколько сценариев рефракторинга, требующих сотен тысяч строк для автоматизации.

НС>Решарпер + декомпилятор и вперед.
"сценариев" в смысле какой код был до рефракторинга и какой после. и какие задачи мы при этом решили.

М>> более того, хотелось бы услышать объяснения зачем нужен такой рефракторинг.

НС>Пока не попробуешь, не поймешь. И да, плюсы на редкость неподходящий для этого язык.
вот в x-code вижу рефрактор. понимаю, что он там слабенький и судя по всему только для виду, но зачем он мне мог бы потребоваться -- не понимаю. ну да, он там имя переменной может изменить. круто, блин. а у меня текстовой редактор в общем случае делает тоже самое и очень-очень редко ошибается даже если имя переменной типа 'a', не говоря уже за уникальные имена типа foobarbaz.
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Re[8]: Программирование под линукс
От: Danchik Украина  
Дата: 12.05.11 02:44
Оценка:
Здравствуйте, мыщъх, Вы писали:

М>Здравствуйте, yoriсk.kiev.ua, Вы писали:


М>>>в far'е я написал проект на 10+ килострок (сейчас уже больше, но лень считать сколько точно)

YKU>>Да вы вообще странный человек... Проститутки в спидозной столице мира без презерватива, в far 10К+ строк...
М>по вашему IDE сделала бы мою жизнь лучше? быстрее? причем значительная часть этих строк набиралась в асусе еее (нетбук) в стесненых условиях (типа в самолете) где даже far едва вмещается на экран, а IDE выглядят жутко, оставляя для редактировая окошко размером с почтовую марку и очччень долго грузится. мыши нет, тачпад ненавижу. сейчас пересел на мак. на маке совсем другие среды разработки. благо мне не нужно переучиватся, ибо мне ide не нужно. кстати, финальная сборка осуществляется под никсами, под которые, собственно, я и программирую. gcc ругается там, где ms vc молчит на /W4. правлю прямо в никсах в vim, потому как никсы это что-то грузящееся с флешки на том же асухе. эклипса там понятное дело нет.

Ну не кодирую я в самолете. Сплю я там, как сурок. Чего и вам желаю

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


Ваш идеальный вариант песочницы. Разные задачи требуют разных подходов. В день пишу 1-2 тис. строк кода (dirty). Ох что-то лень мне бы было это переносить с бумаги.
А также, учитывая то что С++ плохо поддается рефакторингу — на него очень часто забивают или не думают о нем вообще.


М>>>что я не так делаю? объясните. кстати, дебагер тоже не использую.

YKU>>Всё так. Просто это называется "стоя в гамаке на лыжах".
М>"мне так удобно" (с). и так быстрее. я уже спрашивал вас -- как мне хранить историю точек останова в системе контроля версий, чтобы при возникновении ошибки было можно быстро вернуться к любой комбинации установленных ранее точек останова с учетом модификации программы. да хотя бы как прокомментировать точку останова со сложными условиями? более того, в 9 из 10 случаев мне не нужно останавливать программу, а нужно логгировать то или это.

Опять же разные способы отладки и они спецефичны для конкретной задачи. В случае с IDE у вас доступны все варианты отладки.
И это еще надо будет разобратся какой лучше. FMS это еще не предел задач которые приходися отлаживать, и тут таки да, нужны логи, но, блин, мне также нужен отладчик!

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


Все так же будет останавливаться и в IDE. Бряки в IDE это неявный ижекшин int 3 в уже скомпилированный код.
В C# Debugger.Break() в С++ ваш макрос
Re[8]: Программирование под линукс
От: Nik_1 Россия  
Дата: 12.05.11 05:48
Оценка:
Здравствуйте, мыщъх, Вы писали:
М>>>в far'е я написал проект на 10+ килострок (сейчас уже больше, но лень считать сколько точно)
YKU>>Да вы вообще странный человек... Проститутки в спидозной столице мира без презерватива, в far 10К+ строк...
М>по вашему IDE сделала бы мою жизнь лучше? быстрее? причем значительная часть этих строк набиралась в асусе еее (нетбук) в стесненых условиях (типа в самолете) где даже far едва вмещается на экран, а IDE выглядят жутко, оставляя для редактировая окошко размером с почтовую марку и очччень долго грузится. мыши нет, тачпад ненавижу. сейчас пересел на мак. на маке совсем другие среды разработки. благо мне не нужно переучиватся, ибо мне ide не

А ты не пробовал работать в офисе за нормальным столом, мощным компом с большим экраном? Мож тогда и полноценные IDE понравятся больше фара
Re[7]: Программирование под линукс
От: Skorodum Россия  
Дата: 12.05.11 07:33
Оценка:
Здравствуйте, мыщъх, Вы писали:

М>Здравствуйте, Cyberax, Вы писали:


C>>Здравствуйте, мыщъх, Вы писали:


S>>>>- файл проекта IDE — индивидуальные настройки разработчика: что и как открыто. Должен генериться на основе makefile.

М>>>а как его генерить? какие файлы открывать? открывать _все_ файлы, которые есть в makefile? так этих файлов тысячи... а если в IDE есть быстрая нафигация по функциям/классам -- тут мало импортировать имена файлов из makefile. эти файлы еще необходимо распарсить. а файлов много...
C>>Компьютер — он железный и четырёхядерный. Кто мешает ему нормально распарсить код и построить индексы?
М>и сколько будет открываться проект средних размеров? возьмем для определенности Google v8. что мы будем открывать в IDE автоматом? парсить все файлы?! там их около 4 тысяч в 400 метрах. а вот мне тут потребовалось увеличить стек в шелле и правке подвергся единствннный файл -- сам шелл shell.cc в котором всего три сотни строк. зачем мне ide которая откроет все?!

Да разговор-то не про то, что всегда и везде надо использовать IDE. Естественно, что для очень многих задач достаточно nano/pico etc + grep, find, sed и т.д, но если планируется долгая работа, с навигацией по большому числу файлов, в мало знакомом коде, с отладкой (где это возможно) IDE будет весьма полезна. И очень хорошо, если IDE умеет понимать makefile. И она не откроет все файлы автоматом, а просто отоброзит, что они есть в проекте, почти как far + плюшки

М>кстати, makefile там нету. зато есть SConscript. как его парсить будем?


Думаю, решение SConscript -> makefile гуглиться, или реализуется самостоятельно, если очень надо. Наверняка есть IDE, которые и SConscript принимают.
Я хотел сказать, что по хорошему файл проекта для IDE и файл сборки (для ТС makefile) вещи ортогональные. Как и что реализуют в разных IDE — на совести разработчиков IDE.
Re[8]: Программирование под линукс
От: Michael7 Россия  
Дата: 12.05.11 09:04
Оценка:
Здравствуйте, мыщъх, Вы писали:

М> но тесты номер строки не показывают и с этим приходится разбираться отдельно. IDE тут ничем помочь не может.


Макросы __LINE__ и __FILE__ не годятся ?
Re[7]: Программирование под линукс
От: Cyberax Марс  
Дата: 12.05.11 10:00
Оценка:
Здравствуйте, мыщъх, Вы писали:

C>>Компьютер — он железный и четырёхядерный. Кто мешает ему нормально распарсить код и построить индексы?

М>и сколько будет открываться проект средних размеров? возьмем для определенности Google v8. что мы будем открывать в IDE автоматом? парсить все файлы?! там их около 4 тысяч в 400 метрах. а вот мне тут потребовалось увеличить стек в шелле и правке подвергся единствннный файл -- сам шелл shell.cc в котором всего три сотни строк. зачем мне ide которая откроет все?!

cyberax@lw1:~/.m2$ du -sh .
701M .

Это объём файлов библиотек для моего проекта на Java. IDEA их все распарсила, индексировала и хранит индексы на диске (их объём — пара гигабайт). Проект открывается примерно 10 секунд. Индексируется долго, около пары минут (при самом первом открытии или если убить индексы).

А IDE нужна, если что-то существенное делать, а не три строки править.

М>кстати, makefile там нету. зато есть SConscript. как его парсить будем?

Как обычно — пишем плугин к SConscript'у, который делает проектные файлы.
Sapienti sat!
Re[9]: Программирование под линукс
От: мыщъх США http://nezumi-lab.org
Дата: 12.05.11 12:55
Оценка:
Здравствуйте, Michael7, Вы писали:

M>Здравствуйте, мыщъх, Вы писали:


М>> но тесты номер строки не показывают и с этим приходится разбираться отдельно. IDE тут ничем помочь не может.


M>Макросы __LINE__ и __FILE__ не годятся ?


увы. допустим, берем функцию foo(char *s), подаем на ее вход набор эталонных строк s1, s2.. sn, ожидая получить результаты x1, x2 ... xn и видим, что x33 и x69 ожидания не оправдывают и что где-то косяк, но где именно -- хз.
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.