Marca i comparteix

Bloc: Konsells del Savide La Konfraria de la Vila del Pingüí de La Palma de Cervelló

Pàgina d'iniciPàgina d'inici de La Konfraria de la Vila del Pingüí LaKonfrariaLa Konfraria de la Vila del Pingüí ProjectesProjectes de la Konfraria GNU/LinuxRecursos GNU/Linux i per l'Ubuntu Kanals RSSCanals RSS de la Konfraria Fòrum "Solucions"Fòrum 'Solucions de la Konfraria' Xarxes socials "Komunitat"Xarxes socials 'Komunitat de la Konfraria' La Vila del PingüíLa Vila del Pingüí, La Palma de Cervelló Guifi·net a La VilaGuifi·net a La Vila Webs de la VilaPàgines web de La Palma de Cervelló

Dia de la Llibertat dels Documents 2015

dimarts, 28 de juny de 2011

Quickly (Glade-GTK+Python) ens permet crear aplicacions per a l'Ubuntu de manera relativament fàcil

T'atreviries a crear la teva pròpia aplicació per l'Ubuntu? A aquesta pregunta jo fa uns dies hagués contestat "Ara per ara, no", però des de què he descobert Quickly contestaria "Podria intentar-ho".
Val a dir que no tinc coneixements en programació, i possiblement aquesta entrada pugui interessar bàsicament a aquells que com a mí, els agrada remenar i fer el xafarder, i sobretot... aprendre.
El què fa Quickly és facilitar-nos les coses i crear-nos una sèrie de plantilles que ens poden ser de grandíssima utilitat a l'hora de crear la nostra aplicació per l'Ubuntu, això sí, no programa per nosaltres.
Per instal·lar Quickly només cal entrar al Terminal:

sudo apt-get install quickly

Una vegada instal·lat ens haurem de dirigir a la carpeta on vulguem desar el nostre projecte d'aplicació, i des del Terminal escriurem:

quickly create ubuntu-application nom-del-projecte

Evidentment, canviarem nom-del-projecte (el nom només permet lletres, dígits, espais i guions) pel nom de l'aplicació que volem crear, i d'ara en endavant quan parlem de "nom del projecte" s'entén que es substituirà pel nom que hàgiu escollit per la vostra aplicació. Si escrivíssim la comanda tal qual es presenta aquí, a la carpeta on estàvem ubicats quan vam llançar la comanda des del Terminal se'ns crearà una subcarpeta amb el nom "nom-del-projecte" i s'obrirà una finestra del tipus:


Aquesta és l'aplicació que acabem de crear. Abans de tancar-la podem comprovar com funciona el botó "Contents" que està al menú "Help", així com la opció "Quant a" del mateix menú. També "funciona" la opció "Preferències" dins del menú "Edit". Veure'm que funciona el botó "Surt" del menú "File", i així tancarem la nostra recent creada aplicació. La resta de botons són buits d'acció.
En aquest moment tocaria anar a xafardejar la carpeta "nom-del-projecte" que hem creat, i en hi trobaríem una cosa similar a:

