2010-04-14 2 views
2

Я хотел бы экспортировать проект сценария автоматизации Bash Shell в проект GUI, который может работать как в Windows, так и в Linux. Какой язык программирования лучше подходит для этого?Приложение GUI для Windows и Linux

+2

Что такое '' Bash Shell Automation Script Project'? В общем Python (+ PyQt как GUI lib) может быть хорошим кросс-платформенным решением. – ChristopheD

ответ

0

Какая бы вам ни была удобна. Mono позволяет использовать C# для такого рода вещей; Java поддерживается на обеих платформах. Я уверен, что другие могут быть предложены. Но палка, где вам больше всего нравится.

0

Вы не можете «экспортировать» его. Я не знаю, действительно ли вы можете «портировать» его, не наследуя все проблемы, которые обычно возникают в нетривиальных сценариях оболочки.

Лучше всего переписать приложение на языке кросс-платформенных языков, таких как Python, Perl, Java и т. Д. (Выберите то, с чем вам удобно, как предложил DAvid). Я бы порекомендовал язык сценариев, поскольку исходный скрипт был в оболочке, он будет более точно отражать его, чем скомпилированный язык, такой как C или C++. Для кросс-платформенной библиотеки GUI существует TK (уродливая, но быстро работающая с использованием Python или других таких языков), WX (моя рекомендация) или Qt (как предлагал ChristopheD).

+0

Спасибо, Python выглядит для меня хорошим выбором. – Kiran

+0

Python действительно лучший выбор для кросс-платформенной разработки. – Shyam

+0

Shyam, это зависит от того, что вы планируете делать, но являетесь кросс-платформой * - это одно из его преимуществ. –

0

Не уверен, что если это действительно отвечает на ваш вопрос, но ...

Если вы хотите разработать приложение с графическим интерфейсом, который будет работать кросс-платформенный, которая звучит как хорошее место для Java. Платформа SWT (разработанная людьми eclipse) позволяет вам создать графический интерфейс, который будет выглядеть на большинстве платформ (Windows, Mac, многие преимущества Unix/Linux).

См:

http://www.developer.com/java/other/article.php/3330861/SWT-Programming-with-Eclipse.htm

Но, как две другие плакат указал, как правило, это быстрее, чтобы работать с тем, что вы знаете.

1

Qt будет очень хорошим выбором.

Qt - отличный инструмент для быстрого создания графического интерфейса на нескольких платформах.

PLUS U получить код в C++, который, я предполагаю, является тем, что U идеально использовал бы в проекте ур.

http://qt.nokia.com/

Хорошее место для начала было бы "C++ Программирование GUI с Qt 4, второе издание"

(Google это, чтобы загрузить версию в формате PDF ;-))

Удачи!!

0

hmmm BashScript с графическим интерфейсом? Да, человек, мы орехи .. = P

Взгляните на мой вопрос, я сделал некоторые исследования в этой области ...

How to bring an image inside a GUI? Its possible in BashScript or Let's learn a new language?

Думаю, вы можете закодировать это в скрипте. Или что-то очень близко к этому.

0

Интересно, доступен ли Desktop Kornshell (DtKsh) для Linux и Windows.

Еще в 1990-х годах настольный компьютер Kornshell стал частью CDE (Common Desktop Environment). Это была попытка Unix-систем представить единый рабочий стол GUI для конкуренции с Windows. Вы знаете, как хорошо это сработало.

Ksh 93 и BASH составляют около 99% от их синтаксиса. (Черт возьми, мне даже нравится Ksh лучше, но потом я помню свой первый жесткий диск - потрясающую 20-мегабайтную модель размером всего 5 дюймов. Как они их так мало?). Однако Desktop Kornshell добавляет слой GUI на top of Ksh 93. Вы можете взять свой стандартный скрипт Ksh, добавить просто добавить графический слой прямо сверху. Я сделал это с помощью нескольких моих скриптов Kornshell. Даже написал графическую почтовую программу на основе Mail Handler (MH).

к сожалению, самый простой способ получить dtksh это взять машину времени назад в 1994

Шорт того, я действительно не знаю, если DtKsh все еще доступны. Я считаю, что MKS Toolkit все еще приходит с DtKsh. ММС Toolkit как Cygwin, если вы взимаете несколько сотен долларов за Cygwin. Я сомневаюсь, что Cygwin имеет пакет DtKsh (может быть, они и есть). e с пакетами DtKsh, но они, возможно, пошли по пути пакетов UUCP, SCCS и RCS.

Однако, если DtKsh доступен, это будет ваш лучший выбор. Вы можете легко изменить свои сценарии Bash, чтобы обеспечить удобный интерфейс графического интерфейса.

Я знаю, что кто-то упомянул Mono и C#, но для этого требуется .NET-сервер. Это означает, что вам не нужно переписывать все, но настроить сервер IIS тоже.

Java, вероятно, будет вашим первым выбором. Java - это мощный язык, и разработчикам Java довольно легко найти. Рамка Swing поставляется с Java и обеспечивает адекватный графический интерфейс. У меня есть несколько приложений Swing (например, мой браузер LDAP), которые я использую совсем немного. К сожалению, большинство разработчиков Java никогда не касались Swing.

Python также поставляется с графическим интерфейсом, но, вероятно, меньше разработчиков Python, которые использовали оболочку графического интерфейса, чем разработчики Java, которые использовали Swing. Тем не менее, Python является популярным языком, и доступно множество ресурсов и разработчиков. Кроме того, зная Python и Java-разработчиков, я бы сказал, что вам, возможно, повезло, что разработчик Python сможет изучить программирование на Python GUI, чем получить Java-разработчика для изучения Swing.

Итак, ваш лучший выбор - посмотреть, сможете ли вы получить DtKsh. Если нет, я бы пошел с Java или Python.

Смежные вопросы