-
Юр, именно это я и сказал изначально :)
ЗЫ: вообще я думал что ты оветишь в плане: спили мушку :)
-
> Rouse_ © (05.03.16 19:32) [40] > именно это я и сказал изначально
Изначально ты сказал не это, а вот что: "BPL это самый простой способ убить хорошую идею с плагинами".
На самом же деле BPL тут ни при чем. Проблема глубже.
-
Всем привет! Давно не заходил... Мы используем bpl, причем весьма активно. И дело не в экономии места на диске, хотя оно и весьма существенно... У нас комплекс, состоящий из примерно десятка ехе и под сотню dll. Если несколько мб общего кода вынести в bpl, то экономия составит сотни мб. Но, с сегодняшними дисками это ерунда... Но, есть и другие плюсы. На мой взгляд, основной в следующем: Представим, что есть некие базовые классы, наследники которых используются во всех эти exe и dll... Теперь мы что-то меняем в приватных методах одного из бальзовых классов. Если работаем без bpl, то придется перекомпилить всю эту ватагу из exe и dll. В противном случае - компилим только один bpl и отдаем его заказчику... Профит.
-
> Rouse_ © (05.03.16 14:04) [25]
Саш, я правильно понял, что в качестве плагинов вы используете DLL?
-
Да, конечно
-
в общем, всё зависит от частного случая, политики партии, требований заказчика и настроения. как и всегда.
-
> Rouse_ © (05.03.16 21:15) [44]
И при этом компилируете EXE и эти DLL без RT-пакетов?
-
> Если работаем без bpl, то придется перекомпилить всю эту ватагу из exe и dll. В противном случае - компилим только один bpl и отдаем его заказчику... часто слышал такие объяснения, и ни разу не видел это реально работающим... не, может мне просто не везло, но обычно это выглядит так, с точки зрения заказчика - - мы тут кое чего исправили, замените файл. - заменили, вообще запускаться перестало с ошибкой ... - хм. тут наверное еще вот этот модуль нужен. - не получилось. ... дальше длинная переписка, с высылкой все нового и нового. в итоге вообще ВСЕГО, как именно у разработчиков стоит. и только после этого начинает работать. ну более менее т.к. у тех у кого подобные мысли почему то не возникает других, ну типа сделать сетап, и чтобы он сам либо устанавливал либо апдейтил нужное... и не говорите что он у вас есть, в сетапе должно быть все, вместе с модулями, без необходимости "кусочно-апдейта". а раз там все то какая разница 1-ехе файл обновлять, 100 вместе с dll, или 200 с bpl??? (цифры "с потолка").
> [0] 1 не использую 2 видел, приходилось "обслуживать". (что за прога говорить смысла нет, ее давно переписали на "яве", т.к. "все проблемы из-за глючной дельфы, нужно"... хотя, после переписывания проблемы никуда не делись просто стали другими, что подсказывает что "дело было не в бобине" :))
-
в общем резюме такое. пакеты не работают так как задумано у тех кто их не использует, и работают как и задумано у тех кто их использует лет 15-16 как уже. без длинных переписок с заменой "всего" в конце их.
-
> - мы тут кое чего исправили, замените файл. > - заменили, вообще запускаться перестало с ошибкой ...
Тестирование? Не, не слышал.
-
> Юрий Зотов © (05.03.16 19:01) [39] > > > Rouse_ © (05.03.16 16:08) [31] > > Саш, проблема не в BPL, а в несовместимости версий Delphi > на уровне откомпилированного кода.
Об этом я и говорил конкретно в [19], и в топике в целом. Из-за этого все упомянутые доводы в пользу RT-пакетов просто блекнут. А эти проблемы несовместимости не исчезнут никогда. Имхо это нереально. Дай боже чтобы проблем несовместимости исходников разных версий было как можно меньше! (И в целом папаша Борланд с этим справляется, несмотря на многократные смены "места жительства". :)
-
> Kerk © (05.03.16 23:08) [49] > > - мы тут кое чего исправили, замените файл. > > - заменили, вообще запускаться перестало с ошибкой ... > Тестирование? Не, не слышал.
Не всем так везёт с конторой, как тебе. Тестирование по всем правилам нужно производить на "стенде, создающем условия полностью аналогичные реальному объекту". А это не всегда возможно.
-
> пакеты не работают так как задумано у тех кто их не использует, и работают как и задумано у тех кто их использует лет 15-16 как уже. скорее в них нет смысла если использовать правильно, а так как используют получается хреново. и еще проблемка... "задумывают" часто люди оторванные от реальности, в чисто "разработческих" конторах. а вот "парятся" с ними в поддержке.
> Тестирование? Не, не слышал. само собой, откуда тестирование в логике "компилим только один bpl и отдаем его заказчику..."? о совместимости версий тоже не слышал.
-
Kerk © (05.03.16 23:08) [49] ты вообще когда нибудь поддерживал программу у более чем 1-го клиента? а например с полтысячи. и они у тебя все были "дрессированными" на единой версии, обновлялись манипулируя файлами, все с доступом в папку установки и т.д. ??? ну, присоеденюсь > Не всем так везёт с конторой, как тебе.
-
> все были "дрессированными" на единой версии, обновлялись > манипулируя файлами, все с доступом в папку установки и т.д. ???
Подходя к вопросу диалектически, это только при коммунизме возможно.
-
> sniknik © (06.03.16 00:09) [53] > > Kerk © (05.03.16 23:08) [49] > ты вообще когда нибудь поддерживал программу у более чем > 1-го клиента?
Я поддерживал программу с двумя миллионами клиентов.
-
Но важно не это. Важен учет и версионирование. Тогда просто спросив у пользователя список версий линкующихся библиотек можно создать "условия полностью аналогичные реальному объекту". Я думаю многие заметили, что в окне About у многих программ или где-то рядом с ним часто можно такой список библиотек увидеть.
Вот например в Delphi в окне About есть кнопочка "Version Info". Но учет мелких деталей - это для трусов.
-
> Kerk © (06.03.16 01:03) [56] > > Но важно не это.
В каждом конкретном случае важно что-то . Либо это, либо то, либо что-то ещё. Главное что во всех случаях от RT-библиотек пользы очень мало, а проблем может быть много. И даже если эти проблемы возникают из-за малограмотности тех, кто их использует, это только минус для этих библиотек. :)
-
> Тогда просто спросив у пользователя список версий линкующихся > библиотек
Действительно, повезло с конторой
-
> Я поддерживал программу с двумя миллионами клиентов. и что реально "отдавал" каждому по обновленному файлу, с учетом версии остального у каждого, желания обновляться и т.д.? что то мне подсказывает, что у тебя в этом случае система была другая, например описанный "сетап" с "все включено". ну или ты врешь. учесть все, включая блаж клиентов невозможно.
|