межплатформенные сценарии для окон, Linux, MacOS X [закрытый]

42
задан KarolDepka 14 April 2010 в 12:15
поделиться

6 ответов

Мне кажется, вы жонглируете на грани противоречия: вы хотели бы получить независимость от платформы (похвально), но также "близость к специфике ОС".

Если, однако, вы придаете немного больше значения независимости от платформы, я рассматривал идею использования groovy (более дружественного к java родственника ruby) для написания сценариев общего назначения. Когда вам это нужно, вы получаете специфическое для ОС поведение, вызывая команды оболочки ОС.

Моя мотивация немного другая: я нахожу код groovy более надежным, чем код bash, хотя мне тоже нужен хороший многоплатформенный инструмент для написания сценариев для проекта, который я разрабатываю.

4
ответ дан 26 November 2019 в 23:58
поделиться

Perl и Python доступны почти на каждой платформе

8
ответ дан 26 November 2019 в 23:58
поделиться

Я бы использовал C # с Mono.

1
ответ дан 26 November 2019 в 23:58
поделиться

Например, Ruby может управлять некоторыми специфическими для Windows вещами

Конечно, может, и в блоге Ruby on Windows вы можете найти много примеров, также есть глава в книге Pickaxe и в скромной книге.

2
ответ дан 26 November 2019 в 23:58
поделиться

Я большой поклонник Lua :

  • Синтаксис отдаленно похож на Паскаль и хорошо работает в сценариях.

  • Превосходное соотношение мощности и веса. Превосходная инженерия. Очень хороший дизайн.

  • Чрезвычайно переносимость на любую платформу с компилятором ANSI C.

  • Поддержка графического интерфейса через wxLua и другие привязки

  • Некоторая поддержка для сокрытия различий ОС в общих задачах, например, надстройка файловой системы Lua

  • Базовая система и библиотеки достаточно просты, чтобы вы могли понять все из того, что вы используете, но по-прежнему имеют отличные возможности по сравнению с bash / bat. Выразительная сила сравнима с Python или Ruby.

  • Вы не перегружены библиотеками и фреймворками, что может быть плюсом или минусом.

  • Есть отличная книга: Роберто Иерусалимши Программирование на Lua ; предыдущее издание можно получить бесплатно в Интернете .

  • Производительность превосходит tcl, perl, python, ruby ​​

  • Для еще большей производительности на оборудовании x86 существует LuaJIT.

  • Наконец, и это козырёк в дыре: если вы столкнетесь с какой-либо проблемой, связанной с платформой, легко написать код C для конкретной платформы и динамически загрузить его в сценарий Lua. . Lua был разработан с учетом этой задачи и отлично с ней справляется. Вы также можете легко погрузиться в C для повышения производительности (например, вычислить контрольную сумму MD5).

В течение последних 3-5 лет я постепенно переносил скрипты из bash / ksh / awk / sed / grep / perl в Lua. Я был очень доволен результатами.

18
ответ дан 26 November 2019 в 23:58
поделиться

Вы можете писать свои сценарии на Tcl .

  • синтаксис прост и ближе к тому, что вы ожидаете от скрипта;

  • он кроссплатформенный и будет работать на всех основных платформах;

  • вы можете легко создавать простые графические интерфейсы для ваших скриптов в Tk, которые также будут работать везде и использовать собственные элементы управления;

  • для функций, специфичных для Windows, вы можете использовать Twapi (привязки Win32 API ).

  • вы можете установить Tclkit, который представляет собой отдельный файл, представляющий собой весь дистрибутив Tcl. Здесь нет длительного процесса установки, скрытых файлов или загадочных каталогов;

    • вы можете легко разместить среду выполнения Linux, Windows и Mac на одном флэш-накопителе, так что у вас всегда будет под рукой интерпретатор, даже если он не установлен локально.
4
ответ дан 26 November 2019 в 23:58
поделиться
Другие вопросы по тегам:

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