Вверх ↑
Этот топик читают: Гость
Гость
Ответов: 17029
Рейтинг: 0
#1: 2006-08-27 18:45:10 ЛС | профиль | цитата
В теме http://hiasm.hexshock.com/xf/topic.php?t=6341&start=15 Dilma сообщил, что:
Менеджер компонентов появится со следующей версии


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

Вячеслав в том же топике затронул тему функциональности Менеджера компонентов:
в главном окне три кнопки
Установить - т.е. установить компонент из этой папки
Установить все.
Удалить - удалить компонент - если он кривой.


Я подумал, что ещё не поздно развить и обсудить эту тему:
Какие возможности пользователь HiAsm хотел бы иметь в Менеджере компонентов как элементе среды.[/code]

Попробую перечислить свои пожелания:

[b]Функциональность:[/b]

1. Прежде всего, конечно, базовые функции:
- [b]Установка[/b] компонента.
- [b]Удаление[/b] его же.
- Насчет [b]"Установить все"[/b] не уверен. Бывает, и с одним-то намаешься. А после "Установки всех" поди разбери - который из них все дрова переломал. Или ещё хуже, когда не все. А напоролся ты на этот факт, скажем, некоторое время спустя... И чё делать? - "Всё удалять"?
2. Возможность инсталляции новых компонентов - как компонентов [b]с файлом HIC[/b] в установочном комплекте - так и без него. Таких встречается немало.
3. При установке нового компонента [b]"поверх"[/b] имеющегося (например, при обновлении, либо наоборот - при возврате к прежней версии) - возможность [b]"отката" [/b] к предыдущей версии, хотя бы на 1 уровень. Новые версии компонентов могут включать в себя и новые баги, в такой ситуации хотелось бы иметь подстраховку.
4. Возможность "выделения" всех файлов уже установленного в среду компонента (файлов INI, PAS, ICO, RES и т.п.) и [b]сохранения их в отдельной папке[/b]. Я думаю, многие создают свои личные базы компонентов, а наполнение их компонентами из среды оказывается достаточно трудоемкой задачей.
5. [b]Перемещение[/b] установленного компонента в "палитре" [b]из одного раздела в другой[/b]. Например, пару компонентов для работы с буфером обмена - Clipboard и ClipboardHook) я бы посадил рядом (ну мне так удобно).
6. [b]Перемещение[/b] установленного компонента выше-ниже [b]в пределах раздела "палитры[/b]".


Визуальность:
Предполагая визуальную реализацию Менеджера в виде [b]таблицы[/b], я подумал, что неплохо бы иметь в ней доступ вот к такой информации об установленных компонентах:
1. [b]Иконка[/b] компонента. Люди думают глазами. Можно не запомнить имя, а вот в лицо все узнают сразу.
2. [b]Имя[/b] компонента (то, которое на английском).
3. [b]Краткое описание[/b] (это которое всплывает при наведении) - для многих (не считая Авторов, конечно) имена компонентов могут быть не очень информативны.
4. [b]Версия[/b] (обновлять или не обновлять - вот в чем вопрос!).
5. [b]Автор[/b]. Вероятно, многие пользователи уже имеют свою систему приоритетов в отношении Авторов компонентов, и именно имя Автора в ряде случаев помогает принять решение при добавлении или обновлении компонентов в среде.
6. [b]Раздел[/b] "палитры элементов", в котором компонент установлен.
7. [b]Инфо о наличии "отката"[/b] для данного компонента. Если он был обновлен.

Допуская, что Менеджер - это таблица, очень даже желательно было бы в ней иметь возможность [b]сортировки компонентов[/b] в таблице по всем тем "столбцам", которые я описал выше.

Предлагаю обсудить. И очень надеюсь, что поезд ещё не ушел и новая версия HiAsm ещё не в запакованном дистрибутиве. :D
карма: 0

0
Ответов: 5446
Рейтинг: 323
#2: 2006-08-27 20:03:22 ЛС | профиль | цитата
Кто-то тут предлагал добавить возможность интеграции компонент в схему (в том или ином виде), это тоже желательно добавить.

В качестве одного из вариантов - ввести UID для компонентов (для начала - номер компонента в уплоаде). Если пользователь открывает схему, в которую интегрирована такая информация, а компонент у него нет - его спрашивают "Скачать (да, нет, я сам)?". В случае положительного ответа ссылка передаётся ХиАсм-Даунлоадеру (помнит ещё кто о его существовании) и происходит закачка-установка-перезапуск среды (если надо), если "я сам" - ссылка передаётся в браузер.
карма: 1

0
Ответов: 3851
Рейтинг: 159
#3: 2006-08-28 17:06:10 ЛС | профиль | цитата
Может базовый набор оставить как есть, пуст его Dilma редактирует, а все пользовательские элементы загнать в раздел "User" (он уже существует). Ну в крайнем случае сделать его (раздел) древовидным. Таблицу поддерживаю. Если для одного элемента выпущено несколько версий, было бы хорошо менять её номер прямо в свойствах, не выпаивая так сказать, элемент из схемы. По поводу встраивания элемента в схему - если юзер копирует часть схемы, а там есть нечто новое (отсутствующее в базовом наборе), то среда должна его тоже положить в буфер, с потрохами...
карма: 0
начавший
0
Ответов: 44
Рейтинг: 0
#4: 2006-08-30 00:16:57 ЛС | профиль | цитата
iarspider, про привязку Менеджера к серверной базе HiAsm я даже и не загадываю, тем более о таком сервисе в среде, как:
компонент у него нет - его спрашивают "Скачать (да, нет, я сам)?"

Принимая во внимание, что Dilma впервые собирается оснастить HiAsm таким удобством, я бы не стал уж настолько завышать требования к первой пробе, хотя в перспективе хотелось бы, конечно, "всего и побольше"
Я думаю, что в первой презентации Менеджера компонентов большинство пользователей надеются обнаружить тот набор необходимых и достаточных возможностей, которые обеспечили бы комфортную и безопасную работу с личной локальной базой компонентов и средой программы.


Андрей:
а все пользовательские элементы загнать в раздел "User" (он уже существует). Ну в крайнем случае сделать его (раздел) древовидным.


Мне кажется (см. п.5 и п.6 моей писанины - которая повыше), что при наличии возможности перемещения элементов в пределах разделов и между ними (а сделать, это, как я понимаю, не слишком сложно - см. файл Elements.ini в папке программы), вопрос о расположении элемента в "палитре" становится делом личного вкуса и привычек.
карма: 1
Время верстки: %cr_time% Текущее время: %time%
0
Ответов: 3851
Рейтинг: 159
#5: 2006-08-30 08:55:00 ЛС | профиль | цитата
vau_HI, я согласен с тобой, если речь идёт о пополнении палитры. А всё, что сверх того - то от лукавого (в хорошем смысле) и должно лежать отдельно. Т.е. палитра одинакова для всех, а раздел "User" - у всех по разному наполнен (по вкусу так сказать). Чтобы небыло неразберихи, и интернет ведь не у всех есть.
карма: 0
начавший
0
Ответов: 44
Рейтинг: 0
#6: 2006-08-31 21:38:07 ЛС | профиль | цитата
Андрей, смысл позиции я понял: отделить стандартную и протестированную "палитру" от "всего прочего" и назвать это прочее "User" (тем более, он - "User" - уже для юзеров и приготовлен).
Но ведь суть проблемы в другом: где бы элемент ни располагался в той самой "палитре" - работать-то ему придется В СРЕДЕ ПРОГРАММЫ, А НЕ В ПАЛИТРЕ, причем, работать и взаимодействовать как с другими элементами, так и со средой.
1. Для работы HiAsm нет никакой разницы - в каком месте перечня компонентов "прописан" любой из них, зато очень даже существенно, когда он оказывается в схеме на "столе"!
2. А в какое место придется положить новую версию (обновление) элемента "стандартного" набора, скажем, StringTable 2.2
3. Про интернет не понял - это к чему
карма: 1
Время верстки: %cr_time% Текущее время: %time%
0
Ответов: 96
Рейтинг: 0
#7: 2006-09-01 04:07:53 ЛС | профиль | цитата
Если уже речь снова зашла о контроле над версиями компонент(типа локального SVN что-ли), то логичнее всё это выполнить не в виде таблицы, а в виде дерева, где актуальная версия компонента отмечается галочкой, ну и кнопка типа "сместить точку актуальности всех компонент на последнюю версию" не помешает.
Давненько уже обсуждалась возможность изменения формата компонент, дабы они лежали в отдельных папках, или лучше в виде зипов, тогда Дилма эту идею отверг, типа тормозно это будет компилироваться(мол всё придётся каждый раз распаковывать). Есть альтернативное решение: при запуске Хиасма создаётся виртуальный диск в ОЗУ, туда вытряхивается содержимое компонент либо сразу всех, либо по необходимости, при первом(в данной сессии) использовании. На этом виртуальном диске и проводить сборку, пусть там и создаются dcu и прочая нечисть, первая в данной сессии компиляция компоненты Х будет тормозной, а дальше всё как по маслу.

[size=-2]------ Добавлено в 04:07
В случае описаного выше кэширования компонент, можно хранить оные в локальной БД. В таком случае ускоряется работа со списком компонент за счёт индексации, да и вообще, это технологично, что-ли... И синхронизация с центральной БД..., подписка на обновления конкретных компонент... Заманчиво !!!
карма: 1

0
Ответов: 3655
Рейтинг: 69
#8: 2006-09-01 23:57:41 ЛС | профиль | цитата
Заманчиво
карма: 0

0
Ответов: 44
Рейтинг: 0
#9: 2006-09-02 01:24:38 ЛС | профиль | цитата
Alexeylp
Я понимаю, что в такое время суток о многом мечтается и вспоминается:
04:07 Fri 01 Sep 2006


Ну скажите мне пожалуйста - найдется ли среди пользователей HiAsm хоть один, кто откажется от всего технологичного, современного и на порядок обновленного!
Предлагаю не забывать, что HiAsm создает не Microsoft и даже не Borland, а весьма немногочисленный коллектив энтузиастов (и профессионалов при этом - в лучшем понимании этого звания), и ресурсы авторов, в отличие от ресурсов железа компа, имеют вполне реальные пределы.
Посему: проблемы сборки (на "виртуальном диске в ОЗУ") я бы обсудил отдельной ПЕРСПЕКТИВНОЙ темой. Это очень интересно и "заманчиво" - но это отдельная тема.
Напомнаю:
Dilma пригрозил новым Менеджером компонентов уже в следующей версии
- поэтому прошу новых предложений именно ПО ЭТОЙ ТЕМЕ!
А насчет дерева компонентов - это действительно интересно. Еще бы лучше, чтобы можно было и таблицей, и деревом, вроде Проводника.
карма: 1
Время верстки: %cr_time% Текущее время: %time%
0
Ответов: 96
Рейтинг: 0
#10: 2006-09-02 04:08:41 ЛС | профиль | цитата
vau_HI, вы пользовались под ДОСом такой штукой, как ramdrive.sys? Это сложно?!
карма: 1

0
Ответов: 3851
Рейтинг: 159
#11: 2006-09-02 14:17:31 ЛС | профиль | цитата
vau_HI,
очень даже существенно, когда он оказывается в схеме на "столе"!
я не знал об этом
2. А в какое место придется положить новую версию (обновление) элемента "стандартного" набора, скажем, StringTable
тогда действительно лучше их сразу помещать в соответствующие разделы.

Про интернет: Прихожу я к другу, чтобы за рюмкой чаю напрячь творческий процес и победить наконец совместный проект. Открываем у него мою часть проекта, а hiasm объясняет, что элемент ХХХ не найден в разделе YYY. Тут я вспоминаю, что действительно, в дистрибутиве XXX отсутствовал. Не беда - говорю я - можно его скачать через интернет. А может тебе шатл подогнать - говорит мой друг - ты за ним и сгоняешь, всё равно интернета нет . Это я к тому, что среда должна иметь чёткое представление - какой элемент надо сохранять в проекте целиком, а какой - только название и параметры. Сделать это легко если недистрибутивные элементы держать отдельно (в user), но в принципе, можно помечать их флажком ( "претендент" так сказать).
карма: 0
начавший
0
Ответов: 3655
Рейтинг: 69
#12: 2006-09-02 15:19:33 ЛС | профиль | цитата
Вся проблема в том кто это всё будет делать
карма: 0

0
Ответов: 44
Рейтинг: 0
#13: 2006-09-02 23:30:59 ЛС | профиль | цитата
Alexeylp:
vau_HI, вы пользовались под ДОСом

- Я много чем пользовался и пользуюсь, и "под ДОСом" и "над ДОСом". Чего и Вам желаю.
Попробую повторить: речь идёт не о том, насколько "сложно" очередное предложенное Вами или кем-то другим нововведение - спасибо Вячеславу (он понимает):
Вся проблема в том кто это всё будет делать

И опять обращаюсь ко всем: давайте не размазывать тему Менеджера компонентов
Андрей, насчет интернета всё понятно, лишний раз можно напомнить участникам, что мы здесь толкуем о Менеджере компонентов на уровне локальной базы одной отдельно взятой (и не связанной с интернетом) мирной домашней машинки.
карма: 1
Время верстки: %cr_time% Текущее время: %time%
0
Ответов: 2058
Рейтинг: 28
#14: 2006-09-03 00:07:36 ЛС | профиль | цитата
Предлагаю следующие: Немного разгрузить Дилму и делать некотырые вещи как в Дельфи, т.е. сделать например этот менеджер на самом HiAsm. И также делать и предлогать следующие новшиства в таком роде.
карма: 1

0
Ответов: 3851
Рейтинг: 159
#15: 2006-09-04 17:12:13 ЛС | профиль | цитата
Можно в help-е на элемент оставить адрес топика (как вариант), или доступ к базе, где бы можно было найти инфу - какие симптомы как лечатся, ну свои комментарии оставить.

Думаю может иметь место неразбериха с набором функций похожих элементов у разных авторов. Кому-то (надеюсь Дилме) придётся решать вопрос - с какой функциональностью добавлять новый элемент в дистрибутив.
карма: 0
начавший
0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)