Skip to content
Christian Gastrell edited this page Apr 21, 2015 · 1 revision

Coderhouse

todo el texto es ex profeso sin tildes con vocablos en ingles cuando es necesario

Phonegap

Curso de 39 horas a 3 horas por clase

  • 1 clase introductoria
  • 3 clases de introduccion a plugins
  • 1 clase de incorporacion de framework css y proyecto integrador
  • 3 clases de estudio de plugins
  • 1 clase de proyecto integrador
  • 3 clases de estudio de plugins y conformacion de app
  • 1 proyecto integrador final y revision de apps

Introduccion

Repaso de conceptos:: Programacion orientada a objetos (OOP)

La programacion orientada a objetos se refiere a la utilizacion de codigo "encapsulado" para desarrollar aplicaciones. Referimos como objetos a estos codigos "encapsulados", mejor conocidos como Clases en la mayoria de los lenguajes de programacion o Funciones en Javascript. Los objetos se usan como bloques de construccion para nuestras aplicaciones. Construir aplicaciones en base a objetos permite adoptar tecnicas eficientes como Herencia (objetos que pueden heredar caracteristicas de otros objetos), Polimorfismo (objetos que comparten un ancestro -interfaz- pero pueden diferir en la implementacion de sus metodos) y Encapsulamiento (cada objeto es responsable de tareas especificas). Abstraccion es una estrategia de encapsulamiento y, como es natural en la abstraccion, podra considerarse o no segun el nivel de abstraccion con el que se observe la funcionalidad del objeto.

//Clase - Factory
function Vehiculo() {
  if(!(this instanceof Vehiculo)){
    return new Vehiculo();
  }
  this.puertas = 4;
  this.color = "negro";
}
//Metodos de clase
Vehiculo.prototype.getColor = function() {
  return this.color;
}

//Subclase
function Coupe(color) {
  Vehiculo.call(this);
  this.color = color || this.color;
  this.puertas = 2;
  return this;
}
//Herencia de clase
//heredar antes de cualquier aplicacion de polimorfismo!
Coupe.prototype = Object.create(Vehiculo.prototype);

//Polimorfismo - las funciones, heredadas o propias, pueden mutar
Coupe.prototype.getColor = function() {
  var color = this.color;
  if(color[color.length - 1] === "o") {
    color = color.substring(0, color.length - 1) + "a";
  }
  return "Coupe " + color;
}

http://javascriptissexy.com/oop-in-javascript-what-you-need-to-know/

Repaso de conceptos:: API (Application Programming Interface)

Un conjunto de funciones y procedimientos que permiten la creacion de aplicaciones que acceden a caracteristicas o datos de un sistema operativo, aplicacion u otro servicio.

Una API se puede presentar como un recurso online, acceso a datos, librerias, servicios, etc...

//facebook API
/friends: Returns list of friends for logged in user
function getFriends(uid) {
  $query = "SELECT user_id, friends FROM friendsHABTM WHERE user_id = ".uid;
  return db.query($query);
}
///
response:
{
  user_id: {int},
  friends: {array}
}

http://www.webopedia.com/TERM/A/API.html

ReSTful API

ReST: Representational State Transfer

Una API ReST es una (transferencia de la) representacion del estado del modelo de datos o la aplicacion.

Actualmente no existe un estandar de ReST dado que es solo una propuesta, pero cuenta con una adopcion masiva por parte de las APIs online:

  • amazon
  • mercadolibre
  • facebook
  • twitter
  • google
  • etc...

Las APIs exceden su definicion inicial de mera transferencia utilizando todos los verbos HTTP disponibles (GET, POST, PUT, DELETE, PATCH...)

Events

  • Emitter API
  • Objetos Observables
  • Delegacion
  • Listeners
  • Job Queues
  • DOM

http://api.jquery.com/on/

  1. Repaso y conceptos basicos
  2. Ejercicios para repasar
  3. Problematica de desarrollo mobile
  4. Phonegap
  5. Requerimientos e instalacion
  6. Phonegap CLI
  7. [Primeros ejercicios con Phonegap](Ejercicio Phonegap)
  8. Plugins
  9. Hello world
  10. Estructura de un proyecto Phonegap
  11. Plugin Device
  12. Debugging
  13. Incorporando un framework CSS
  14. Plugin Vibration
  15. Sumando partes
  16. Plugin Battery Status
  17. Un poco de jQuery
  18. jQuery Mobile
  19. Navegacion
  20. Plugin Dashboard
  21. Revision de Plugin Dashboard
  22. Paginas extra
  23. ToDo
  24. Persistencia
  25. ToDo Persistente
  26. Plugin Camera
  27. Opciones de camara
  28. App Mi Galeria
  29. Revision de Galeria
  30. Plugin File
  31. Escribir y leer texto
  32. Escribir archivos binarios
  33. Guardando fotos
  34. Debugger: weinre
  35. Inspeccionar con weinre
  36. Phonegap Developer App
  37. Refactor de apps
  38. Plugin Media
  39. Pruebas con audio
  40. Control y monitoreo de audio
  41. Encapsular play/pausa
  42. Hacks
  43. Formato de tiempos
  44. Grabar y reproducir
  45. Proyecto Integrador
  46. Revision de interfaz
  47. Interfaz basica
  48. Entrevista: modelo
  49. Funcionalidad: revision
  50. Seleccion de framework
  51. iRec: navegacion
  52. iRec: fileApi
  53. iRec: guias
  54. iRec: entrevistas
  55. iRec: recordApi
  56. iRec: helpers
  57. iRec: mediaApi
  58. iRec: inicializar paginas
  59. iRec: refactor
  60. iRec: mediaApi refactor
  61. iRec: recordApi refactor
  62. iRec: helpers
  63. iRec: guias.js
  64. iRec: entrevistas.js
  65. iRec: crear guias
  66. iRec: re-inicializando
  67. iRec: re-ordenando
  68. iRec: pendientes
  69. iRec: reporte ux
  70. iRec:revision: volver
  71. iRec:entrevista: volver
  72. iRec:revision: cambios
  73. iRec:revision: stop
  74. iRec:revision: Rew 10"
  75. iRec:revision: tag Go
  76. iRec: limpieza
  77. Firma de apps
  78. Android
  79. Generacion de key
  80. Firma de apk
  81. Alineacion de zip
  82. Firmar con Phonegap
  83. iOS
  84. Detalles finales
  85. Config.xml
  86. Iconos
  87. Splash
Clone this wiki locally