PDF de programación - Extendiendo aplicaciones de GNOME

Imágen de pdf Extendiendo aplicaciones de GNOME

Extendiendo aplicaciones de GNOMEgráfica de visualizaciones

Actualizado el 21 de Marzo del 2018 (Publicado el 4 de Noviembre del 2017)
497 visualizaciones desde el 4 de Noviembre del 2017
204,7 KB
21 paginas
Creado hace 16a (01/04/2008)
Cómo involucrarse en GNOME
extendiendo las aplicaciones

Germán Poo Caamaño
Proyecto GNOME
[email protected]
http://www.gnome.org/~gpoo/
http://www.calcifer.org/

Involucrate+
Lima, Perú
Marzo 2008

Python

● Generalidades

● Lenguaje libremente disponible, interpretado y

orientado a objetos

● No provoca conflictos en la comunidad

● Farándula

● Creado por Guido van Rossum en 1990
● El nombre proviene de la serie Monty Python

● Disponibilidad

● En las principales distribuciones, también en

otros ambientes distintos de Linux/Unix

Ejemplos básicos

$ python
>>> print “Hola Lima”
Hola Lima
>>> 5*60+500
800
>>>

Programas

#!/usr/bin/env python
print “Hola Lima”

$ python programa.py
Hola Lima
$ chmod 755 programa.py
$ ./programa.py
Hola Lima

Variables y expresiones

● Similar a otros lenguajes

5 ** 100
5 * (10 + 650)
“Hola” + “Lima”

● Asignación

nombre = “Rupert”
iva = 1.19
neto = 1000
bruto = neto * iva
bruto = “Persona bruta”

Estructuras de condición

● if-else

if a == b:

print “a y b son iguales”

else:

print “a y b son distintos”

● pass

if a == b:

pass

else:

print “a y b son distintos”

Tipos básicos

● Números

a = 5
b = 4.5
c = 12345646L
d = 1 + 2j
● Cadenas

a = “Uso de doble comillas”
a = 'Uso de comillas simples'
a = '''Asignacion de
multiples lineas'''

Tipos básicos: Listas

● Listas

a = [ 5, 4.5, 'Rupert', “The monkey”]
b = []
c = [ 1, [ 4, 5 ] ]
d = a + c

● Manipulación

print a[1]
print a[1:3]
a[0] = 50

Tipos básicos: Listas

● Métodos

a = []
a.append('GUADEC')
a.append('Soy Rupert')
a.insert(0, 'Hola')
len(a)
del(a[1])

Tipos básicos: Tuplas

● Como listas, pero de largo fijo
● Elementos inmutables

a = ( 1, 2, 3)
b = (,)
print a[1]
print a[0:2]

Tipos básicos: Diccionarios

● Son arreglos asociativos

a = { 'rupert': 5, 'gpoo': 20 }
b = {}
c = { 'nombre': 'Rupert', 'edad' : 7 }
a['rupert'] = 10
d = c['nombre']
print a.keys()

Iteraciones

● while
a = 1
while a < 50:
a = a + 1

● for

for i in “Hola Lima”:

print i

for i in [ 1, 2, 3, 4, 5]:

print i

for i in range[1, 5]:

print i

Funciones

def max(a, b):

if a > b:

return a

else:

return b
def max2(a, b)

if a > b:

return a, b

else:

return b, a

(x, y) = max2(5, 10)

Clases

class Account:

def __init__(self, initial):
self.amount = initial

def deposit(self, amount):

self.amount += amount
def withdraw(self, amount):

self.amount -= amount

def get_balance(self):
return self.amount

Clases

a = Account(5000)

a.deposit(2500)

a.deposit(4000)

a.withdraw(7000)

a.get_balance()

Excepciones

● try/except

try:

b = 5 / 0

except:

print “Parece que 5 no es divisible por 0”

Programas

#!/usr/bin/env python
print “Hola Lima”

$ python programa.py
Hola Lima
$ chmod 755 programa.py
$ ./programa.py
Hola Lima

Extensiones

Ejemplo:
¿Qué extender en Nautilus?

Proveedores

● InfoProvider: Información y emblemas
● ColumnProvider: Añadir columnas a la

vista de columnas e íconos

● MenuProvider: Menú contextual, carpeta

activa y barra de herramientas

● PagePropertyProvider: Añadir páginas de

información en el diálogo de propiedades

Manos a la obra

(Demostración)
  • Links de descarga
http://lwp-l.com/pdf7374

Comentarios de: Extendiendo aplicaciones de GNOME (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad