lunes, 3 de diciembre de 2012

Algoritmo básico de electricidad Perl/Gtk3

Esta vez vamos a hablar  de programación funcional desviando las señales de botones a una subrutina:


En wikipedia se refiere a eso,aunque como soy autodidacta no estoy muy seguro XD así que si alguien es programador de alto nivel dígame si estoy en lo correcto,de que esto es programación funcional.

Lo que vamos a hacer es el algoritmo básico de electricidad,como funciona en nuestra casa.

Comienza llegando la energía desde la calle,pasa el parámetro del switch (abajo o arriba la palanca) y manda la energía a la casa,que seria apagadores,contacto,etc esto es básico o prácticamente obvio.

Pero bueno lo que hace este programa es simular eso,osea lo siguiente,carga una imagen que simula el foco apagado,tiene dos interruptores(hechos con el widget de Gtk3 llamado switch),uno que simula el switch y otro que simula el apagador,si el apagador es encendido prende el foco(carga otra imagen de un foco prendido) pero solo si el switch esta encendido.

Solo hay una dos cosas para que les sirva este programa

1.Necesitan usar Gnome 3 y tener instalado el modulo de perl Gtk3


Para ello(En terminal):

su

cpan

install Gtk3
2.No tengo no idea de diseño gráfico y el foco se ve  un poco muy feo, así que si pudieran cambiarlo estaría muy bien :D

Bien aquí un vídeo



Este es el enlace de la carpeta con las imágenes y script

Enlace

Y este es el código

Enlace 

Espero que les sirva para entender mas como funcionan las sub rutinas en Perl, ya que esto solo se trata de recibir señales y hacer algo con ellas (basadas en la orden de la función/rutina)

Eso es todo


4 comentarios:

  1. Te quedo muy bonito el código Damian ^^

    Y si, es programación funcional en teoría,muy poca teoría....

    Ya que perl es un lenguaje de programación imperativo y aquí solo usaste subrutinas enlazadas.

    Tienes que leerte que es programación imperativa, funcional y orientada a objetos XDDD

    Pero simulaste muy bien la electricidad casera ^-^

    ResponderBorrar
    Respuestas
    1. O_O

      Mejor quito eso de programación funcional de la entrada XD

      Gracias por el dato

      Borrar
    2. Te complicas demasiado ◕ ¸ ◕

      Es un dibujo muy malo (-.-) la bombilla de encendido,puedes obtener un trabajo mejor con solo usar un editor de imágenes,digamos usar marcado de fuego en la imagen de apagado

      Y digamos que es luz blanca para no usar un tono amarillo

      https://lh3.googleusercontent.com/-A1rhlf4auOI/UL0yuwP6msI/AAAAAAAAAIY/3I2XPpX8Xsg/s226/encendido.png

      Queda mejor (^▼^)

      Borrar
    3. GRacias ya añadí la imagen a la entrada(incluso al vídeo XD)

      Y si se ve mejor :D

      Borrar

Los comentarios serán revisados antes de ser publicados.