Как Вы управляете своими Проектами Delphi со сторонними компонентами в Управлении версиями?

Задача 1) Дело не в архитектуре, а скорее в дизайне сервиса. Основанный на принципах проектирования сервисов и 8 сервисных принципов разработки , этот сценарий в значительной степени нарушает множество определенных практик. Сервисный центр должен быть совместимым и обеспечивать возможность обнаружения сервисов. Способ предоставления услуги должен учитывать сценарий изменения URL-адреса.

Технически это можно решить с помощью DNS, обратного прокси-сервера или простого добавления определенного статического URL-адреса, который может выполнять вызов службы, и перенаправить на нужную операцию службы в терминологии SOAP или ресурс API в терминологии REST.

Он должен быть статическим, как http://example.org/weather.asmx, а weather.asmx будет содержать другие операции, которые могут быть вызваны и изменены динамически, но h ttp://example.org/weather.asmx должен быть постоянным.

Задание 2) Если вам нужно добиться этого с помощью REST, вы должны понимать, как работает HTTP-код и как работать без сохранения состояния. Развивайте свои навыки с помощью бесплатных онлайн-тренингов, например, от udemy.com по разработке API.

Я бы предложил следовать учебному пособию, блогу и видео-учебнику на тему « разработать и внедрить API с помощью учебника JAVA ».

24
задан Paul Roub 17 September 2015 в 21:58
поделиться

5 ответов

Если у нас есть источник, то мы включаем это в наш репозиторий под отдельной папкой.

, Если у нас нет источника, затем мы просто сохраняем новые двоичные файлы (место рождения, dll, безотносительно) в репозитории, и включаем установку / инструкции по использованию в документе установки.

Это похоже на это:

\root
    \third_party_stuff
        \vendor1  --we *do* have the source for this
            \src
            \bin
        \vendor2  --we *do* have the source for this
            \src
            \bin
        \vendor3  --we don't have the source for this one
            \bin
    \our_stuff
        \project1
            \src
            \bin
        \project2
            \src
            \bin
13
ответ дан JosephStyons 29 November 2019 в 00:08
поделиться

С Подверсией я использую функцию внешнего облика. Это помогает использовать сторонний материал в нескольких проектах; при проверке проекта Вы получаете внешние зависимости также.

, Если у Вас уже нет его, необходимо получить копию Прагматического Управления версиями Используя Подверсию. Это - замечательная книга о функциональности Подверсии и как сделать вещи. В то время как это ссылается на SVN от командной строки, информация также легко переводима к GUI в TortoiseSVN.

Для переустановки компонентов в Delphi для более старых проектов, я обычно экспортирую ключи реестра для любой версии Delphi, используемого в папку проекта, и затем проверяю что.REG файл в Подверсии наряду с проектом. Можно легко проверить проект, экспортировать существующий раздел реестра Delphi для соответствующей версии Delphi, импортировать.REG файл из исходной папки проекта и затем запустить Delphi со всех установленных компонентов.

До "двоичного BPL" проблема, позор Вам! Если у Вас есть проекты в зависимости от сторонних программ, необходимо купить источник для них. Тем путем Вы защищены от той обанкротившейся компании, или отбрасывающий поддержку компонентов или новые выпуски Delphi, которые не совместимы. Я всегда получаю источник для сторонних компонентов; если источник не доступен, я нахожу другой продукт или пишу код сам. Это назвало самосохранение. :-)

11
ответ дан Ken White 29 November 2019 в 00:08
поделиться

Во-первых, я соглашусь и с Ken и с Fabricio, что Вы должны иметь исходный код для всех компонентов, которые Вы используете в проекте. Что-либо еще просто напрашивается на неприятности.

Мы не используем Подверсию для нашего Управления исходным кодом, но я предполагаю то, что мы делаем все еще было бы применимо...

Каждый проект, что мы продолжаем работать, имеет полную копию всех компонентов (источник), используемый в том проекте. Когда мы выпускаем, мы создаем ответвление выпуска, которое включает компоненты, а также источник проекта. Каждый проект включает свой собственный каталог BPL.

Мы всегда создаем отдельные ярлыки для выполнения Delphi для каждого проекта (или ответвление проекта), что мы хотим продолжить работать и использовать-R параметр командной строки для установки уникального Ключа реестра для настроек Delphi для того проекта.

Мы затем удостоверяемся, что переопределяем переменную среды Пути в Delphi для указания на наш каталог BPL проекта вместо нормального каталога Delphi BPL.

Мы устанавливаем BPL и выходные каталоги DCP для всех компонентов, чтобы быть локальным каталогом BPL проекта.

Это позволяет нам иметь несколько версий Delphi с несколькими версиями проектов с помощью различных версий компонентов без любых проблем.

2
ответ дан Alistair Ward 29 November 2019 в 00:08
поделиться

Я соглашаюсь с Ken White на этом: сторонние компоненты Дельфи, используемые в производственном коде

, должны иметь исходный код

Период. Скомпилированные дистрибутивы только для двоичных файлов в целях оценки ТОЛЬКО . Это - наша политика здесь.

Что касается вопроса: Я на самом деле не помещаю их на VCS. На самом деле я использую последнюю версию что мои компиляции проектов и работы. Путаница с системой, поиском, библиотекой, и так далее... соединяет каналом, не делает ценности. 2 JVCL на той же машине или прибывающий назад и вперед версии каким-либо новым проектом? ARRRRGH.

, Если я должен использовать старую версию для системы обслуживания, отбросьте новый VM и установите последнюю версию.Работает? Хорошо. Нет? Это остается на VM, пока я не обнаруживаю способ интегрироваться на основной среде.

Одна версия каждой вещи более чем достаточно.

1
ответ дан Fabricio Araujo 29 November 2019 в 00:08
поделиться

Стоит упомянуть что некоторые компании как удаленный доступ предложения LMD к их собственному репозиторию SVN для клиентов с подпиской поддержки. Я нахожу что хороший способ получить быстрый bugfixes для критических проблем.

1
ответ дан Roddy 29 November 2019 в 00:08
поделиться
Другие вопросы по тегам:

Похожие вопросы: