martes, 16 de junio de 2015

Apple da un paso importante, cara a los Desarrolladores.

 Apple unifica todas sus licencias de desarrollador en una única membresía.

El pasado 8 de Junio, Apple en su WWDC nos traía un montón de novedades.
Entre otras muchas cosas nos presento a Os X 10.11 "El Capitán" , iOS 9 , WatchOS Dos , el Apple Music...

Pero la que mas entusiasmo a los desarrolladores fue la unificacion de las licencias.

El nuevo programa de apple Developer, permite ahora a los desarrolladores pagar una única licencia, y poder desarrollar, probar y publicar, aplicaciones en todas sus plataformas.

Recordemos que hasta este momento los desarrolladores teníamos que pagar una licencia para iOS y otra para crear aplicaciones para Mac.
Y ahora ademas de estos dos también podremos desarrollar para el Apple Watch.
En Europa la licencia de desarrollador cuesta 99€.








Esta es una nueva posibilidad que nos brinda Apple , permite a los desarrolladores, crear aplicaciones para Mac OS X - iOS y WatchOS.

Con ello se abre un amplio abanico de posibilidades a todos los que como a mi nos encanta experimentar y probar cosas nuevas.

Creo que es un buen avance, y que era necesario para acercar el mundo de la programación a mas usuarios.

Otra de las novedades presentadas es la posibilidad que tienen ahora los desarrolladores de probar sus aplicaciones en sus dispositivos sin tener que pagar la licencia de desarrollador, cosa que antes era imposible.


                                 



Fuente: Apple Developer



domingo, 3 de agosto de 2014

"Chuleta" Con referencia de imprescindible sobre SWIFT.

"Chuleta" Con referencias de imprescindibles sobre SWIFT.


Siempre es bueno tener a mano una "chuleta" con el uso mas cotidiano de de cualquier lenguaje de programación y desde luego Swift no va a ser menos.

Mi consejo es descargarla e imprimirla y tenerla siempre cerca.. nunca se sabe cuando se pueda necesitar.


Swift es un lenguaje de programación creado por Apple con el compilador LLVM para los sistemas operativos OS X e iOS, presentado el 2 de junio del 2014 en el WWDC 2014.

 El lenguaje en un principio coexistirá con Objective-C, lenguaje que maneja la plataforma de programación oficial de Apple Xcode.

La sensación que tenemos es que terminara suplantando a Objective C.

Así que, mi consejo es que entremos de lleno en este fabuloso lenguaje y intentemos aprenderlo pues se trata de un potente y a la vez sencillo lenguaje de programación.

Su sintaxis es mucho mas clara y sencilla que su antecesor Objective C.


Bueno, pues sin mas dilación les dejo esta "Chuleta-Swift".
Espero les guste y les sirva para algo.

se agradecen comentarios.





domingo, 22 de junio de 2014

USO DE UIACTIVITY INDICATOR VIEW CON SWIFT.





Uso de UIActivity indicator view con swift

Creamos el IBOutlet :

@IBOutlet var uiactivity: UIActivityIndicatorView


Una vez arrastrado el  objeto al Storyboard y creada la conexión con el IBOutlet, creamos las funciones que necesitemos para hacer funcionar nuestro objeto.
Elegimos el estilo de nuestro objeto:
Esta opción nos muestra un activity indicator  de color blanco y grande:

self.uiactivity.activityIndicatorViewStyle = .WhiteLarge


Esta línea  mostraría el activity indicator pequeño y blanco:
self.uiactivity.activityIndicatorViewStyle = .White

Esta mostraría el activity indicator pequeño y negro, todas estas opciones podemos definirlas también desde el inspector de atributos del Xcode.
       
self.uiactivity.activityIndicatorViewStyle = .Gray

Con esta función  y usando startAnimating, iniciamos la animación:
func empezarAnimacion()
    {
    uiactivity.startAnimating()
    }
   

Asi podemos cambiar el color:
func cambiarcolor()
    {
        self.uiactivity.color = UIColor.greenColor()
     }

Para ocultarlo o mostrarlo usaremos:
 func ocultarActivity()
    {
      self.uiactivity.hidesWhenStopped = true //lo oculta

     self.uiactivity.hidesWhenStopped = false //lo muestra
     }



Así detendríamos la animación:
 func detieneActivity()
    {
        self.uiactivity.stopAnimating()
    }





       

Espero les guste, seguire añadiendo mas cosas sobre swift.



@promedi46      -2014-

domingo, 15 de junio de 2014

Creación de Alertas y ActionSheet con Swift.

Creación de Alertas y ActionSheet con Swift.

En esta ocasión, vamos a ver como crear alertas sencillas y actionSheet, usando el nuevo lenguaje de programación presentado por Apple en la ultima WWDC.
Swift difiere un poco respecto a Objective C.



Para crear una alerta sencilla usamos el siguiente código:

var alertaDos = UIAlertController(title: "Titulo", message: "Cuerpo del mensaje", preferredStyle: UIAlertControllerStyle.Alert)

//Ahora es mucho mas sencillo, y podemos añadir nuevos botones y usar handler para capturar el botón seleccionado y hacer algo.

        alertaDos.addAction(UIAlertAction(title: "Salir" , style: UIAlertActionStyle.Cancel ,handler: {alerAction in
            println("Pulsado el boton de Salir")
            }))

//Para hacer que la alerta se muestre usamos presentViewController, a diferencia de Objective C que como recordaremos se usa [Show Alerta]

        self.presentViewController(alertaDos, animated: true, completion: nil)




Esto nos muestra este tipo de alerta y al pulsar en el botón "Salir" Nos muestra por consola: Pulsado el botón de Salir. 





Alerta ActionSheet:

Este tipo de alerta que aparece de forma modal desde abajo hacia arriba, el código necesario en Swift es el siguiente:

var action : UIAlertController = UIAlertController(title: "Alerta", message: "Seleciona un  Valor", preferredStyle: UIAlertControllerStyle.ActionSheet)


//Al igual que en la alerta normal con addAction añadimos nuevos botones y con handler capturamos el botón pulsado por el usuario y hacemos algo.
        action.addAction(UIAlertAction(title: "Valor 1", style: UIAlertActionStyle.Default, handler: { alertAction in
            println("Click en Valor 1")
            action.dismissModalViewControllerAnimated(true);
            }))

 //Con UIAlertActionStyle podemos elegir el tipo de botón que vamos a usar en este caso usamos Destructive que nos mostraría el texto del botón en rojo.
        action.addAction(UIAlertAction(title: "Valor 2", style: UIAlertActionStyle.Destructive, handler: { alertAction in
            println("Click en Valor 2")
            action.dismissModalViewControllerAnimated(true);
            }))
        


        action.addAction(UIAlertAction(title: "Cancelar", style: UIAlertActionStyle.Cancel, handler: {alertAction in
            println("Click en Cancelar")
            action.dismissModalViewControllerAnimated(true);
            }))
        

        self.presentViewController(action, animated: true, completion: nil)




Espero les guste, proximamente seguiré añadiendo mas cosas sobre Swift.

Saludos y espero sus sugerencias.


@promedi46









martes, 10 de junio de 2014

Conceptos basicos , sobre Swift


Swift,  el nuevo lenguaje de programación que Apple nos presento, el día dos  en la WWDC 2014.



Hola amigos, como de todos es sabido, el día dos de Junio y como colofón a la presentación de iOS 8 y de OS X Yosemite, Apple nos presentaba su nuevo lenguaje de programación llamado Swift.

Swift esta disponible para desarrolladores a través de Xcode 6, y tras unos días dándole un vistazo creo que los días de Objective C están contados.

Swift a venido para quedarse y aunque el nuevo Xcode 6, permite elegir el lenguaje deseado, dándonos la posibilidad de elegir el lenguaje que queremos usar, y que podemos elegir a la hora de crear nuestro proyecto.


Lo cierto es que con lo poco que he podido ver, estoy encantado y me gusta bastante.

Apple, ha puesto un Ebook a disposición de los desarrolladores,  pero en Español hay muy poca información sobre este lenguaje, así que me he permitido hacer una pequeña guia muy básica sobre el uso de Swift.


//
//  main.swift
//  PruebasConSWift
//
//  Created by Francisco on 6/6/14.
//  Copyright (c) 2014 PromediDeveloper. All rights reserved.
//

import Foundation



 Declaración de Variables:

// Con la palabra reservada "var" declaramos las variables y le asignamos un valor

var nombre = "Steve"
var apellidos = "Martinez"
var edad = 3
var altura = 1.77
var DNI = 4323069
var numero = 0
var cadenaDeTexto = "Cadena"
var booleana = true
var contadorDos = 0


//Ahora vamos a cambiar el tipo de una variable ya definida
//Altura estaba definida como Double y tenia un valor de 1.77
var variableCambiadaDeTipo = Int(altura)
println(variableCambiadaDeTipo) //Esto daria como resultado un 1


//Tambien podemos definir el tipo de variable al declararla
var variableDefinida:String = "Variable definida de texto"

//para declararla sin darle ningun valor tenemos que especificar su tipo
var variableDeTexto:String
//Tambien podemos poner
var variableVacia = String()

Para declarar constantes usamos let:


// Com la palabra reservada "let" declaramos constantes
let constante = "Mi Constante"
let constanteNumerica = 123.34


 Declaración y uso de Array:


 //Asi se declaran los array
var ciudadesEspañolas = ["Madrid","Barcelona","Valencia","Bilbao","Murcia","Albacete"]

// Declaracion de un Array vacio:
var arrayVacio=[]

//Declaracion de un array vacio pero asignando un tipo de datos
var arrayVacioString:String[]

//Tambien podemos crear un sub  array con un indice de rango
var arrayConIndice = ciudadesEspañolas[1...4]
println(arrayConIndice) //Resultado:[Barcelona, Valencia, Bilbao, Murcia]

