singalen: (Default)
[personal profile] singalen
Довелось возиться с кодом на AIX.
Потратил сколько-то времени на то, чтобы настроить терминал в PuTTY и vim для компиляции. Пришлось собрать GNU ctags и grep, местные отстой.
А самое интересное, что нашёл замену ctags+cscope для C++ (!!!) - SilentBob. Правда, не попробовал - там надо собирать библиотеку и cmake.

(no subject)

4/12/08 10:41 (UTC)
Posted by [identity profile] nickolaygolubev.livejournal.com
Я не понял, зачем искать замену ctags cscope? что тебе в них не нравиться?
Тот, кто написал SilentBob не обяснил даже, что он делает лучше? У меня создалось мнение, что он просто не умеет ими пользоваться...

(no subject)

4/12/08 12:03 (UTC)
Posted by [identity profile] nickolaygolubev.livejournal.com
У-у.
Главно понять зачем cscope. а зачем ctags. И не пытаться их использовать из консоли в сыром в виде. Вима хватит как оболочки.

Про cscope.

Я не представляю, как бы я в нашем коде находил все места использования некого метода или константы или переменной в считанные секунды.
Да, так как это с++, то ты ишешь по имени метода, класс не указываешь. Совпадение имён - проблемка - но быстро решаемая визуальной оценкой и ( или ) регексп фильтрацией.
Но врядли другие command-line-based индексаторы разруливают полиморфизм.

У меня воркфлоф правки кода иногда такой: чё за класс? ctags - я в определении. cscope - все места использование данного класса. А! Этот класс никто не юзает - бух - и он в .c файлике!
В студии я такое делал медленне в раза 2.

(no subject)

4/12/08 12:23 (UTC)
Posted by [identity profile] nickolaygolubev.livejournal.com
Не ругай наш хлеб )))
Если не гуи - то пишеться замечательно, хотя иногда не хватает питоновской легкости списков.
а исследовать - заходи - научим - под гиг C++ с помисью C шедевров - справляемся.

Кста тот чувак ( или плохо искал ) не написал толко про юз кейс его тулзы, да и в нете пусто.

могу дать сцылку на кустом вим скрипт для сископа+стагса + сохраняемая , редактируемая история пойска

(no subject)

4/12/08 12:38 (UTC)
Posted by [identity profile] nickolaygolubev.livejournal.com
"простоте дженериков". Что то тут не так. в с++ дженерики проше некда. но потом же у нас есть метапрограмминг. Меня вообще не вдохновили дженерики java - думаю в шарпе что-то похожее.
С интелисенсом ( туда же рефакторинг ) - согласен - это единственное что нам не будет дано 100% полноценно из-за препроцессинга.
А вот писать без дуструкторов - не могу предстваить. + слышал что есть много запросов от программистов чтобы в язык java ( c# потом скопипастит ) добавили языковые контсрукции-секции для автоматического объявления-инициализации-а-потом-осовобождения ресурсов - вместо постоянного finally.

И не забывай - скоро новый с++ стандарт.

vim plugin link ( not reklama ) - just use it daily and it works.
http://www.vim.org/scripts/script.php?script_id=1638

(no subject)

5/12/08 08:26 (UTC)
Posted by [identity profile] nickolaygolubev.livejournal.com
Так...
Давай выясним, чем генерики проще.
В обоих языках ( с++, с#/java ) есть дефолтовые генерик коллекции.
Суда по разговорам - это обычно всё для чего нужны эти генерики в шарпе или джаве. Я не представляю, что можно написать своего дженерик в джаве ( я дальше буду про нёё - я там их видел ) если нелзья зделать TGeneric variable = new TGeneric(). Я видел каким извратом и кастом они писали коллекции, или как учили писать генерик объекты в Effective Java 2nd edition. Так вот. Глядя на тот "генерик" код реализации коллекции и на такой же но в с++ - становиться очевидным, что прочитать с++ код интуитивней и понятней. Плюс ко всему, на этом возможности шарпа и ждавы себя исчерпывают ( всё что можно сделать - банальные контейнеры ), в то время как в с++ ты неограничен.
Как и в любом языке, если ты злоупотребляешь фичей, к примеру шаблоном, то всё становиться плохо - но это не причина. В шарпе есть рефлексия - такого наворотить можно - мамачка.
И я больше чем уверен, либо в джаве генерик усилят, либо выкинут. А там глядишь, еще и гарантированые учатки кода выполнения добавят - четать деструкторы.