Форум » Для флейма » Смотрю, 22.01.2011 обновился FastReport для Harbour. » Ответить

Смотрю, 22.01.2011 обновился FastReport для Harbour.

PSP: Хотелось бы от Сергея Спирина услышать, что нового? :)

Ответов - 77, стр: 1 2 3 4 All

vvv: VFP имеет встроенный инсталлятор и при подготовке дистрибутива включит в него все необходимые библиотеки А в клиппере ничего включать не надо, все включено в exe-файл. Лично для меня этот фактор имеет большое значение. Ну не люблю, когда помимо исполняемого файла нужно тащить за собой еще что-то типа dll, BDE и прочее.

yury: vvv пишет: А в клиппере ничего включать не надо, все включено в exe-файл. Лично для меня этот фактор имеет большое значение. Я так понимаю оверлеи не приходилось делать ?

vvv: Это если большой проект. Но для большинства случаев достаточно одной exe-шки + файлы dbf. Имхо, еще одно преимущество клиппера и харбора - они не требуют инсталляции. Скопировал каталоги, если надо, подправил bat-ники - и в путь, сиди пиши на любом компьютере.


Pasha: vvv пишет: Имхо, еще одно преимущество клиппера и харбора - они не требуют инсталляции. Я все что надо записал себе на флешку Вытащил из кармана, вставил в любой комьютер, и через минуту могу программировать Но к использованию dll и прочего это не относится

vvv: Ну это я к слову, к вопросу "Почему клиппер (харбор)?"

Sergey Spirin: vvv пишет: Скопировал каталоги, если надо, подправил bat-ники - и в путь, сиди пиши на любом компьютере. Pasha пишет: Я все что надо записал себе на флешку Вытащил из кармана, вставил в любой комьютер, и через минуту А почему вы думаете, что это невозможно в фоксе? vvv пишет: А в клиппере ничего включать не надо, все включено в exe-файл. А вот это уж очень сомнительное достоинство Особенно, глядя на размеры этого получаемого exe... По большому счету подобное "достоинство" практически блокирует разработку больших проектов, оставляя клиппер(харбор) в "своих штанишках".

Pasha: Sergey Spirin пишет: А почему вы думаете, что это невозможно в фоксе? Почему невозможно ? Я, правда, видел только ранний vfp6 еще 1998 года, так там его можно было не инсталлировать, а просто переписать папку и запускать на другом компьютере. Простые команды он выполнял, насколько полноценно можно в нем программировать - не знаю. И как дело обстоит в более старших версиях - не знаю. Но, как мне кажется, такое использование vfp запрещено лицензией. С харбором же все предельно тривиально. Во времена до флешек я ходил с маленьким трехдюймовым cd (потом dvd) в кармане и мог сходу начать работу на совершенно любом компьютере с windows. Когда появились флешки - стало еще проще. И с лицензией вопроса не возникает. А как сейчас с этим обстоит в Дельфи ?

Pasha: Sergey Spirin пишет: А вот это уж очень сомнительное достоинство Особенно, глядя на размеры этого получаемого exe... По большому счету подобное "достоинство" практически блокирует разработку больших проектов, оставляя клиппер(харбор) в "своих штанишках". В харборе можно использовать и первый способ с одним большим exe, и второй. Это кому как нравится. Я использую второй. Для всех библиотек, которые используют программы, собираю dll. Ну и harbour.dll содержит vm-машину и стандартные либы харбора. harbour.dll получается небольшой по нынешним меркам - 2.3М. Исполняемый модуль программы содержит только свой пи-код и ничего больше, поэтому сами exe получаются очень компактные. Для всего что можно собираю dll. Скажем, для rddads. Сделал 2 варианта rddads.dll - настоящий - там где стоял ads, и заглушку, там где его не было. Сейчас, поскольку полностью отказался от ads (на этой неделе последнего клиента перевел на letodb) - просто убрал эту dll

Sergey Spirin: Pasha пишет: Почему невозможно ? Я, правда, видел только ранний vfp6 еще 1998 года, так там его можно было не инсталлировать, а просто переписать папку и запускать на другом компьютере. Простые команды он выполнял, насколько полноценно можно в нем программировать - не знаю. И как дело обстоит в более старших версиях - не знаю. Но, как мне кажется, такое использование vfp запрещено лицензией. С харбором же все предельно тривиально. Во времена до флешек я ходил с маленьким трехдюймовым cd (потом dvd) в кармане и мог сходу начать работу на совершенно любом компьютере с windows. Когда появились флешки - стало еще проще. И с лицензией вопроса не возникает. А как сейчас с этим обстоит в Дельфи ? Понятно, что никакой инсталлятор не делает ничего "волшебного" Поэтому любой продукт можно заставить работать с флэшки. Как в Харбуре надо все равно прописывать пути хотя бы, так и здесь, что-то в реестр прописать, какой-то COM зарегистрировать и т.п... Ясно, что и Фокс и Дельфи продукты платные и такое юзание будет нарушением лицензионного соглашения. Вот только мне не очень понятно подобное желание... Что называется "нафига козе баян?" Что-то за многие годы не припомню я у себя такого желания или потребности - воткнуть флэшку в КАКОЙ-ТО комп и сразу начать программировать

Sergey Spirin: Pasha пишет: В харборе можно использовать и первый способ с одним большим exe, и второй. Это кому как нравится. Я использую второй. Для всех библиотек, которые используют программы, собираю dll. Ну и harbour.dll содержит vm-машину и стандартные либы харбора. harbour.dll получается небольшой по нынешним меркам - 2.3М. Исполняемый модуль программы содержит только свой пи-код и ничего больше, поэтому сами exe получаются очень компактные. А расскажите об этом чуть подробнее, я похоже здесь многого не знаю. Какой синтаксис этого? Какие dll при этом получаются? На каком уровне идет взаимодействие исполняемых модулей? И как решается (решается ли?) главная проблема - типизация объектов между модулями? Последнее, не из простых задач, Microsoft решая эту проблему в свое время породил COM, Borland сделал пакеты - dpl/bpl. Есть ли такая проблема в Харборе?

Pasha: Sergey Spirin пишет: А расскажите об этом чуть подробнее В стандартную поставку харбора включена harbour.dll и harbour.lib, которая содержит vm-машину и все стандартные либы харбора - подсистему rdd, терминалы, rtl, кодовые страницы, вобщем - все ядро харбора Если при линковке указать эту библиотеку, то будет сформирован exe, который и будет работать с этой dll harbour.dll загружается статически при старте программы. Можно собрать harbour.dll, включив в нее и другие библиотеки. Я, к примеру, включаю ct. Можно собрать без ненужных модулей Можно библиотеку своих функции собрать тоже как dll, которая опять таки вызывает функции из harbour.dll Эта dll также будет загружаться статически Поскольку харбор - нетипизированный язык, то с типизацией вообще не возникает никаких проблем. Функция из dll вызывается по ее имени (символу), а с типами параметров она уже имеет дело сама Но это касается только харбор функций, с функцими на си так не побалуешь Это очень удобно. Скажем, я изменяю какую-то функцию из своей dll, могу добавить новые параметры. Пересобираю эту dll. При этом exe, которые работают с этой dll, можно не пересобирать. Могу в какой-то модуль добавить новые функции, exe опять таки не пересобираю. Удалять и переименовывать функции не могу - exe не загрузится с сообщением "точка входа HB_FUN_XXX не найдена" Я собираю свой набор dll исходя из удобства их последующего обновления. Скажем, harbour.dll обновится только при смене версии харбора. Из этих соображений я не включил в нее rddleto, который обновляю раз в несколько месяцев, а оформил ее как отдельную dll. И так с другими Кроме статической загрузки библиотек dll, их можно загружать и динамически

Pasha: Sergey Spirin пишет: Вот только мне не очень понятно подобное желание... Что называется "нафига козе баян?" Что-то за многие годы не припомню я у себя такого желания или потребности - воткнуть флэшку в КАКОЙ-ТО комп и сразу начать программировать У каждого свои задачи, способы их решения и режим работы. Мне, к примеру, часто приходится сдавать работу на террирории заказчика, часто в другом городе И опция "оперативного развертывания" при этом совсем нелишняя, экономится масса времени.

Sergey Spirin: Pasha пишет: В стандартную поставку харбора включена harbour.dll и harbour.lib, которая содержит vm-машину и..... Pasha пишет: ...Можно собрать harbour.dll, включив в нее и другие библиотеки. Я, к примеру, включаю ct..... Что-то я не понимаю, а какими языковыми все это делается? Это все на С? Ну, по С у меня вопросов нет, а что добавляет к этому Харбор? Правильно ли я понимаю, что все это чисто процедурные Win32 dll-и с некоторой предустанавливаемой инициализацией набора API-функций из harbour.dll? Pasha пишет: Поскольку харбор - нетипизированный язык, то с типизацией вообще не возникает никаких проблем. Здесь, похоже, вы не поняли. С появлением классов/объектов вся эта нетипизированность останется воспоминанием И здесь то как раз основные проблемы и возникают. Как организовать единое наследование на совокупности исполняемых модулей? Как организованы полиморфные вызовы? Кстати, чуть в сторону, Фоксовики считают введение в xBase нетипизированности переменных в свое время большой ошибкой.

Sergey Spirin: Sergey Spirin пишет: Как организовать единое наследование на совокупности исполняемых модулей? Как организованы полиморфные вызовы? Хотя, возможно драматизирую. При наличие vm и достаточно жесткой организации модулей "под wm" все становится проще. Microsoft и Borland решали эти проблемы под native-код и в общем виде.. Pasha пишет: У каждого свои задачи, способы их решения и режим работы. Мне, к примеру, часто приходится сдавать работу на террирории заказчика, часто в другом городе И опция "оперативного развертывания" при этом совсем нелишняя, экономится масса времени. Ноутбук конечно подороже флэшки будет, но есть очень недорогие модели

PSP: Sergey Spirin пишет: Ноутбук конечно подороже флэшки будет, но есть очень недорогие модели Флэшку или внешний HDD намного легче носить, чем ноут. :)

Sergey Spirin: PSP пишет: Флэшку или внешний HDD намного легче носить, чем ноут. :) Ну вот и добрались до самых глубинных причин нелюбви к Фоксу Оказывается то, все достоинства у Фокса виртуальные! IDE там всякие, LocalSQL-и. А недостатки то материальные! 2 кг. лишнего веса на шею!!

PSP: Про фокс я ничего не упоминал. Лишь сравнил ноут и флэшку. :) А что касается сравнения Фокса и Харбора, по мне - сравнивать их не совсем корректно. Кто к чему привык или исторически за что зацепился. Если, к примеру, у кого-то есть наработки на Клиппере, то логичнее использовать Харбор, чем Фокс. Это - всего лишь пример и мое имхо, разумеется. :)



полная версия страницы