Страница 7 из 66

Добавлено: 29 окт 2009, 14:59
galover
Evgeny
не, не я (у меня просто скилов не хватит на такой проект - при том, что редактор он писал сам с нуля на С++, а не взял готовый - ту же Сцинтилу, на которой сделаны многие бесплатные редакторы). И с разработчиком лично не знаком. Продукт бесплатный для русскоязычных пользователей. Я его не рекламирую ни в коем разе. Просто как альтернатива для удобного редактирования кода. Пользуюсь около полугода, доволен как слон. Единственное чего не хватает - это рефакторинга.

Добавлено: 29 окт 2009, 15:01
galover
но рефакторинг сделать без полноценного семантического анализатора невозможно, увы

Добавлено: 30 окт 2009, 11:35
LaaLaa
Про рефакторинг

Грешно смеяться над пожилыми людьми. В Delphi 7 не было таких функций. Посмотрел в Delphi 2007 и 2010 есть меню "Refactor". Посмотрел, рекомендованные выше, ссылки на софт для си-шарпа. В общих чертах понял о чем речь. Т. е. под рефакторингом подразумевается наборчик функций, специфичный для конкретного языка программирования. Чтобы выполнять пакетно некоторые рутинные действия по трансформации исходного текста кода, с учетом синтаксических и семантических особенностей конкретного языка.

Применимо к языку VIP представляется возможным реализовать следующие функции:

1) переименование локальной переменной или функции интерфейса. Все точки, где объявляется и где используется
2) переименование таблицы в интерфейсе. В логической таблице и в запросах имя изменить на синоним. По коду интерфейса во всех точках использования заменить имя таблицы
3) Переименование метода ObjInterfcace и VipInterface глобально по всему проекту. Изменяется имя в VIH файлах и во всех VIP-ах где есть к нему обращения
4) Формирование локальной функции интерфейса по выделенному фрагменту кода. Выделяется блок текста, в интерфейс выше выделенного места добавляется функция, выделенный фрагмент заменяется за ее вызов, параметры функции формируются по хитрому семантическому алгоритму (входной, выходной и т.п.)

С этими понятно. Вроде как могут пригодиться, и будут востребованы. Поставим их в очередь на разработку.

Просьба озвучить, какие еще конкретные функции рефакторига конкретно для языка VIP могут пригодиться?

Добавлено: 30 окт 2009, 12:01
galover
1) Очень пригодится анализ ЛТ, на правильность подобранных индексов, скажем индекса нет, а редактор предлагает вставить noindex после имени таблицы или скажем внести в подцепки конструкции описанные как фильтры (или обратное действие). Было бы супер если вообще по view строился граф таблиц, рутовые наверху от них стрелки к подцепляемым, чтобы можно было наглядно увидеть структуру вьюхи, а то иногда идут километровые view пока разберешь что там к чему
2) Предлагать вынести функции не принимающие значения в проперти
3) Написать вызов функции, а потом уже предложить создать ее
4) Создать vih файл по interface-у (анализ public функций), предлагать создать objInterface и vipInterface или только vip
это так в первом приблежении

Самое первое это конечно же rename функции. Сделаете будет супер. Буду подкидывать другие идеи, если вы не будете отсылать в ПИР и посылать в пень на конкретные предложения (мол тут вам никто ничего не должен, пизд..й в другой форум и т.д.)
Купите наконец нормальную GUI библиотеку, такая крупная компания, а пишите на каком-то самопале, не обеднеете

Добавлено: 30 окт 2009, 12:04
galover
Макконнелл это конечно хорошо, но советую Фаулера (это уже бестселлер) - "Рефакторинг. Улучшение существующего кода"
http://www.ozon.ru/context/detail/id/1308678/

Добавлено: 30 окт 2009, 15:45
lStep
hippoEdit Да! хороший редактор . код весь под хохлому. Красиво. Сворачивает блоки <SCOPES> Подсказки кода

Я ленивый. Код изменил - компильнул, ошибки исправил. А потому посмотрим на Скорость компиляции.
Фейс - пустышка. 99% времени работы компилятора- Запуск.
Субьективно и без попытки что-то ускорить:
  • Скорость VIP.exe внутри FARа беру за 100%
    Скорость VIPERа 50%-80% у него как-то старт быстрее.
    Скорость VIP.exe запуск из hippoEdit 120%. Тут VIP.exe в начале запуска тупит оссобенно долго.
galover о hippoEdit
Вообще внес изменения, жмакнул F5 (все файлы проекта сохранились автоматом - есть там специальная опция) и все - результат в output,
о hippoEdit:
1) Тест: Сделал ошибку в коде. Если результат в output, то когда Vip останавливается на ошибке и ждёт Enter-а, файл где ошибка ЗаЛочен, а VIP-у Enter не нажать.
Как быть?

2) Допустим п.1 я обьеду. Подскажите Pattern, чтоб курсор вставал на место ошибки.

Всем: Кто какие редакторы приспособил как IDE? Поделитесь информацией, ссылками, настройками и т.д

Добавлено: 30 окт 2009, 15:57
galover
lStep
если это попытка наехать на hippoEdit, то мимо кассы. Мне если честно пофиг, я не разработчик. То что стартует долго, я уже писал, это не проблемы среды, это компилятор такой, висел бы себе в памяти, или сервис какой-нибудь был, то все было бы в шоколаде. А так попытка решить проблему через одно место. Повторяю, IDE не должна решать проблемы компилятора - мухи отдельно, котлеты отдельно
То что ждет Enter - такая фигня есть. Тут опять - компилятору нужно сделать ключик, чтобы гнал в консоль без останова. С++ и C# компиляторы в командной строке поступают именно таким образом (они даже ошибки красным цветом подкрашивают), я вообще не понимаю смысла компилить в консоль и при этом ждать реакции пользователя - ждать от него нажатия Enter-а, по-моему тупость какая-то.
Чтобы встать на место ошибки нужно regexp настраивать, я тоже об этом писал. Будем время, спишусь с разработчиком. Как допилю схему, выложу на порку

