Actualizado a: 09 de Diciembre 2023 TODOS los Megacursos y Cursos Avanzados a 125€/$ (antes hasta 390€/$ y más)

Megapack

Dios de la Programación

“Dios de la Programación en 490h (actualizado 2023)”
4.5 (48150 alumnos)
Español

Conviértete en un Dios de la Programación dominando los lenguajes de programación más populares como Swift, Java, .NET con C #, Pascal, Hacking, Phyton, Angular, Ruby, Ionic, Flutter para poder desarrollar aplicaciones web, escritorio o dispositivos móviles. Domina la programación de 0 a 100.

+ 490 H

de clases

Dios de la Programación
El megapack contiene los siguientes cursos:

Contenido del Megapack

490h de videoclases online

Mira aquí nuestras clases gratis

Loading...
Cargando temario
Nuestro primer programa

Empezamos creando nuestro primer programa, instalamos los componentes necesarios para empezar a programar desde cero, conocemos el entorno de desarrollo y empezamos a conocer los conceptos básicos con un ejemplo sencillo y detallado.

Variables

Las variables son el elemento de mayor importancia en la programación, conocemos los distintos tipos de variables, las operaciones que se pueden aplicar a cada una de ellas y como convertirlas, realizaremos una Calculadora para entender mejor el comportamiento de las variables.

Clases y Objetos

Las variables son el elemento de mayor importancia en la programación, conocemos los distintos tipos de variables, las operaciones que se pueden aplicar a cada una de ellas y como convertirlas, realizaremos una Calculadora para entender mejor el comportamiento de las variables.

Primer Proyecto: Polígonos, círculos, líneas y puntos.

 Empezamos a realizar nuestro primer proyecto que utilice diferentes conceptos que hemos aprendido hasta ahora, aprendemos como desde un punto se hace una línea y de esta un polígono, o con un punto y una línea un circulo, veremos que el límite es nuestra imaginación, y la importancia de la abstracción ante un proyecto más grande.

Clases II

Ampliamos nuestro conocimiento sobre las clases y conocemos las clases Static y Main, aprendemos para que se sirven los paquetes y los permisos que les queremos dar a nuestros objetos, Aprovechamos para conocer el concepto Envoltorios , para qué sirven como String y Math que usaremos mucho a la hora de programar.

Estructuras de control

Uno de los aspectos más importantes a la hora de crear un programa son las estructuras de selección y repetición, con ellas ya podemos darle lógica a nuestros programas y realizar cálculos complejos con una simple línea de código, vamos a probarlo realizando un Cajero Automático.

Herencia y Polimorfismo

Continuamos ampliando nuestro conocimiento sobre las clases y conocemos la utilidad de la herencia y el polimorfismo que nos ayudara a ahorrarnos muchas horas de trabajo y a tener un código limpio con una lógica que se parece más a la de el mundo real, mediante unos ejemplos simples de padres e hijos apreciaremos la potencia de estas características.

Proyecto: “El colegio”

Vamos a crear un colegio con sus alumnos, profesores, conserjes… como cada uno coge su papel y otros comparten las mismas tareas , usaremos los conceptos aprendidos sobre herencia , polimorfismo y así reforzaremos lo aprendido con un ejemplo divertido y sencillo.

Estructuras de almacenamiento y algoritmos de ordenación.

Array o matriz se emplean para almacenar elementos del mismo tipo, conocemos el concepto de dimensión en las estructuras de almacenamiento y posteriormente aprendemos a ordenar los elementos y los diferentes algoritmos que podemos utilizar, para que nos queden los elementos ordenados de maneras ascendente/decreciente.

Proyecto. Ordenación de almacén de EmpresaSoft

Creamos un almacén de productos para una empresa que nos ha pedido diferentes tipos de criterios para ordenar sus artículos , vamos a contentarles realizando la ordenación en décimas de segundo gracias a las matrices y los algoritmos de ordenación aprendidos.

Entrada y Salida

Conocemos el concepto de flujo y los diferentes métodos de entradas y salidas, en memoria, ficheros y teclado.

Interfaces

La Interfaz nos servirá en múltiples ocasiones, es una manera rápida y útil de agrupar diferentes métodos para su uso en otras clases, conocemos algunas interfaces predefinidas y como reescribirlas si nos interesase.

La Librería

Vamos a usar la interfaz Iterator y ArrayList para realizar la gestión de una librería, recorreremos libros, añadiremos otros y podremos buscar en nuestro catálogo.

UML

UML se utiliza para abstraernos y quedarnos solo con los detalles que posteriormente podemos implementar, conocemos las partes básicas de UML y como se encajan a la perfección en nuestro lenguaje.

(Proyecto): Gran problema fácil solución

A partir de un gran enunciado vamos a ir sacando solo lo que nos interesa y posteriormente profundizaremos en cada aspecto, de esta manera pasamos de tener un problema grande a tener un problema simple que se puede modular.

Recursividad

La recursividad es una herramienta muy útil en la programación es buena para resolevr problemas de una manera legible y controlable pero también tiene sus inconvenitntes, vamos a hacer unos cuantos ejercicios de recursividad para conocer este concepto.

Debugger

Los errores son comunes a la hora de programar, vamos a aprender a como se utiliza el debugger en este caso de Netbeans para conocer cuál es el estado del programa en cada paso y poder resolver estos problemas de una manera fácil.

Genéricos

Cuando queremos que la misma funcionalidad nos sirva para diferentes tipos de datos usamos los genéricos, de esta manera reutilizamos código ya realizado para que nos funcione con cualquier tipo de dato que albergue en él.

Interfaces Graficas I

Empezamos a trabajar con aplicaciones que contienen gráficos y ventanas de escritorio con SWING, hacemos una presentación al entorno y creamos nuestra primera aplicación con ventanas.

Proyecto: La Calculadora de escritorio

Creamos nuestra calculadora de escritorio 100% utilizable, nos ponemos en marcha con las aplicaciones de escritorio.

Interfaces Graficas II. Formularios con SWING

Vamos a aprender a realizar formularios con botones, ventanas y pestañas , en este caso vamos a realizar una interfaz gráfica que nos permita registrarnos como usuarios y rellenar datos en una encuesta, también tendremos nuestra ventana personal de cliente.

Interfaces graficas III

Conocemos los Layouts y para qué sirven, pasamos a uno de nuestros proyectos anteriores para que ahora se nos muestren los resultados de manera más visual y cómoda para los usuarios en una ventana.

Applets en JAVA

Las Applets son aplicaciones que se ejecutan en el navegador web y permiten ejecutar programas en él, veremos unos cuantos ejemplos simples, para nuestras páginas web.

Estructuras de datos II

En esta ocasión vamos a presentar las estructuras de datos avanzadas, empezaremos con las más básicas, pilas, colas y listas, muy útil a la hora de trabajar con volumen de información enormes, hazte un genio de las estructuras de datos.

Pilas

Las pilas se utilizan para guardar unos elementos de manera que quedan uno encima de otro , pudiendo recuperarlos por la cima ,usando la política FIFO, vamos a implementar nuestra primera estructura de datos.

Colas

Ahora vamos a ver la segunda estructura de datos básica, donde los elementos entran como si de una cola se tratase, usando la política FILO y el primero en entrar saldrá primero de esta cola y el último en llegar se pone al final de la cola.

Listas

Vamos a implementar una de las estructuras más potentes con dos apuntadores al principio y al final de la lista para que de esta manera podamos insertar, consultar y borrar los elementos de manera rápida, en este caso haremos una implementación dinámica que podremos utilizar perfectamente en nuestros programas .

Pruebas Unitarias JUnit

Para realizar testeo correcto de programas en java en vez de estar esperando a que el proyecto acabe por completo, existen las pruebas unitarias con las que vamos a ir comprobando el correcto funcionamiento a nivel de clase, de esta manera sabemos el porcentaje de código que esta erróneo y conocemos el funcionamiento exacto que se espera de cada clase, muy importante para programadores.

 

Arboles Genéricos

Los árboles son estructuras de datos con una jerarquía padre-hijo con múltiples funciones entre ellas están los comparadores y los arboles de decisión, vamos a conocer que es un árbol y a implementar un árbol genérico que puede albergar datos en él.

Arboles Binarios

En esta ocasión nos toca conocer e implementar el árbol binario, un tipo especial de árbol que en el futuro nos permitirá realizar tareas como búsqueda de elementos en una complejidad logarítmica.

Proyecto (la inteligencia artificial)

Ya hemos aprendido árboles, bien, vamos a crear nuestro propio robot que aprenda y nos adivine el animal en que estamos pensando, una de las muchas utilidades de los árboles, la inteligencia artificial.

Árbol Binario de Búsqueda

En esta ocasión vamos a implementar un árbol tipo binario pero con un criterio de ordenación, útil para crear diccionarios y jerarquías.

Árbol AVL.

Una vez tenemos árboles que se ordenan según su valor a la izquierda o a la derecha(BSTree) ahora queremos que estos árboles estén equilibrados y de esta manera conseguir el mejor tiempo de búsqueda, inserción y borrado. Veremos cómo se reestructura un árbol para que mantenga su información de manera correcta sin perder su ordenación de elementos.

Tablas Hash

Bienvenido a las entradas de Tablas Hash, de lo más utilizado en internet y en almacenamiento de datos masivos, conocemos la importancia de los números primos en el mundo real, una estructura muy útil tipo <Clave,Valor>, hacemos algunos ejemplos sencillos.

Proyecto Gestor de Autobuses

Utilizamos las tablas hash para implementar un problema que consiste en manejar la información de una empresa de autobuses, además ayudamos a las autoridades a localizar a un sospechoso rápidamente.

Threads

Los Threads crean varios hilos de ejecución que se pueden ejecutar de manera simultanea dando como resultado , multitarea e infinidad de ventajas, además son ligeros y consumen menos recurso que un proceso , vamos a realizar un problema producto-consumidor para aprender sobre estos hilos de ejecución.

Cliente -Servidor

Vamos a realizar comunicación entre un cliente y un servidor, además gracias a los Threads vamos a poder realizar un servidor que atienda a varios clientes al mismo tiempo de manera independiente. Además veremos cómo se utiliza la clase Socket para realizar comunicaciones entre programas.

Creador de Wallpapers

Otra funcionalidad que poseen estos hilos de ejecución es la creación de movimiento, así que vamos a aprovechar el movimiento creado para crear nuestros propios wallpaper, como si tuviéramos un dibujante solo para nosotros.

Repaso I Ampliación del proyecto Colegio GUI

Vamos a repasar los conceptos más representativos de Java y convertimos nuestro colegio en una interfaz gráfica con un gestor de alumnos y cambiamos las estructuras de datos para que sea más veloz.

Repaso II Ampliación del proyecto Colegio GUI (Graficas)

Vamos a realizar un resumen grafico de cada aula del colegio en formato histograma y grafica de líneas para que usuario tenga un visión más clara de las estadísticas de cada aula.

Nuestra primera aplicación

Conocemos el gran entorno de J2EE (Entreprise Edition), Revisamos su potencial y empezamos realizando nuestra primera aplicación desplegable en un servidor en este caso Glassfish.

Formulario con JSP

Vamos a realizar nuestro primer Formulario con Java Server Pages, aprendemos así como se empiezan a comunicar nuestras distintas secciones de JEE. También veremos HTML de manera práctica.

Modelo Vista Controlador

El MVC es una manera modular de programación de JEE bastante cómoda, aprendemos en que consiste y creamos una aplicación usando MVC.

Login de Usuario y seguridad con Glassfish

Esta vez se trata de un formulario JSP, que podemos incluir en nuestra página web , se trata de un servicio de login de un usuario usando Servlets y JSP y glassfish. Necesitamos username y contraseña para acceder a ciertos campos de nuestra pagina web.

JSP ,JTSL y etiquetas

Aprenderemos las instrucciones de selección, modificación y borrado que podremos incrustar en nuestro proyecto, de esta manera podemos añadir lógica a nuestras aplicaciones de una manera sencilla.

JTSQL

Esta vez trabajamos con bases de datos, en nuestro caso Postgresql y hacemos peticiones a está observando los resultados en nuestra aplicación.

 

Proyecto creación de sistema de reservas de un hotel en JSF

El hotel “lloh” nos pide crear una aplicación potente, que pueda desplegar en un servidor y los usuarios accedan a través de ella vía web o vía aplicación de escritorio para gestionar las reservas de él Hotel en una de las mejores playas de España.

Generando Información útil para nuestras bases de datos desde Java

Vamos a necesitar siempre , ya sea para ejecutar pruebas o realizar nuestros servicios , información con bastantes campos, hacemos que desde una clase java normal nos comuniquemos con bases de datos y poder rellenar mucha información necesario en futuros proyectos.

Java Server Faces

Existen diferentes Frameworks de trabajo para crear entornos que interactúen con el servidor y las bases de datos en este caso vamos a conocer Java Server Faces desarrollando una aplicación web.

Plantillas y JSF

Creamos plantillas para pasar de un diseño aburrido a algo con mucho mas atractivo, además JSF nos ofrece la manera de incluir estas plantillas en todo nuestro proyecto de una manera fácil, también veremos CSS para nuestras plantillas

Validadores y Componentes

Mas funcionalidad para JSF, conocemos los validadores y los componentes, estos nos servirán para que nuestra página requiera ciertos campos de determinada manera, o para incluir componentes enteros de una manera facil.

JPA(Java Persistence API)

En Java los objetos desaparecen o solo existen en el tiempo en el cual se ejecuta el programa esto se soluciona con la creación de entidades (entities) y JPA nos permite, utilizar objetos de forma persistente, también conoceremos los Beans que usaremos para llamar a nuestras entidades , y se ejecutan de manera remota.

Creando nuestro EJB. Parte A

Empezamos con la parte más EE de JEE , estos son nuestros EJB, pudiendo separar la aplicación de los Beans y de otras aplicaciones de escritorio así como el servidor y los clientes, pero todo ello funcionando como un uno en común de manera colaborativa, Empezamos a crear nuestra primera Enterprise Aplication.

Creando nuestro EJB. Parte B

Empezamos con la parte más EE de JEE , estos son nuestros EJB, pudiendo separar la aplicación de los Beans y de otras aplicaciones de escritorio así como el servidor y los clientes, pero todo ello funcionando como un uno en común de manera colaborativa, Empezamos a crear nuestra primera Enterprise Aplication.

JMS

Nos interesa el paso de mensajes entre diferentes módulos de una aplicación de manera remota, vamos a conocer un tipo especial de Beans, los Message Driver Beans, como siempre ilustrado con ejemplos sencillos y prácticos.

Sevicios Web  RESTful

Continuamos con nuestro conocimiento de WS(Web Services ) ahora haremos aplicaciones con RESTFul y veremos sus posibilidades.

Servicios Web 3 Maven

Como guinda final vamos a conocer los servicios web con Maven. Como siempre con ejemplos sencillos y fáciles para comprender el manejo de estos. En este caso nos enfrentaremos a una api de terceros.

Proyecto Final Flickr

Vamos a finalizar con una aplicación de escritorio/web usando la API que nos ofrece Flickr4j donde podremos subir nuestras fotos, crear álbumes y muchas otras funciones reservadas solo para desarrolladores.

Preparando el entorno

Vamos a Repasar sobre diferentes cosas útiles a la hora de afrontar la creación de un videojuego. En esta ocasión veremos los componentes necesarios para crear movimiento con el input de nuestro teclado.

Memory con SWING

En este caso vamos a realizar un juego tipo Memory, donde el jugador deberá encontrar parejas , ganara si las encuentra todas seguidas , utilizamos SWING esta vez para crear videojuegos, además aprendemos a realizar nuestros propios recursos con InkScape de una manera fácil.

Snake

Esta vez vamos a abordar un juego tipo Snake, muy popular en los años 90 , nos moveremos sobre celdas y abra que comer toda la comida posible sin chocarnos con nosotros mismos o con la pantalla.

Creando Niveles para nuestra Snake

Vamos a decorar nuestra serpiente y hacemos un creador de niveles que podremos guardar y cargar para nuestra partida, utilizamos el propio juego para crear niveles de una manera divertida.

Clon de Tetris

Continuamos esta vez con un clon del clásico Tetris desde 0 hasta poder jugar con el unas partiditas.

Decorando

Vamos a pulir ciertos detalles y a volver nuestro clon de Tetris mucho más visual para que sea más atractivo para los usuarios.

La música es importante

Introducimos sonidos MP3 y wav en nuestro juego para darle un aspecto mucho mejor a nuestro juego de Tetris. Aprenderemos a crear músicas completas para un videojuego de una manera sencilla.

Algoritmo MinMax.(jugando contra la maquina)

Conocemos el algoritmo MinMax que nos ofrece una manera fácil de prever jugadas, para juegos destinados contra la máquina, esta buscara la mejor solución y ejecutara su movimiento. Hacemos un TIC TAC TOE , a ver si alguien puede ganar contra nuestra IA.

 

