[Aporte] Swift, el nuevo lenguaje de Apple (Conceptos básicos)

Iniciado por IlconZy, 2 Febrero 2015, 23:16 PM

0 Miembros y 1 Visitante están viendo este tema.

IlconZy

Como sabréis en junio del año pasado la conocida Apple  ;D sacó a la luz su último proyecto para desarroyadores en la WWDC (Worldwide Developers Conference) y esto no es nada más y nada menos que un nuevo lenguaje de programación.

Es nuevo ya que antes no existía pero también es cierto que tras estudiarlo un poco no aparenta tener grandes diferencias con otros OOL como Java o Objetive-C.
El lenguaje esta orientado exclusivamente a realizar aplicaciones para sistemas operativos ioS o OS X (Sistemas Apple) y la compañia de la manzana va a apostar muy fuerte porque sea este lenguaje de programación el que domine la escena de desarrollo de aplicaciones para sus terminales. (Me lo ha dicho el fantasma de Steve)  ;-)

¿Por que aprender Swift?

Porque en breve te puede hacer ganar mucho dinero.  >:D >:D
Bueno ya en serio, dejando aparte el tema del dinero, si Apple se sale con la suya dentró de poco se necesitarán programadores de Swift ya que hay una enorme cantidad de dispositivos que son Apple en la actualidad y suponen una cuota de mercado grande. Además aparenta ser un buen lenguaje orientado a objetos el cual nos permitirá hacer grandes cosas, además Apple debería mantenerlo al día con actualizaciones y mejoras.

Si no sabes programar en ningún otro lenguaje hasta la fecha no creo que este sea tu lenguaje ni tu manual, ya que al ser un lenguaje muy novel y estar orientado a un sistema operativo específico acarrea inconvenientes. Aún asi si quieres empezar con Shift te animo a que lo intentes, menos es siempre nada.

Y sin más dilación...  :laugh: :laugh: :laugh: :laugh:

Conceptos básicos de Swift

¿Donde programar con Swift?
Apple nos ofrece dos opciones, una buena y otra para salir del paso. De momento a nosotros nos valdrá con esta web: http://swiftstub.com/
La herramienta avanzada es el Xcode en su versión 6 (actualmente) pero que desafortunadamente solo se puede instalar en sistemas Mac, otra vez la maravillosa excusividad de Apple. Si quieres programar con Xcode deberás tener un sistema operativo Apple o instalar uno en una máquina virtual. Existen manuales por internet para ello, de momento nosotros nos apañaremos con el compilador web SwiftStub.


Declaracion de variables

La declaración de constantes y variables de realiza de la siguiente manera:
let constante = 10
var variable = "elhacker.net"


Como podemos observar hay algunas cosas a tener en cuenta ya en este punto y es que las sentencias en Swift, (como en Vb.net, por ejemplo) acaban con un salto de carro y no con un ";" como en la mayoría de lenguajes. Si queremos podemos añadir ";" al final de las lineas y será obligatorio poner ";" en caso de que queramos escribir dos instrucciones en la misma linea (cosa poco recomendable)

Dicho esto, la palabra clave let sirve para declarar constantes y a su vez la palabra var sirve para declarar variables. Para los que nunca habéis programado, una variable es un espacio reservado en memoria que almacena un valor (u objeto) el cual puede ser modificado a lo largo del programa y su valor se puede utilizar y una constante es una variable que le otorgamos un valor al principio y luego no puede ser modificada.

Tipos de datos
Como hemos podido observar en el ejemplo anterior, cuando creamos las variables no especificamos el tipo de las mismas, esto se debe a que el tipo de la variable se define por defecto según el valor que le asignemos, en otras palabras, si igualamos una variable a un dato tipo String, la variable será tipo String y NO podrá cambiar de tipo a lo largo del programa, es decir, algo como esto daría error:
let constante = 10
var ejemplo = "elhacker.net"
ejemplo = 2015;

La variable 'ejemplo' se inicializa como tipo String y al intentar cambiar su valor a un tipo numérico el compilador nos dirá que nos columpiemos  :(

Si queremos crear una variable y asignarle un tipo de dato fijo haremos lo siguiente:
var variableTipoString : String
var variableTipoInt : Int;

Por lo tanto las variables iniciadas en un tipo no pueden almacenar datos de otro tipo como mencionamos anteriormente.

CitarSwift es un lenguaje Case Sensitive, por lo que no es lo mismo var que Var o VAR, necesitamos respetar las mayusculas y minusculas tanto en las palabras reservadas como métodos y variables

Hola mundo!
Para mostrar información por la consola usaremos el método println("Mensaje"), por lo que un Hola mundo en Swift quedaría de la siguiente manera.
println("Hola mundo")

También podemos hacer uso de las variables para mostrar el mensaje:

let mensajeDeBienvenida : String = "Hola mundo"
println(mensajeDeBienvenida)

Aqui no sería necesario especificar el tipo de la variable como String, pero creo que es una buena práctica iniciar las variables así y yo personalmente apartir de ahora iniciaré todas las variables especificando el tipo, pero es un tema personal, cada programador puede optar la decisión que quiera

Tipos de datos
Como en todos los lenguajes de programación existen distintos tipos de datos para almacenar principalmente números, cadenas de texto y booleanos.
Estos tipos en Swift son:

String para texto

Int para números enteros con signo
UInt para números enteros sin signo
Double para números de coma flotante con 64-bits de precisión
Float para números de coma flotante con 32-bits de precisión

Bool para Booleanos (true, false)

Cambios de tipo
Si queremos cambiar de Int a Double o de Int a String o de Double a Int usamos el cast de Swift que consiste en escribir el tipo nuevo de variable y entre parentesis la variable a convertir.
Hagamos algunas conversiones de tipo

var a = 653;
var cadenaA = String(a)
println(cadenaA)
var double = 56.45
var integer = Int(double)
println(integer)


Hay muchos cambios que no están permitidos, como pasar de String a un tipo numérico o de  tipo Double a tipo String, sin embargo, si queremos pasar de Double a String, podemos hacer un cambio intermedio a Int aunque perderíamos la parte decimal en caso de que la hubiese. De esta forma.
var double = 56.45
var integer = String(Int(double))
println(integer)



Esto es todo por ahora, mañana actualizaré y seguiré con el manual.
Serían muy bien recibidas propuestas y sugerencias.

Un saludo!

Hollyblue


Orubatosu

La ilusión de mi vida... un lenguaje propietario, cerrado y exclusivo para unas maquinas en concreto
"When People called me freak, i close my eyes and laughed, because they are blinded to happiness"
Hideto Matsumoto 1964-1998

Usuario Invitado

Cita de: Orubatosu en 17 Febrero 2015, 13:30 PM
La ilusión de mi vida... un lenguaje propietario, cerrado y exclusivo para unas maquinas en concreto

:xD Aunque sea un lenguaje practicamente inservible para el desarrollo común, hay gente que gana buena pasta haciendo apps para iOS por ejemplo.
"La vida es muy peligrosa. No por las personas que hacen el mal, si no por las que se sientan a ver lo que pasa." Albert Einstein