Re: Среды разработки
On 16.10.2012 18:25, "Артём Н." wrote:
16.10.2012 00:54, Alexander Danilov пишет:
Итог: занимает мало места, можно уложить на usb (при необходимости), на выходе
один бинарник под нужную платформу + файлы данных или упакованный инсталлятор.
Но с Tk интерфейсом.
К тому же, что понимается под "кроссплатформенным бинарником"?
Скомпилированный в машинный код файл или виртуальная машина для Tcl и
скрипт/байт-код, на ней выполняемый?
Под кросплатформенным понимается то, что можно собрать под win32, linux и тд из
одного дерева исходников:
make win => soft.exe
make linux => soft.elf
make all => make win32 linux
Что соберётся в итоге?
Насколько я понял, кроссплатформенность, в случае с tclkit, обеспечивается
каким-то подобием виртуальной машины?
Будет 1(один) .exe файл с интерпретатором и моей программой внутри. Работает, кушать не просит.
Впрочем для python/perl/ruby есть такие же способы упаковки в один файл, но там всё равно надо
какую-то библиотеку для gui использовать, что в итоге раздувает размер программы и увеличивает
количество проблем при развёртывании.
Так проще под cygwin собрать, и скорость выше будет.
Для GUI скорость в 99.99% не важна - пользователь всё равно медленнее.
А в тех случаях, когда она важна, есть способы улучшить скорость выполнения.
К тому же, небольшое отступление: я писал, что C++ - обязателен.
Небольшое отступление: для написания gui c++, мягко говоря, совсем не обязателен.
GUI не причём. Просто C++ используется везде, где ни попадя, поэтому привыкать к
среде, в которой нормальной его поддержки нет - не самый лучший вариант. И GUI
тут не при чём.
Если уж сильно приспичит, то можно использовать ffidl - расширение для tcl,
загружающее произвольную разделяемую библиотеку и вызывающую все нужные функции,
или самостоятельно написать расширение на c/c++ и вызывать из tcl. А тратить
время на вылавливание ошибок при работе с указателями/памятью на c++ - на это
времени нет.
На C++? Вы не путаете с C? Кажется, в C++ дела обстоят намного лучше.
Да? Это как раз с Си дела обстоят лучше, на мой взгляд, но спорить не буду, ибо на C++ не пишу вообще.
Reply to: