Odysseos писал(а):То есть, если не оценит - проект помрет?.. Жаль будет...
Что за пессимизм? Да еще 1 апреля? Все будет нормально.
Проект требует финансовые ресурсы для удовлетворительного развития, иначе когда и каким образом он будет развиваться дальше?
Odysseos писал(а):...А вот вопросик такой - в BlazeTop была, помнится, попытка сделать package'и для работы не только с Interbase/Firebird, но и с другими БД (если мне память не изменяет, были какие-то экспериментальные bpl для работы с MySQL через ZeosLib). Так вот - оно будет? Или SH теперь "жестко" завязан на IB/FB?.. А если не завязан - то будет ли открыт интерфейс, чтоб свои модули писать можно было?
Да, было такое дело и есть - пакеджи для MySQL. Было еще так, что ветка SybaseASE шла по развитию впереди ветки для IB/FB. Потом резко замерзла. Причина? См. выше. Теперь надо изыскивать веские аргументы, чтобы он резко дописался до релизного вида. Опять же таки см. выше. Нас никто не спонсировал. Мы не получали ничего за то, что делалось. Это ночной энтузиазм, в свободное от форсмажорной и ненормированной основной работы время, поддерживающийся в критические моменты только на силе воли и желании его завершить, дотянутый до хоть какого-то релиза. Удовлятворяющего релиза (лично меня, например). Как это в книжках модных называется? Да, вот - безнадежный проект!

)) Ну... а мы... мы камикадзе
Никаких жестких завязок нет и быть не может. Это главное условие. У нас даже разделен априори InterBase от Firebird. Что, собственно, есть и так правильно. Мы сразу готовы к их противоположному развитию.
Все интерфейсы открыты и поставляются в дистрибутиве. Хотя по хорошему, их наличие должно менять Edition _сразу_ на категорию Enterprise со всеми вытекающими в колонки Price in EUR/USD.
Есть еще внутренние интерфейсы IDE - они только для внутренней его работы и не поставляются. Для написания компонент они не нужны.
И есть один внешний к IDE интерфейс, который (_единственный_) скрыт от прямой поставки в исходниках. Это интерфейс-заголовок серверной ветки. Т.е. без его наличия невозможно установить в систему ветку MySQL, например. Т.е. уставновить гармонично, как IB/FB, с выбором ветки, регистрацией серверов и баз, выбором компонент для работы и т.д. Причина, надеюсь, понятна. Как мы им будем распоряжаться - не готов ответить сейчас на этот вопрос. Ясно одно - мы (в двоем) не потянем все сервера вместе взятые

Необъятное объять отказать.
Далее, не хотелось бы, чтобы от этого проекта ожидалось какое-то "чудо". Т.е. раз-два и слепил ветку, например, на Informix. Чуда не бывает. Ну, как минимум, мы не фокусники
Но постарались выработать правила как можно более простыми. Простыми до безобразия. Чтобы было удобно и гибко. Лучше понимать SQLHammer (BlazeTop), как некий набор правил для игры. И правил этих всего малое количество штук:
1. Номер кодовой базы определяется номером кодовой базы Delphi и используемых нами сторонних компонент (именно поэтому у нас аскетический минимум и мы не имеем права юзать DevExpress для красоты, но его юзать может кто-угодно для себя сам без вопросов и проблем)
2. Система состоит из IDE, которое не знает ничего про то, что в нем "крутится" и "встраиваемого" в него кода на основе механизма bpl, тем самым достигается единое классовое пространство для всех участников (ака Delphi) процесса, а разговаривают они между собой только через IInterface (чем не MS Net в миниварианте?

)
3. Встраиваемый код базируется (расширения/компоненты) на элементарных атомах:
- наследник Delphi.TComponent, поддерживающий ISHComponent
- наследник Delphi.TForm, поддерживающий ISHComponentForm
- наследник Delphi.TAction, поддерживающий ISHAction
Это все. Все это находится в SHDesignIntf.pas в исходном виде. Упомянутые интерфейсы ISHxxxxx имеют бледно простой вид и предназначенны, аккурат, для того, чтобы связать пользователя через IDE с искомыми компонентами/редакторами/кнопками. Обратная связь происходит через ISHDesigner (с IDE, жаль, что не с пользователем

). Собственно, доклад по архитектуре закончен.
И последнее:
4. Нами все сделано на файле SHDesignIntf.pas. Т.е. все, что работает с IB/FB, начиная от редактора "зарегистрировать сервер" , заканчивая SQLScripter или другим тулом сделано на пункте номер 3. И _никакого_ мошенничества, что мы как-то это сделали по другому, так как мы разработчики.
Из пункта номер 4 исходит следующая идея: любой желающий может сделать тоже самое

и лучше нас! Можно заменять (перекрывать) и добавлять новые редакторы/компоненты/кнопки и прочия расширения.
Другими словами, вы пишете на Delphi что угодно и как угодно, только придерживаясь элементарных правил пунктов 1 и 3. И для вас, как бонус и подспорье в работе, доступ к нашим реализациям через интерфейсы. Всякие там DDLGenerator, DDLCompiler и другая ерунда. Ну... чтобы велосипед не изобретать, если вдруг понадобится.
Поэтому ветка IB от FB может отличаться даже визуальным представлением, начиная от кнопки "зарегистрировать" сервер. Поэтому можно сделать точную копию любого объекта из IBExpert, IBManager, PL/SQLDeveloper и прочая, просто как бонус. Как дополнительный компонент.
Поэтому, если кого-то не устраивает наш SQLEditor и есть желание - может сделать и доставить свой мегаличный и работать с ним.
Поэтому... что-то я дофига уже текста набрал... В общем, за сим откланиваюсь.