//insertar elementos al array
ciudadesEspañolas.append("Zaragoza")

//insertar elementos en un lugar determinado
ciudadesEspañolas.insert("Oviedo",atIndex: 3)

//borrar un elemento determinado
ciudadesEspañolas.removeAtIndex(4)

//Borrar todos los elementos del array

arrayConIndice.removeLast()



 Declaración de Diccionarios:

//Declarar un diccionario vacio
var dicionariovacioConTipoDatosAsignado = Dictionary<String,Int>()

//Para asignarle un tipo de datos inicial
var diccionarioConDatosAsignados:Dictionary<Int,String> = [0:"Cero",10:"Diez",20:"Veinte",30:"Treinta"]


//Asi se declaran los diccionarios normalmente con diferentes tipos de datos
var diccionario = ["Color":"Blanco","Peso": "70" , "Estatura":"1.78"]

var diccionarioVehiculo = ["Tipo Vehiculo":"Coche","Color": "Blanco" , "Numero Asientos":"Cinco"]
//Añadir elementos al diccionario
diccionario.updateValue("Elche", forKey:"Ciudad")

//Modificar un dicionario
diccionario.updateValue("Modificado",forKey:"Color")

//Borrar un Elemento del diccionario
diccionario["Peso"]=nil

//otra forma de borrar un elemento
diccionario.removeValueForKey("Estatura")

//Borrar todo el diccionario
diccionario.removeAll()


 Uso de For para leer Diccionarios y Array:

//Usar el for in para leer un diccionario
for (clave,valor) in diccionarioVehiculo
{
    println("\(clave) : \(valor)")
}



 //Usar el For para leer el array
for contador in ciudadesEspañolas
 {
    println(contador)
 if contador == "Valencia"
  {
    //cuando contador es igual a Valencia la imprime por consola
    println("En este momento contador es igual a Valencia")
  }
 }

//Otra forma de leer un array con el bucle for
for (var i=0;i < ciudadesEspañolas.count;i++)
    {
        println(ciudadesEspañolas[i])
    }


 // For usando "..." para que se produzca la interacion en un rango determinado
 //Nos muestra la tabla de multiplicar del 5
for indice  in 0...10
    {
    println("\(indice) multiplicado por 5 es = \(indice * 5)")
    }



  //Uso del For para repetir algo hasta alcanzar un valor
    for  var i = 0 ; i <= 10 ; i = i + 2
    {
       println("valor de i : \(i)")
    }

    
    //Varios usos del if y uso de: || "OR"
  if edad == 2 || edad == 3
      {
         println("La edad es igual a  \(edad)")//La edad es igual a  3
      }
  
   //Uso de comparador !=  "distinto"
  
  if  edad != 2
      {
        println("La edad es diferente a 2 y es \(edad)")//La edad es diferente a 2 y es 3
      }

  Uso de Bucles:


  // Uso de While
  while contadorDos <= 10
     {
       contadorDos = contadorDos + 3
       println(contadorDos)
     }
  
  
   //ponemos a cero el contador para volver a usarlo
   contadorDos = 0

   

  //uso de do - While con un if y un else
  do
   {
      if contadorDos <= 30
        {
           println("Estos son los numeros menores de 30 : \(contadorDos)")
        }else {
                println("Estos numeros \(contadorDos) son mayores de 30")
              }
         contadorDos = contadorDos + 5

         }
  while contadorDos <= 60


 Uso de Switch:  
  
  //Uso de Switch y Case
  
  let diaSemana = "Miercoles"

switch diaSemana
    {
  case "Lunes":
    println("El dia de la semana es Lunes")
    
  case "Martes":
    println("El día de la semana es Martes")
    
  case "Miércoles":
    println("El día de la semana es Miércoles")
    
  case "Jueves","Viernes":
    println("El dia de la semana es Jueves o Viernes")
    
  case "Sábado","Domingo":
    println("El día de la semana es Sábado o Domingo")
    
    
      default :
    
        println("Esto no es un dia de la semana")
    
 }


Creación y uso de Funciones:

  

  
 //Función sin Parámetros
 func imprime()
  {
    println("Esto es la llamada a la función imprime")
  }



//Llamada a la función sin parámetros
imprime()



 //Función que recibe dos parámetros
 func funcionCoche(marca : String , modelo:Int)
   {
    println("Marca: \(marca) Modelo: \(modelo)")
   }


 //Llamada a la función con parámetros
 funcionCoche("Seat", 1200) //Esto saldría por consola: Marca: Seat Modelo: 1200



 // Funcion que retorna un dato

func funcionQueRetornaUnNumeroEntero(a : Int , b :Int)->Int
{
    var resultado = a + b
    
    return resultado
    
}

//Llamamos a la funcion y le asignamos dos numero enteros
 println("Resultado de la suma: \(funcionQueRetornaUnNumeroEntero(34 ,47))")



Bueno Amigos, espero les les guste, en tener un poco de tiempo creare otra entrada con mas información de Swift.

Saludos.