Creamos un Menú Dinámico

En esta ocasión vamos a empezar a realizar la lógica de un juego mayor, empezamos creando nuestro menú dinámico, que sea atractivo para presentar diferentes juegos, con fondo animado y opciones de manera atractiva.

TileMap

Algo muy utilizado a la hora de crear videojuegos son los TileMap, son mapas con identificadores que nos indicaran si hay lava, tierra, plataformas.., además poseen la ventaja de que creamos niveles para juegos de una manera muy fácil y sencilla, con resultados espectaculares. Aprendemos a utilizar herramientas para la creación de nuestros juegos.

Lógica de GameObjects

Necesitamos crear una lógica común para todos los elemento que hay en nuestro mapa ya sean personajes, enemigos, cofres, texto. Hacemos una superclase para manejar todos estos eventos comunes.

Creando animaciones para nuestros personajes

Aprenderemos a crear nuestros propios Sprites, para colocar en nuestro juego, los animamos y observamos el resultado en nuestro juego.

Manejando nuestro jugador con la pantalla

Vamos a manejar por fin a nuestro personaje por nuestro nivel ya podemos explorar el mapa creado con nuestro personaje animado

Realizando ataques con nuestro personaje

Vamos a poner un arco a nuestro personaje para que pueda disparar flechas , gastando mana.

Los enemigos

Algo no menos importante son los enemigos en nuestro juego, nos deben de suponer un reto para llegar al final de la pantalla, vamos a crear el “cerebro” de los enemigos para que interactúen con nosotros en el juego

HUD

Necesitamos el HUD para indicarnos cuanta energía, saludo o mana posee nuestro juegador asi como otros elementos , vamos a incluir un HUD básico a nuestro juego.

Detalles Finales

Vamos a poner la guinda de nuestro juego con ciertos detalles como sonidos y mejora de lógica del juego, usamos nueva librería de MP3 y Audacity.

Introducción a iOS

En esta primera clase gratuita podrás ver qué necesitas para crear tu primera app para iOS, y no sólo eso…sino que también aprenderás a hacerla!

Proyecto previsión tiempo

Aprende a crear una aplicación que nos muestre la previsión del tiempo, y añadirla como extensión para poder acceder a la información de forma rápida desde cualquier parte del sistema.

SDK

¿Qué es el SDK de iOS, qué podemos hacer con él y por qué es tan importante a la hora de desarrollar nuestras apps?

Interfaz Xcode

Descubre la interfaz del IDE de desarrollo para todas las plataformas Apple: Xcode. Es importante familiarizarse con él, ya que dedicaremos más del 90% del tiempo de desarrollo de nuestras apps dentro de él.

Playgrounds

Potente herramienta integrada en Xcode que nos permite probar pequeñas porciones de código o nuevas tecnologías que aún no hemos añadido en nuestro proyecto, sin necesidad de crear un nuevo proyecto. Abre un Playground y ¡a escribir código!

Swift I

Primera aproximación al nuevo lenguaje de programación de Apple, el cual utilizaremos en todas las clases de nuestros Megacursos relacionados con plataformas Apple. Variables, constantes, tipos de datos, operadores, arras y diccionarios.

Swift II

Seguimos adentrándonos en Swift. En esta clase hablamos de estructuras de control de flujo y bucles de repetición, así como de las condiciones de comparación.

Swift III

La última clase de Swift, la dedicamos a las funciones, las clases y lo que Apple denomina “Optionals”.

Prototipado Storyboards

Gracias a los Storyboards, crear las interfaces de nuestras aplicaciones es realmente sencillo. Un entorno visual, dentro de Xcode, con todo lo necesario para crear la parte gráfica de la app.

ViewControllers-IBOutlets IBActions-Ayuda

Para poder manipular los elementos de nuestra interfaz mediante código, necesitamos enlazarlos mediante IBOutlets y IBActions. Además, aprenderás dónde se encuentra ya ayuda y documentación de Xcode, y cómo utilizarla.

MVC

La idea principal tras MVC (Modelo-Vista-Controlador) es separar nuestra app en tres partes: los datos que mostramos, la parte visual, y en controlador que relaciona cómo se muestran los datos en la interfaz. Es el modelo en el que se basan las aplicaciones para iOS y el que debemos aplicar, por lo que es importante comprender bien cómo funciona.

MejorasUI

Esta clase es una introducción a Auto Layout, un sistema basado en constraints que nos proporciona Apple, para que nuestra interfaz y los datos que mostramos en ella, sin importar el dispositivo o la orientación desde la que se visualice.

Debug

Si ya tienes experiencia en el desarrollo de Software, no hace falta que te expliquemos la importancia de la depuración del código. Si no, en esta clase verás que cuando no sabemos dónde está un error, o por qué no  funciona esto o aquello, conocer cómo funciona el debugger de Xcode, puede salvarnos la vida.

ViewControllers

El controlador de vistas de nuestras aplicaciones iOS más importante. Hay que conocer cómo funciona, qué clases debemos modificar para controlar los datos que mostramos en nuestra app dentro de la parte visual…y mucho más. Importante conocerlos bien, ya que los utilizaremos una y otra vez en nuestras apps.

TableView

Sin duda, uno de los tipos de aplicaciones más habituales son las basadas en tablas. Pocas apps en iOS no utilizan en alguna sección listado de elementos. Por ello, el elemento UITableView es de vital importancia.

CustomTableviewCell

iOS nos proporciona una visualización por defecto de las celdas de una tabla. Pero serán pocas las ocasiones en las que queramos utilizarla, ya que sí queremos que nuestra app tenga una personalidad propia, tendremos la necesidad de personalizar su apariencia al máximo. En esta clase aprenderás a personalizar las celdas de tus tablas gracias a Prototipo Cell.

Selección Celdas

Llegados a este punto, sólo hemos aprendido a mostrar datos en las celdas de nuestra tabla, por lo que ha llegado el momento de detectar las selecciones sobre una celda determinada, para poder llevar a cabo alguna acción cuando esto ocurra.

Eliminar Celdas

Si quieres brindar a los usuarios de tu app la posibilidad de que eliminen algunas filas de la tabla en la que se muestran los datos, no te pierdas esta clase.

TableView NC

¿Qué es un Navigation Controller? Al igual que las tablas, son otro componente de UI muy habitual en iOS. Nos proporciona una interfaz para navegar por nuestro contenido de forma jerárquica. Normalmente se suelen combinar con UITableView.

POO

Swift, al igual que Objective-C, es un lenguaje de “Programación Orientado a Objetos”. Esto es una forma de construir software muy habitual, componiendo las distintas partes de nuestra aplicación mediante objetos. En otras palabras, el código que escribimos en nuestra app en determinadas maneras, trata con objetos de ciertos tipos. Y esas maneras y esos tipos es lo que vamos a explicar en esta clase.

Mejora Vista Detalle NavigationBar

En esta clase vamos a mejorar la interfaz de la vista detalla de la app que estamos construyendo, así como su navegación. Por tanto nos vamos a basar en la parte másvisual de la aplicación.

Self Sizing Cells

Sin duda una de las características más útiles del SDK de iOS. Especialmente cuando queremos mostrar datos de forma dinámica en una tabla, ya que nos permite que el tamaño de la fila se calcule de forma dinámica en función del contenido que tiene que mostrar.

Animations

En iOS, crear animaciones impactantes y sofisticadas no requiere escribir grandes cantidades de código, apenas la implementación de un único método de la clase UIView. Este método tiene diferentes variaciones, las cuales estudiamos en esta clase.

Map View

El framework Mapkit proporciona a los desarrolladores las APIs necesarias para mostrar mapas en nuestras aplicaciones, así como navegar por ellos o añadir anotaciones.

Photos

Integramos el acceso a nuestra cámara de fotos y carrete de fotografías de nuestro iPhone o iPad, de tal forma que podamos añadir imágenes de forma dinámica a nuestra aplicación.

Core Data

En muchas ocasiones, puede que necesitemos almacenar datos de forma permanente dentro de nuestra app. Gracias a CoreData, podemos hacerlo sin recurrir a soluciones de terceros.

Search Bar

Las barras de búsqueda son una característica fundamental para muchas aplicaciones, sobre todo cuando almacenamos gran cantidad de datos y queremos facilitar el acceso a la información a nuestros usuarios. Para ello tenemos la SearchBar de iOS.

UIPageViewController NSUserDefaults

Si quieres hacer un recorrido visual de ayuda la primera vez que se ejecuta tu app o necesitas mostrar la información en formato de página (tipo libro), UIPageViewController es lo que estás buscando.

Tab Bar Controller

La Tab bar es esa fila que se encuentra permanentemente visible en la parte inferior de nuestra pantalla, desde la cual podemos acceder a diferentes opciones de la aplicación, en forma de menú.

WebView MailComposer

Hay muchas ocasiones en las que necesitamos mostrar contenido web en nuestras apps, así como enviar emails desde dentro de la misma. Esto es realmente sencillo gracias a UIWebView y MailComposer.

CloudKit. Parte I.

¿Quieres almacenar o recibir datos desde “la nube”? Gracias a CloudKit podrás acceder a iCloud la “nube” de Apple, por lo que ya no hace falta recurrir a soluciones de terceros.

CloudKit. Parte II.

Seguimos explorando CloudKit, llegando a un nivel más avanzado.

Localización

Si quieres poner tu app a la venta en el App Store de diferentes países, está claro que debes “localizar” tu app, para servirla en diferentes idiomas. Tanto los textos, como las imágenes así como otros elementos que quieras cambiar en función de las costumbres o cultura de cada país.

Puebas en dispositivo

El simulador que viene integrado está muy bien, de hecho es uno de los mejores simuladores que podemos encontrarnos a la hora de desarrollar aplicaciones. Por tanto, para el 90% de los casos nos servirá. Pero tiene ciertas limitaciones como el acceso a cámara o acelerómetro. Además, el rendimiento no va a ser igual que en un dispositivo físico real. Así que siempre se recomienda probar las aplicaciones en el mayor número de dispositivos reales diferentes posible.

Preparar archivos para la subida

Iconos, pantallas de inicio, imágenes, vídeos de demostración…hay varios archivos que hay que tener listos antes de subir la app al App Store. Conoce cuáles son y las diferentes resoluciones en las que deben estar para que puedas tener todo preparado para tu salto al Store.

Beta Testing

Si queremos cerrar el círculo perfecto de creación de una app, habremos realizado pruebas en nuestros dispositivos para asegurarnos del buen funcionamiento de la misma. Sin embargo, siempre es buena idea, realizar un programa de pruebas beta entre otros usuarios, para poder afinar al máximo la calidad de nuestra app. Para ello, Apple nos proporciona TestFlight, integrado dentro de iTunes Connect.

Subida al App Store

Has creado la app de tus sueños, le has dedicado un montón de horas, has realizado un programa de pruebas y ya está todo listo. Es hora de subir tu app al App Store y que la gente empiece a disfrutar de ella!

ClaseProyecto1 FizzBuzz

Dentro de un Playground, creamos un bucle sencillo para imprimir por pantalla un mensaje determinado según los resultados de las operaciones que pongamos como condición.

ClaseProyecto2 isDivisible

Playground en el que creamos una función que determine de forma automática si un número es divisible por otro.

ClaseProyecto3 SportsList

Proyecto en Xcode. Creamos una app con una serie de deportes en forma de lista, con su correspondiente información a través de una barra de navegación.

ClaseProyecto4 Animations

Aprende a animar una serie de elementos dentro de la vista de tu aplicación, en este caso los iconos para compartir en redes sociales, así como el sistema de puntuación por parte del usuario.

ClaseProyecto5 PhotoLibrary

Ampliamos nuestra app “RestaurantList” para añadir nuestras propias imágenes a a hora de guardar un nuevo restaurante.

ClaseProyecto6 Youtube

En esta clase aprenderás a añadir un listado de videos de Youtube en tu aplicación, así como reproducirlos dentro de la misma.

ClaseProyecto7 Custom Keyboard

Una de las cosas que nos permite crear iOS, son teclados personalizados, para sustituir al que viene con el sistema. Aprende a crear tu propio teclado personalizado.

ClaseProyetco8 SlideDown Menu

No siempre tenemos que utilizar los elementos propios del sistema, también podemos crear los nuestros propios. En esta clase proyecto creamos una menú que desliza de arriba hacia abajo.

Clase Gratuita 1

¿Quieres hacer videojuegos para iOS y no conoces SpriteKit? Te contamos qué es y cómo puede ayudarte a crear juegos para iPhone y iPad de la forma más fácil. Además, te demostramos cómo crear tu primer juego para iOS y te enseñamos los diferentes proyectos que aprenderás a hacer durante el curso.

