PDF de programación - Curso de programación de Ubuntu Phone / Touch

Imágen de pdf Curso de programación de Ubuntu Phone / Touch

Curso de programación de Ubuntu Phone / Touchgráfica de visualizaciones

Publicado el 9 de Noviembre del 2018
479 visualizaciones desde el 9 de Noviembre del 2018
12,6 MB
176 paginas
Creado hace 2a (14/04/2017)
Tabla de contenido

1. Acerca de... 1.1
2. Introducción del curso 1.2
3. Instalación del SDK 1.3
4. Creación de una Web App 1.4
5. Creación de una aplicación con QML 1.5
1. Introducción al lenguaje QML 1.5.1
2. Organización de los componentes 1.5.2
3. Formateo de etiquetas y eventos 1.5.3
4. Introducción a JavaScript 1.5.4
5. Adaptación del interfaz a la pantalla 1.5.5
6. Creación de componentes personalizados 1.5.6
7. Lógica de la aplicación 1.5.7

6. Herramientas 1.6

2

Acerca de...

Acerca de...
Importante (14 / Abril / 2017)

He unificado los libros del curso en español y en inglés en la siguiente dirección:

https://www.gitbook.com/book/mimecar/ubuntu-touch-programming-course/

Aunque la página aparece inicialmente en inglés, es posible seleccionar el idioma en el selector
Language. Ya he migrado el contenido del curso a la nueva dirección El contenido nuevo sólo
aparecerá en la nueva página.

Curso de programación de Ubuntu Touch

En este libro el usuario encontrará un curso de programación en castellano para Ubuntu Phone (la
versión que se ejecuta en los teléfonos) y Ubuntu Touch. El curso empezará en el mes de agosto y en
él se verán todos los pasos del proceso de creación de una aplicación, un scope y una Webapp.

Los recursos asociados son:

Documentación: libro en GitBook.
Código fuente: alojado en Launchpad.
Estructura del curso: tablero de Trello.

Hay varias formas de resolver las dudas:

Canal #ubuntu-phone-es del servidor de IRC Freenode.
Lista de correo de Launchpad.
Grupo de Telegram.

Si tenéis algún problema para acceder al grupo de Telegram me podéis avisar con un mensaje
(@mimecar).

Capítulos publicados

Capítulo 01: Introducción.
Capitulo 02: Instalación de las herramientas de desarrollo.
Capítulo 03: Creación de una Web App.
Capítulo 04: Creación de una aplicación con QML.

Introducción al lenguaje QML.
Organización de los componentes.
Formateo de etiquetas y eventos.
Introducción a JavaScript.
Adaptación del interfaz a la pantalla.
Creación de componentes personalizados.
Lógica de la aplicación.

Herramientas: Introducción al control de versiones Bazaar.

Leer el curso
3

Acerca de...

Espero que os guste.

4

Introducción del curso

Introducción del curso
Introducción
Introducción del curso

Este curso es un proyecto nuevo que empiezo para aprender a programar aplicaciones que funcionen
en los terminales que usen Ubuntu Touch. En el proceso iré generando documentación con todas las
fases de creación de una aplicación, desde la toma de requisitos pasando por la implementación y
finalmente la publicación en la tienda de Ubuntu. Uno de los problemas que encontramos en Ubuntu
Touch es la falta de aplicaciones tanto en número como en funciones de las mismas. No espero
cambiar esa situación a corto plazo, pero una forma de cambiarla es programando aplicaciones y
ayudando a otros usuarios a que hagan lo mismo. Sólo de esta forma podrá cambiar la situación en un
futuro.

Este curso no es una clase magistral en la que explico las cosas y los demás las hacen de forma
automática. La idea es publicar capítulos y con la realimentación de los usuarios completar la
documentación del curso. Si en un bloque concreto hay más interés se puede profundizar más. Lo
mismo se aplica si hay conocimientos que doy por supuestos y hay usuarios que carecen de los
mismos. No hay ningún problema en preguntar las dudas en los medios asociados al curso.

La documentación estará estructurada en un libro de Gitbook. El acceso es libre y cualquier usuario
puede leerlo en el navegador o en los formatos:

PDF
ePub
Mobi.

Es posible añadir comentarios al libro aunque es necesario tener una cuenta creada en Gitbook. El
código fuente de los ejemplos y las aplicaciones estará alojado en Launchpad usando Bazaar como
control de versiones. En la misma página hay una lista de correo en la que podréis preguntar las
dudas. Aparte de la lista de correo podéis usar el canal #ubuntu-phone-es del IRC de Freenode o el
grupo de Telegram del curso.

De forma paralela a los recursos que he comentado antes también hay un tablero de Trello con el
estado del curso. Por último quiero agradecer a los usuarios que me han animado a empezar esta
locura, entre ellos están kain_X_X o LarreaMikel. Un curso de este tipo no lo puede hacer un único
usuario. Sólo cuando participan muchas personas se puede evolucionar y conseguir metas más
grandes.

Conocimientos previos necesarios

Por la temática del propio curso es necesario tener una base mínima con los conceptos básicos de
programación. En el curso se va a emplear principalmente QML para el interfaz del usuario y
JavaScript o C/C++ para la lógica. Ayuda conocer cualquiera de los dos lenguajes aunque no será algo
crítico. En cada capítulo se explicarán los elementos básicos y se incluirá una bibliografía para que el
usuario la consulte si tiene dudas. Las dudas también se pueden preguntar en cualquiera de los medios
que he comentado antes.
5

