¿Ruby sirve para programar aplicaciones para Windows?
Si.
Ruby es un lenguaje multiplataforma y eso incluye a
Windows.
por ejemplo un programa que lea las señales de un Gamepad USB
Para el desarrollo de tareas complejas (cuya implementación desde Cero impliquen un tiempo excesivo y/o una comprensión a nivel profesional que no tengamos) siempre puedes utilizar librerías especializadas, más conocidas como "gemas" (
gems) en
Ruby.
Las gemas puedes instalarlas comodamente utilizando el intérprete de
Ruby. Aquí tienes toda la info al respecto:
Con la gema
joystick al parecer puedes hacer lo que necesitas:
http://www.rubydoc.info/gems/joystick/0.0.0/Joystick/Deviceruby.exe gem install "joystick"
Y aquí tienes otras gemas relacionadas por si te sirviese alguna otra:
y emule el teclado
Para simular pulsaciones del teclado existen muchas gemas especializadas, pero en
Windows sencillamente puedes optar por utilizar los miembros de la tecnología
WSH (
Windows Script Host, muy conocida por su uso en el lenguaje
Visual Basic Script sobre todo).
Un ejemplo:
# -*- coding: Windows-1252 -*-
require "win32ole"
wsh = WIN32OLE.new("WScript.Shell")
wsh.SendKeys("{ENTER}")
wsh.SendKeys("Text")
wsh = nil
Documentación oficial:
¿en qué lenguaje se escribe el apartado visual del programa?
En los lenguajes de scripting como
Ruby y
Python puedes desarrollar aplicaciones de escritorio con interfáz gráfica, pero para ello primero te conviene elegir, descargar, instalar y empezar a utilizar un framework con el que construir los elementos que componen a una interfáz gráfica de usuario (es decir los controles, forms, etcétera).
En
Ruby hay muchísimas opciones para construir una GUI, la mayoria (sino todas) se basan en el framework multiplataforma de
TK (
Tkinter), o el de
Qt ("cute"). Solo por mencionar algunas opciones disponibles:
Rubt GTK,
QtRuby,
Shoes (
http://shoesrb.com/) y
VisualRuby (
http://visualruby.net/)PD: Hace muchos años que no utilizo
Ruby para nada, toda la información que he proporcionado es de memoria, y los enlaces a sitios web los he buscado primero en Google.
Saludos!