Добавлено: 30 окт 2009, 16:30
lStep
galover, что-ж Вы так на всех с вилами?

Я хочу IDE поудобнее и побесплатнее.
Вот собираю варианты:
VIPer
или
(отладчик в Галактике) + [( VIP.exe + Far с Colorer ) или ( VIP.exe + hippoEdit ) или ( VIP.exe + ? кто что пользует, поделитесь информацией?) ]

Сейчас Far с Colorer. Говорят, есть для Far плагин, чтоб на ошибки в редакторе переходить. У кого такой настроен?

PS: а hippoEdit - хороший редактор. Pattern надо и будет красотищща.

Добавлено: 30 окт 2009, 17:02
galover
lStep
ок, извини, не хотел обидеть. Схема под hippoEdit будет обязательно. Она уже сейчас есть, просто на некоторых файлах есть глюки с расцветкой - неправильно отрабатывается scope для const:
есть

Код: Выделить всё

const
  csTest = 4;
end;
const csTest = 4;
function(const csTest : longint);

Я также заинтересован в хорошем редакторе. Но глядя на випер, тоска берет. А что касается цены - випер сделают платным со временем, можешь даже не сомневаться ;)

Добавлено: 30 окт 2009, 17:17
Seybukan
Уж на скока я терпеливый, но все же скажу.

7 страниц уже, а по делу маловато понаписали!!!
Сходи туды, сходи сюды, посмотри вот это или вот это...

Давно бы уже обозначить цели!
Поставить под них задач и реализовать полный список функционала, который необходим. Нормальный только, членораздельный такой.

Один шум гам.
И плохому танцору всегда яйца мешают. Вот всегда - и ни кто меня не переубедит в обратном.

Добавлено: 30 окт 2009, 17:56
galover
Seybukan
ага, а полы им не вымыть. Может и код за них написать? Давайте сейчас будем говорить что не разжевали и в рот не положили. Эти люди планируют випер продавать, а мы им должны рассказать как это лучше сделать, нормально? Кстати в последнее время мы в ТП уже начали код отправлять (что и как исправить), это видимо скоро станет нормой

Добавлено: 30 окт 2009, 18:11
m0p3e
galover
Кстати в последнее время мы в ТП уже начали код отправлять (что и как исправить), это видимо скоро станет нормой
Не вы одни... ;)

Добавлено: 31 окт 2009, 19:40
Seybukan
galover
А нужен ли результат?
Что-то у меня сомнения.
Я лишь посоветовал как поступить.
Может и код за них написать?
А почему и нет? Рискни. Попробуй напишика чего-нить. Напиши доку.
Дай народу потестить. И объявим конкурс на айфон по количеству найденных косяков... Во время конкурса все будут присылать тебе предложения по улучшению, хотелки там всякие и т.д. Кто больше нашел - тот и чемпион, не нуйдут ты и чемпион.

Это я к тому что у всего есть ошибки. Из 100 спичек - одна по любому не загорается.

Добавлено: 31 окт 2009, 23:15
LaaLaa
mwoland писал(а):Напишу свои требования:
1. В окне проекта на данный момент отображается информация только о файлах проекта. Хотелось бы для каждого файла увидеть список его интерфейсов, процедур, функций, окон, скринов и т.п. в иерархическом виде. Т.е. открываем узел дерева "Test.vip" в нем открываем узел Interface iTest, видим, что у него есть хэндлэвент, который при необходимости можно так же развернуть, увидеть список его обработчиков событий и перейти по даблклику на нужный обработчик.
2. В окне проекта хотелось бы увидеть секцию includes, которая заполнялась бы автоматически, по мере подключения в файлах проекта различных инклюдов. В файле test.vip я пишу #include extattr.vih, випер добавляет его в секцию, при этом ищет этот файл в папках, которые были объявлены в cfg как "/i:" и, если не находит - подсвечивает как-то, если находит - по дабл клику этот файл можно открыть.
3. Самое главное - необходимы как воздух - переходы по Ctrl+Click на declaration того, по чему кликнули. Например, есть строка ea.AttrName(123);. Я кликаю по ea и перемещаюсь к строке var ea: iExtAttr. Если кликну по AttrName - перемещусь в файл ExtAttr.vih к описанию функции AttrName.

Всё что я здесь описал есть в eclipse. Откройте и посмотрите - имхо идеальный редактор. Пробовал одно время заточить его под vip, но там черт ногу сломит, и после работы с мутной башкой много не надевелопишь ((. В общем, если интересно - могу продолжить.
Предложения понятны, они сейчас в разработке. Надеюсь скоро будут готовы.

Добавлено: 01 ноя 2009, 01:05
LaaLaa
Про внешний вид и про интерфейс Viper.

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

Возможно позже к разработке Viper получиться привлечь профессионального дизайнера. Интерфейс и внешний вид будут дорабатываться одновременно.

На данном этапе, нам интересно было бы узнать отношение пользователей Viper к интерфейсу в с тиле Ribbon (по типу Microsoft Office 2007). В отдельной ветке организовал опрос.
http://www.tyumbit.ru/gal_forum/viewtopic.php?t=10182

Просьба проголосовать и высказать там свое мнение по поводу интерфейса Ribbon в целом. И применении его к Viper в частности.