Hello SpriteKit

Crear juegos para iPhone, iPad y Apple TV es más fácil que nunca, gracias a SpriteKit, el framework que proporciona Apple para que podamos desarrollar juegos increíbles en 2D.

Sprites

Como el propio nombre del framework lo indica, los Sprites son la base de todo juego en SpriteKit. Aprende qué son, cómo crearlos y cómo se comportan.

Movimiento Manual

Haz que un elemento de tu juego se mueva siguiendo los toques del jugador en la pantalla.

Acciones

Es importante saber cómo funcionan las cosas y aprender la forma tradicional de hacerlas, pero no dejes de aprovechar las increíbles facilidades y posibilidades que nos aportan las acciones en SpriteKit.

Escenas

Lo normal es que nuestros juegos tengan un menú principal, una pantalla de “Game Over”…y varios niveles.Para ello vamos a aprender a crear nuevas escenas y mostrarlas en pantalla mediante transiciones.

Cámara

En esta clase, aprenderás a hacer que tu juego sea capaz de desplazarse de de izquierda a derecha, dando sensación de continuidad y movimiento.

Labels

Aquí vamos a ver cómo añadir texto en la pantalla de nuestro juego, para cosas tan útiles cómo mostrar el número de vidas disponibles o la puntuación que lleva el jugador.

Scene Editor

Hasta ahora hemos creado todas las escenas de juego mediante código, así que ya es hora de que aprendamos a utilizar el Editor de Escenas que nos proporciona Xcode, donde configuraremos todo el primer nivel de un nuevo juego.

Física I

En esta clase, aprenderás los conceptos básicos para simular leyes físicas dentro de tus juegos. Además, también aprenderás a prototipar juegos dentro de un Playground de Xcode.

Física II

Seguimos adentrándonos en el mundo de la física en SpriteKit. Verás cómo detectar colisiones basadas en física y como crear clases personalizadas para tus nodos de SpriteKit. Aplicamos lo aprendido en la primera clase de física a nuestro juego MonsterSleep.

Física III

Última clase dedicada a la física en SpriteKit, en la que aprendemos conceptos más avanzados si cabe como: uniones entre elementos, notificaciones…etc. Llevamos nuestro juego a un nuevo nivel.

Clase Proyecto 1

Creamos un juego que nos sirve como repaso sobre todo lo visto en el curso. Utilizamos sprites, fondos deslizantes, acciones, escenas, labels, física…Un ejemplo perfecto para poner en práctica muchos de los conceptos aprendidos.

Clase Proyecto 2

Segad aparte del juego en la que aprendemos  a utilizar el acelerómetro para variar el comportamiento de nuestro juego así como a añadir un sistema de puntuaciones, registrar en el terminal la puntuación máxima conseguida y también añadir un efecto “parallax” con los distintos fondos que componen nuestra escena.

Clase Gratuita 1

Introducción a tvOS, qué es y sus similitudes con iOS. Aprende a crear tu primera app para Apple TV de la forma tradicional.

Clase Gratuita 2

Vamos a crear un sencillo “juego” de preguntas y respuestas para nuestro Apple TV!

Hello TV

Apple se adentra en nuestras televisiones con tvOS. Aquí te lo presentamos.

Arquitectura

En esta clase introducimos los diferentes tipos de arquitectura que pueden tener las aplicaciones para Apple TV en tvOS.

TVML I

Empezamos con el nuevo tipo de apps que puedes crear para el Apple TV: las aplicaciones basadas en TVML.

TVML II

Aprende a utilizar las diferentes plantillas TVML que Apple pone a disposición de los desarrolladores.

TVML III

Sigue adentrándote en el apasionante mundo de las apps basadas en TVML, mediante nuevas interfaces y plantillas más complejas.

TVJS

¿Te suena JavaScript? Puedes utilizarlo para manejar el comportamiento de tu app y manipular el DOM del TVML.

Apps Tradicionales

¿Tienes experiencia en el desarrollo de apps para iOS? No todo es TVML, en tvOS también puedes crear aplicaciones utilizando las librerías nativas en Swift.

Controles Básicos

En esta clase, mostramos los controles básicos con los que los usuarios pueden interactuar dentro de tu aplicación.

Stack Views

Los Stack Views son el “esqueleto” de la estructura de tu app, por lo que te interesa aprender bien cómo se comportan.