Уважаемые форумчане,
разрешите задать вопрос архитектурного характера.
Просто интерестно, у кого какой подход к организации проектов, использующих плагины? Скажем, у меня есть плагин для работы с железом, сделанный отдельным проектом. Плагины на основе классов + project packed libraries (lvlibp) (хотя можно использовать и не запакованные библиотеки).
Т.е., в готовом варианте все оформляется в пару файлов (lvlibp), где все запакованно внутри. Но, как лучше добавить все это дело в другой проект? Если добавлять так, то не будет возможности редактировать код - нужно будет редактировать "оригинальный" проект с плагином. Хорошо, если это уже много раз протестированная библиотека, в которой я уверен - но что если это свежий код, и есть возможность того, что что-то придется править? Тогда нужно будет делать правки, билды - и копировать их в целевой проект. Что, может быть, и не такая беда, но если у меня этих плагинов 10+ (скажем), то это проблематично.
Если же добавлять все без запаковывания в lvlibp, то будет куча файлов в целевом проекте... И опять будет проблема с поддержанием одинаковых, рабочих версий библиотек в оригинальной локации, и на "боевом" проекте.
Слышал, что для этого можно использовать SVN externals или же GIT submodules - но, честно говоря, опыта с этим у меня нет. Т.е. svn пользуюсь, но на простом уровне; а как работать с включением внешних репозитариев, не знаю. Но не суть.
Суть вот в чем - лучше все-таки использовать запакованные библиотеки, или работать напрямую с их "исходным кодом", т.е. библиотеками как они есть? Какой подход менее проблематичный? Всем заранее спасибо
Плагины - организация проектов; lvlibp vs lvlib
-
- user
- Сообщения: 97
- Зарегистрирован: 21 июн 2011, 15:05
- Награды: 1
- Версия LabVIEW: 2009-2017
- Откуда: Novosibirsk
- Контактная информация:
Re: Плагины - организация проектов; lvlibp vs lvlib
Можно просто сделать Post-build Action, который сам будет копировать в нужную директорию скомпилированные либы.
- Вложения
-
- Post-Build. Move Build (.lvlibp).vi
- (12.29 КБ) 215 скачиваний
Uniscan Research
-
- leader
- Сообщения: 932
- Зарегистрирован: 17 янв 2016, 15:02
- Награды: 1
- Версия LabVIEW: 6.1,8.5,20
Re: Плагины - организация проектов; lvlibp vs lvlib
MGI Solution Explorer by Moore Good Ideas, Inc.- http://sine.ni.com/nips/cds/view/p/lang/ru/nid/215131
1. Build complex sets of related projects in the correct order
2. Makes using packed project libraries fast and easy
3. Any developer can easily build a project with no special knowledge
4. Supports running a VI, shell commands, and digital code signing
5. Also supports subsolutions and creating self-extracting zip files
6. Custom solution items allow developers to extend the framework to meet any specific need
MGI Solution Explorer 2.0 - http://www.mooregoodideas.com/mgi-solution-explorer-2/
1. Build complex sets of related projects in the correct order
2. Makes using packed project libraries fast and easy
3. Any developer can easily build a project with no special knowledge
4. Supports running a VI, shell commands, and digital code signing
5. Also supports subsolutions and creating self-extracting zip files
6. Custom solution items allow developers to extend the framework to meet any specific need
MGI Solution Explorer 2.0 - http://www.mooregoodideas.com/mgi-solution-explorer-2/
-
Kosist
- expert
- Сообщения: 1236
- Зарегистрирован: 21 фев 2011, 23:44
- Награды: 2
- Версия LabVIEW: 2013-2020
- Благодарил (а): 23 раза
- Поблагодарили: 30 раз
- Контактная информация:
Re: Плагины - организация проектов; lvlibp vs lvlib
Post-build Action в этом случае не решение, т.к. они не покрывают случая, когда я хочу либу скопировать в три других проекта. Я могу прописать пути на своем компе, но если распространять либы среди разработчиков, то пути не будут совпадать. Кто-то работает на диске D, кто-то на диске Е; кто-то называет локальную директорию полным именем проекта, кто-то сокращенным, и т.д. В рамке одного проекта да, это работает; но при распространении кода - будут проблемы...Aleksandr писал(а):Можно просто сделать Post-build Action, который сам будет копировать в нужную директорию скомпилированные либы.
Blackman, спасибо! А Вы работали с этим тулом?Blackman писал(а):MGI Solution Explorer by Moore Good Ideas, Inc.- http://sine.ni.com/nips/cds/view/p/lang/ru/nid/215131
Но это все не снимает вопроса, что-таки лучше - распространять в новые проекты запакованные либы, или же не запакованные?
Плюс я думаю насчет использования их в TestStand - а на форумах некоторые пишут, что TestStand не очень дружит с lvlibp, т.к. могут все равно возникать конфликты виаек с одинаковыми именами. Плюс опять же, дебажить тест-последовательность будет тяжело, и править в случае lvlibp...
Мы делили апельсин - много наших полегло...
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
- 6 Ответы
- 1647 Просмотры
-
Последнее сообщение ladik