При написании сценария установки я быстро обнаружил, что у меня будут проблемы с кроссплатформенностью, а сценарии bash сложно поддерживать. Я решил поискать более чистое решение, более кроссплатформенное.
Цель состоит в том, чтобы интеллектуальный скрипт вынюхивал компоненты системы пользователя и как можно меньше взаимодействовал с пользователем. При этом я подумал об этих языках:
- Python — кроссплатформенный, и многие другие программы полагаются на него, поэтому он может уже присутствовать
- Javascript-nodejs требуется частью моего приложения, но он немного неуклюж для вызовов exec.
Есть ли языки, которые лучше подходят для этого приложения?
Требования:
- Available on all platforms
- May be distributed as part of my application if small enough
- Изменений версий практически нет, поэтому Ruby отсутствует.
- *nix только сейчас, но со временем будет работать на Windows
- Maintainable
- Clear syntax (Perl is out)
- Модульный (если я обнюхиваю ОС, я могу включить отдельный код для ОС)
- Возможность загрузки файлов (неудовлетворенные зависимости)
- Capable of relatively complex scripting tasks
- Testing for used HTTP ports
- Чтение и разбор файлов для данных конфигурации
- Проверка разрешений и изменение каталогов недостаточных привилегий
- Открытый источник