En què hi podem identificar sis carpetes:
  • bin : Aquí trobarem l'executable, un script que s'inicia amb #!/usr/bin/python (per veure'n el contingut, fer doble click i seleccionar "Mostra"), per tant, un script escrit en Python. Si ens fixem en les propietats del fitxer (botó dret del ratolí sobre el fitxer i seleccionar Propietats > Permisos) veurem que té permisos d'execució, i si hi fem doble click veure'm -després de seleccionar l'opció "Executa" o "Executa en un terminal"- que es torna a obrir l'aplicació d'abans.
  • data : A la carpeta data hi trobarem dues subcarpetes; media i ui. La subcarpeta media conté les imatges de l'aplicació, i la subcarpeta ui conté 3 arxius .XML i 3 arxius .UI que es corresponen amb la informació de les 3 finestres que hem vist abans en acció en la nostra aplicació (Principal, Quant a, i Preferències). Més endavant veurem que aquests són els arxius que modificarem amb Glade (per la interfície GTK).
  • help : Aquí trobarem una carpeta C, i dins, tres arxius HTML (tot i que apareixen amb l'extensió .PAGE) i una carpeta figure amb una imatge. Són els arxius necessaris per mostrar el contingut de "Content" (que hem explorat abans) i segueix l'estructura d'una pàgina web.
  • nom_del_projecte : En aquesta carpeta hi trobarem tot de fitxers .PY i .PYC, que és codi escrit en Python (que és un llenguatge de programació). Concretament els fitxers .PYC són fitxers bytecode de Python als que no tindrem accés, però que contindran una "traducció" dels fitxers .PY, de fet en seran una versió compilada. Als fitxers .PY podem accedir-hi fàcilment amb gedit, l'editor de text. Com a curiositat apunto què, podríem crear arxius .PYC (compliant arxius .PY)amb la comanda:
python -m compileall /home/nom_usuari/carpeta-ruta_on_hi_ha_arxius_PY
  • nom_del_projecte_lib :També hi trobarem fitxers .PY i .PYC, per tant codi Python.
  • tests : Més fitxers de Python.
També en la carpeta principal hi trobarem quatre arxius:
  • AUTHORS : Arxiu en què podrem introduïr-hi any, nom de l'autor i correu electrònic.
  • nom-del-projecte.desktop.in : Arxiu que indica que "nom-del-projecte" és una aplicació, el tipus d'aplicació que és, com s'ha d'obrir, com s'ha de categoritzar, quina icona utilitza, etc... És un arxiu necessari per crear la llançadora de l'aplicació.
  • setup.py : Arxiu de configuració, en què només hauríem de tocar la darrera part referent a la llicència, l'autor, descripció de l'aplicació, pàgina web, etc.
  • setup.pyc : El mateix arxiu compilat.
Si més o menys ja hem entès tot el que hem fet en entrar la comanda quickly create ubuntu-application, ara ja estarem preparats per començar a remenar. En primer lloc xafardejarem l'aspecte visual de l'aplicació, obrirem un Terminal (ens assegurarem de què som a la carpeta "nom-del-projecte") i hi escriurem:


quickly design

El que s'obrirà davant nostre és l'aplicació Glade (per crear aplicacions GTK) amb tots els arxius de /data/ui oberts. Ens desplaçarem entre aquests arxius amb les fletxes i per visualitzar cadascun d'ells haurem de clicar a sobre del nom de l'arxiu al panell superior de la dreta (just a sota d'on diu "cerca de ginys").


Concretament veurem que tenim la interfície de les tres finestres de la nostra aplicació: la principal, la de "Quant a mi" i la de "Preferències". Aquí es tractaria de començar a fer provatures per canviar el disseny de la nostra aplicació. De totes maneres de seguida ens n'adonarem de què des d'aquí només canviem l'aparença de l'aplicació però no les accions que haurà de realitzar. Tanquem Glade i podem escriure al Terminal (assegurant-nos de què som a la carpeta "nom-del-projecte"):

quickly edit

Llavors se'ns obrirà l'editor de text gedit amb un seguit d'arxius .PY i .PAGE (HTML) oberts, si senyors, aquí haurem topat amb el codi:


Concretarem se'ns obriran a gedit els arxius següents:
  • AboutNomDelProjecteDialog.py
  • NomDelProjecteWindow.py
  • __init__.py
  • PreferencesNomDelProjecteDialog.py
  • test_lint.py
  • test_example.py
  • preferences.page
  • index.page
  • topic1.page
Ara ja es tracta d'endinsar-se en el codi, i ens serà de gran utilitat les anotacions explicatives que trobarem en color blau davant dels coixinets: # (al arxius .PY) i entre <-- i --> (als arxius HTML amb l'extensió .PAGE).

Per llençar l'aplicació i veure-la en funcionament amb els canvis introduïts:

quickly run
 
Per crear un paquet amb l'aplicació (a la wiki de Quickly -trobareu l'enllaç al final de l'entrada-, ens recomanen primer compilar l'aplicació localment abans de realitzar aquesta acció):

quickly package
 
Per compartir l'aplicació i penjar-la al Launchpad (cal tenir compte a Launchpad i a més a més, haver creat un PPA):

quickly release
o bé,

quickly share


Per saber totes les comandes de què disposem a Quickly, cal escriure:

quickly commands
 
I per tenir un petit tutorial de Quickly ben a mà:

quickly tutorial

M'agradaria poder explicar amb més concreció com crear una aplicació per a l'Ubuntu, però penso que aquesta informació és suficient perquè qui ho desitgi, es pugui llençar a l'aventura. Per cert, una idea de cara a aprendre com manegar-se amb Glade... Podeu agafar els fitxers de desenvolupament d'alguna aplicació que treballi amb Glade+GTK (com per exemple, Radiotray, de d'aquest enllaç) i remenar-los per veure com estan fets. Recordeu que haurem de buscar els fitxers amb l'extensió .UI o .glade.

Podrem trobar més informació sobre Quickly als següents enllaços:
 I si ens interessa aprendre una miqueta de Python (PyGTK), alguns enllaços:
 Algú s'anima? ;-)

Articles relacionats (per categoria)



1 comentari:

  1. Molt interessant, l'aplicació. Em sembla que pot ajudar a la gent a iniciar-se en la programació. I, per cert, has fet una explicació completíssima! :-)

    ResponElimina

Llicència de Creative Commons

Aquesta obra de Konfraria de la Vila del Pingüí de La Palma de Cervelló està subjecta a una llicència de
Reconeixement-NoComercial-CompartirIgual 3.0 No adaptada de Creative Commons

El disseny d'aquesta pàgina web ha estat possible en gran part gràcies als magnífics tutorials de Soh Tanaka. La barra tipus Mac i la caixa de navegació han estat possibles gràcies al tutorial de NetTuts+.

                  Enllaços
stack
stack