Introducción del curso

Las herramientas de programación de Ubuntu Touch (SDK) están preparadas para la distribución
Ubuntu. Será por tanto necesario utilizar Ubuntu o cualquiera de las distribuciones que la toman como
base. Si no cumplimos este requisito tampoco es un problema grave ya que se puede hacer lo mismo
con una máquina virtual o usando un Live USB. Puedo hacer un resumen si alguno está en uno de
estos dos casos.

Para hacer más cómodo de seguir el curso, sólo pondré las partes más importantes del código fuente.
El resto de los archivos estarán en un repositorio de código fuente (Git) en Launchpad. Vendría bien
conocer el funcionamiento básico de Git pero se hará una explicación previa para los usuarios que no
lo conozcan.

Objetivos

El primer objetivo del curso es aprender a programar aplicaciones para Ubuntu Touch y el segundo
pasarlo bien. La programación es una tarea que absorbe mucho tiempo y tiene que gustarte lo que
estás haciendo. Las aplicaciones pueden ser sencillas o complejas, lo importante es que resuelvan una
necesitad que tenemos. Por ejemplo, una aplicación que tenga un listado de las plantas del jardín y
nos avise cuando tengamos que regarlas.

Aunque no lo parezca el tiempo que dedicas a la programación como tal es muy reducido comparado
con el estudio previo que tienes que hacer de una aplicación. Un buen diseño en la lógica de la
aplicación puede reducir el tiempo de desarrollo de forma importante. De la misma forma un mal
diseño puede hacer que acabemos tirando el código a la papelera de reciclaje y empezando de nuevo
porque es más sencillo.

Tipos de aplicaciones

Ubuntu Touch tiene tres tipos de aplicaciones. Podemos encontrar aplicaciones Web (webapps),
scopes y aplicaciones nativas. Una aplicación web es básicamente una pestaña del navegador Web
que se ejecuta de forma independiente. Tiene un icono propio en Unity (el lanzador de aplicaciones) y
puede contener información remota de cualquier tipo. Por cuestiones de seguridad una aplicación Web
no tiene acceso al contenido local del terminal.

6

Introducción del curso

7

Ejemplo de aplicación Web

Introducción del curso

El scope es el segundo tipo de aplicación que encontramos en Ubuntu Touch. En cierta medida se
comporta como una pantalla que muestra información al usuario. La información puede ser externa,
por ejemplo la previsión del tiempo, o interna en forma de agregador de información. Un ejemplo de
este caso sería el scope "Hoy" porque muestra la información de diferentes aplicaciones.

8

Introducción del curso

9

Scope "Hoy"

Introducción del curso

Por último tenemos las aplicaciones nativas. En este caso las aplicaciones pueden acceder a todos los
recursos del teléfono y son en principio más complejas que las aplicaciones Web y los scopes. Las
aplicaciones están confinadas en Ubuntu Touch y sólo pueden acceder a su información propia. Si
queremos acceder a la información de otras aplicaciones es necesario acceder al content-hub. Como
ejemplo de aplicación nativa tenemos el calendario.

10

Introducción del curso

11

Aplicación nativa de calendario

Introducción del curso

Evolución del curso

Un detalle que quiero comentar (y que os cansaréis de que lo repita a lo largo del curso) es que este
curso no es una clase magistral. Es importante que participéis ya sea con dudas, sugerencias o errores.
El orden de los capítulos puede variar y los capítulos que ya estaban cerrados se pueden abrir para
añadir nuevo contenido. Es algo vivo y que sólo puede mejorar si todos intervenimos en él. No
importa que las dudas sean muy básicas ni el que dirán el resto de usuarios. Si sigues el curso es para
aprender.

En la lista de correo el acceso es público y cualquiera que tenga una cuenta de Launchpad puede
entrar. No hay ningún tipo de filtro excepto varios casos de sentido común:

Las consultas tienen que estar relacionadas con el curso.
No se admite spam de ninguna clase.
No se admiten ataques a los usuarios de ningún tipo.

Cuando se dé alguno de esos casos primero se avisará y si el usuario continúa con su actitud tendrá
que salir de la lista de correo. Por privado se podrá poner en contacto conmigo y si sus explicaciones
son razonables entrará de nuevo en la lista. Espero no tener que llegar en ningún momento a ese
extremo pero lo comento por si se cuela algún troll.

El curso no está preparado en el sentido que lo escribiré semana a semana. Por esta razón es posible
que se cuele algún gazapo a medida que lo hago. Si se diera el caso no dudéis en indicarlo para
modificarlo y hacer poco a poco un curso consistente y que sirva para muchos usuarios. Es una
oportunidad de crear contenido que no existe en la red y darle un empujón a Ubuntu Touch. Ignoro si
tendrá futuro en el tiempo pero las cosas no cambian si no haces que cambien.

12

Instalación del SDK

Instalación del SDK
Introducción

En el capítulo anterior se ha visto una introducción al curso de programación con Ubuntu Touch. El
siguiente paso es preparar el entorno de trabajo para programa
  • Links de descarga
http://lwp-l.com/pdf14157

Comentarios de: Curso de programación de Ubuntu Phone / Touch (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad