Страниц: [1]
Печать
Автор Тема: Установщик библиотечных элементов (Objects installer)  (Прочитано 10171 раз)
0 Пользователей и 1 Гость смотрят эту тему.
GAG
Администратор
*****
Офлайн Офлайн

Пол: Мужской
Сообщений: 273


GAG [Jaguar]


WWW
« : 11 Май 2007, 16:33:12 »

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

В чём смысл подобного инструмента:
В архив с объектом добавляется текстовый файл-описание наподобие .inf файла, в котором прописано, в какую библиотеку класть файл.

Соответственно, в самой программе настраиваются пути к стандартным библиотекам, что позволяет просто открыть/drag-n-drop'нуть архив с объектом в окно программы и установить его без лишних действий.

Высказывайте свои идеи по поводу данного инструмента.

Если идея найдёт поддержку, то такой же инструмент имеет создать для установки расширений (Add-Ons).
Записан
nd
Новичок
*
Офлайн Офлайн

Пол: Мужской
Сообщений: 17

а нету


« Ответ #1 : 11 Май 2007, 16:50:32 »

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

--
С уважением
Диденкул Андрей
Записан
GAG
Администратор
*****
Офлайн Офлайн

Пол: Мужской
Сообщений: 273


GAG [Jaguar]


WWW
« Ответ #2 : 11 Май 2007, 17:33:56 »

Цитировать
идея то в принципе хорошая
Спасибо Подмигивающий

Цитировать
это библо-писакам прийдется теперь еще этот инф файл писать?
Только один раз при создании элемента, да и то для этого тоже можно сделать ф-цию в программе

Цитировать
А что возникает много вопросов по установке библов?
Вопросов - нет, а действий - да.

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

Цитировать
А кто если не секрет писать будет?
Я. Лично.
Записан
Ilia_P
Новичок
*
Офлайн Офлайн

Пол: Мужской
Сообщений: 9



« Ответ #3 : 16 Май 2007, 08:34:18 »

Я пока ЗА! но только непонятно, тоестькаждый объект будет иметь этот установшик?... Насколько это утяжелит объекты? согласен что больше это подходит для финального релиза, хотя....
Мысли: повидимому надо будет создавть путь примерно такой:
\Program Files\Graphisoft\ArchiCAD 10\ArchiCAD Library 10\ARCHILIB - чтоб в эту папку автоматом скидывались объекты....
опять же возникает вопрос если арчик русский?../
вообщем пока ДА, посмотрем что получится
Записан
GAG
Администратор
*****
Офлайн Офлайн

Пол: Мужской
Сообщений: 273


GAG [Jaguar]


WWW
« Ответ #4 : 16 Май 2007, 10:04:08 »

Привет, Илья.
Спасибо за ответ.

Уставнощик будет один - у тя на компе
Библ. эл-т будет в обычном архиве (rar,7z); единственное его отличие от просто архива - это наличие  нём файла типа .inf с описанием и данными для установки. Аналогия - плагины Total Commander.
Записан
Mike_B
Пользователь
**
Офлайн Офлайн

Пол: Мужской
Сообщений: 84


« Ответ #5 : 16 Май 2007, 10:25:55 »

Высказываю свое мнение основанное на личных наблюдениях:
1. Папку Архикада лучше вообще не трогать. Проблемы возникають при переустановке или сбое системы. Свою библиотеку,
шаблоны, фавориты, интерфейс АС держу на D:. Единственное, при необходимости кидаю нужный АДД-ОН.
2. При переносе объекта на другую машину нужно (в "худшем" случае):
  а) перенести сам объект;
  б) перенести макросы или другие объекты, на которые ссылается объект;
  в) перенести базу данных с набором спецификаций;
  г) перенести текстовый шаблон спецификаций;
  д) перенести фавориты (набор значений переменных объекта, чтобы не вводить по сто раз);
  е) состыковать типы линий, комбинации цветов, заливки (не обязательно, но удобно).
При переносе нескольких таких объектов возникает путаница, особенно с базами.
Записан
Valery W
Глобальный модератор
*****
Офлайн Офлайн

Сообщений: 89


« Ответ #6 : 16 Май 2007, 14:58:11 »

Не вижу смысла в таком установщике. Или не понимаю идеи. Возможно рассмотрение конкретных ситуаций прояснит его суть. Каждый пользователь формирует библиотеки по своему. Навязывать ему свой путь установки нереально. Это будет его раздражать. А в основную библиотеку лучше ничего не инсталлировать. Здесь я полностью согласен с Mike_B, и сам так не поступаю. Гафисофт тоже советует создавать собственные корпоративные библиотеки не добавляя ничего в основную.
Более интересна идея Mike_B.
Еще есть такая проблема.
Я имею библиотеки от производителей мебели. В каждой может быть по 100 штук объектов и по 50 штук макросов.
В проекте надо использовать три объекта из одной библиотеки и один из другой. Я не хочу грузить всю библиотеку, но приходиться, потому что я не знаю какие макросы используются в этих элементах.
Менеджер загрузки библиотек усиленно читает все GUID, сравнивает, подсчитывает, вобщем, производит долгий и мучительный процесс загрузки.
А хотелось бы указать только элементы которые надо подгрузить. А макросы пусть ищет сам менеджер, начиная с близлежащих папок и заканчивая пространством всего диска (если понадобится). Эта работа должна, повидимому, происходить не через менеджер библиотек, а через команду Загрузить другой объект... > Из диалога открытия файла.
Записан
alakk
Пользователь
**
Офлайн Офлайн

Пол: Мужской
Сообщений: 51


« Ответ #7 : 16 Май 2007, 16:20:34 »

Впервые прочитал эту ветку и поразился: насколько правильное решение я принял для себя при формировании иного стиля программирования объектов библиотек.
Суть идеи вот в чем:
При написании библиотеки стандартным способом, т.е. изложенном в руководствах, возникают все те проблемы, о которых было изложено в этой ветке выше.
Я применил другой подход к организации данных - и выиграл то, что положение объекта (его скрипта физически) никак не влияет на его работоспособность в системе: достаточно подгрузить его один раз.
У меня все данные серии хранятся в самом элементе и напрочь отсутствует работа с винтом при активации элемента.
Вот к этому надо стремиться, либо же жестко прописывать путь установки. Причем для всех элементов, разрабатываемых командой. Чтоб была унификация.
Есть еще один путь:
Принять общие правила игры для команды при написании любых объектов, т.е. каждый элемент д.б. на своем, заранее определенном месте. Пусть это будет отдельный директорий или как-то еще (тут куча вариантов), но правила должны соблюдаться
Записан
Ilia_P
Новичок
*
Офлайн Офлайн

Пол: Мужской
Сообщений: 9



« Ответ #8 : 16 Май 2007, 18:44:12 »

прав Валерий, у каждого все равно свой приницип формирования библиотек объектов, я не копирую в папку с арчиком ничего лишнего кроме аддонов ...
Да, тут пожалуй сам GAG должен пояснить что это за установщик такой и как он себе это видит
 
 
« Последнее редактирование: 16 Май 2007, 21:47:48 от Valery W » Записан
Valery W
Глобальный модератор
*****
Офлайн Офлайн

Сообщений: 89


« Ответ #9 : 16 Май 2007, 21:49:38 »

>> alakk

С объектами, в которых надо задавать только их числовые характеристики все просто. Делать макросы содержащие эти характеристики, как это сделано в "Сортаменте ...", совершенно не нужно. Другое дело объекты, которые содержат видоизменяемые части. Например, писать в элементах всех кухонных шкафов скрипт для 10 ручек, 10 дверей, 7 кранов, 14 моек и т.д., нет смысла. Так что, макросы остаются востребованными.
Записан
alakk
Пользователь
**
Офлайн Офлайн

Пол: Мужской
Сообщений: 51


« Ответ #10 : 16 Май 2007, 22:00:43 »

Чтоб не захламлять форум:
_http://softmachine.ru/component/option,com_smf/Itemid,174/topic,5276.0/
Полностью согласен с Валерием
Ответ: Но для этого и существуют динамические массивы.
Единственное, что не поддерживается - картинки. Вот с этим будет проблема. Но она вполне решаема. Достаточно указать дорогу и наименование файла. Вот это должно быть жестко указано и согласовано всеми разработчиками.
Либо рисовать в UI линиями
« Последнее редактирование: 16 Май 2007, 22:04:33 от alakk » Записан
Mike_B
Пользователь
**
Офлайн Офлайн

Пол: Мужской
Сообщений: 84


« Ответ #11 : 17 Май 2007, 10:04:25 »

Все больше прихожу к мысли, что нужно уходить от "мегаобъектов" и, по-возможности, дробить их на подобъекты, тем самым реализуя суть структурного програмирования. Хороший пример - Сортамент  (Титова, если не ошибаюсь). Его легко вставить, например, в сборные перемычки, легко модернизировать. К винту он обращается только во время построения. Зачем возить за собой вагон цемента, если нужен один мешок?
Записан
alakk
Пользователь
**
Офлайн Офлайн

Пол: Мужской
Сообщений: 51


« Ответ #12 : 17 Май 2007, 12:34:08 »

Вот тут, Михаил, с тобой не согласен.
К винту происходит обращение всякий раз, когда активируется объект - если писать как Титов. Это большая задержка по времени.
А вот если ты разобрался с тем, что предлагаю я, то поймешь преимушества предлагаемой технологии.
А структурное программирование в ГДЛ (бейсике) не применишь: идеология другая. Если есть иные соображения - ПЛЗ
Записан
kudrjash
Новичок
*
Офлайн Офлайн

Пол: Мужской
Сообщений: 20


WWW
« Ответ #13 : 26 Май 2007, 19:15:15 »

Для установки библиотечных элементов можно также использовать SFX-архивы, в которые добавить команды для распаковки с указанием пути. Это можно сделать любым архиватором (WinRAR, WinZIP, 7-ZIP)
Записан
GAG
Администратор
*****
Офлайн Офлайн

Пол: Мужской
Сообщений: 273


GAG [Jaguar]


WWW
« Ответ #14 : 27 Май 2007, 09:28:37 »

Цитировать
Для установки библиотечных элементов можно также использовать SFX-архивы
SFX архив подразумевает создание .exe файла, что неприемлемо в данном случае, т.к. речь идёт об обычном архиве, в котором просто присутсвует дополнительный файл (коментарий к архиву) с описанием архива. Аналогию я уже привёл - установка плагинов Total Commander.
Записан
Страниц: [1]
Печать
Перейти в: