“Procura-se programador Swift com 2
anos de experiência. Salário: R$ 1.200 +
VT + VR”
Introdução ao Swift por Henrique Morbin – iOS Developer
Quem sou eu?
 Henrique Morbin, 25 anos;
 Consultor Técnico Mobile na Hewlett-Packard;
 Estudante de Matemática pela UFRGS;
 3 anos de experiência em iOS;
 1 dia de experiência em Swift.
Meus apps Ver portfólio completo:
http://morbix.com.br/resume/
Combinações Iniciais
 Ninguém vai sair daqui programador Swift;
 É apenas uma introdução e será bem superficial;
 Não façam perguntas “difíceis”;
 A vaga do título não é verdadeira.
The Swift Language Programming
 Nova linguagem de programação;
 Desenvolvida pela Apple;
 Segura, Moderna e Poderosa;
 Frameworks Cocoa e Cocoa Touch;
 Funciona integrado com o Objective-C;
 Funciona com o novo recurso Playground.
WWDC 2014
 San Francisco;
 Palestra principal;
 02/06/2014;
 5 dias de evento;
 iOS 8 & Mac OSX Yosemite (10.10).
 Veja as novidades em:
 http://www.macrumors.com/2014/06/02/apple-announces-ios-8/
 http://www.macmagazine.com.br
Playground
 Código;
 Preview dos objetos;
 Timeline com:
 Saída do console;
 Gráfico da evolução dos laços;
 Não precisa de build;
 Ótimo para testar os códigos e
brincar (playground) com a
linguagem.
Constantes e Variáveis
Tipo dos dados subentendidos
Caracteres especiais e emoticons
Strings
Manipulação de Strings
Concatenação de Strings
Arrays e Dictionaries
Qual a diferença de Array e Dictionary
para NSArray e NSDictionary?
Exemplo de laço FOR [0-4]
Exemplo de laço FOR [0-5]
Interagindo com os elementos de um
Dictionary
Adicionando um elemento no Array
Adicionando vários elementos no Array
Alterando um elemento específico do
Array
Substituindo os índices 3, 4 e 5 por 2
elementos
Alterando um valor do Dictionary através
de uma chave inexistente
Switches no Swift não precisam mais de
‘break’
Switches no Swift aceitam qualquer tipo
de dado agora
Switches no Swift a cláusula ‘default’ é
obrigatório
Switches no Swift aceitam ranges de
valores
Sintaxe de uma função/método
Chamando uma função (nada de mais)
Sintaxe de uma função com parâmetros
Parâmetro com valor default
Chamando uma função com parâmetros
default
Sintaxe de uma função com retorno
Sintaxe de uma função com retorno de
múltiplos valores (Tuple)
Tuple são vetores com elementos de
variádos tipos
Utilizando o retorno Tuple de uma função
Nomeando os valores do Tuple
Utilizando o Tuple com os valores
nomeados
Clouser (ou Blocks)
Enfatizando o tipo de dado Clouser
Declaração de Clouser e de Function
Clouser como parâmetro de função
Chamando a função e passando um
Clouser como parâmetro
Possibilidade de uso nos casos em que o
último argumento da função é um Clouser
O que ainda temos para ver?
 Classes, Propriedades, Métodos e
Inicializadores;
 Herança de Classes;
 Propriedades com valores default e
Propriedades Computadas;
 Sobrecarga de Métodos e Sobrecarga de
Propriedades;
 Observadores de Propriedades(willSet, didSet,
newValue, oldValue);
 Structures com Propriedades Computadas e
com Métodos;
 Diferença de Structures e de Classes;
 Diferenças das Constantes e Variáveis para
Structures e para Classes;
 Modificando uma Structure;
 Enums: Raw Values e Hash Values;
 Enums com valores associados;
 Emuns com Inicializadores e Propriedades;
 Tipos de dados aninhados;
 Extensões de Structures e de variáveis
primitivas;
 Pilha de estruturas não-genéricas e de
estruturas genéricas;
...e tudo isso apenas referente ao
vídeo de introdução do Swift.
Esse é o Swift
Onde buscar mais informações?
 Livro disponível na iBooks Store
 https://itunes.apple.com/br/book/the-swift-programming-language/id881256329?mt=11
 Documetação online:
 https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programmi
ng_Language/
 Vídeos do WWDC – Sessions
 https://developer.apple.com/videos/wwdc/2014/
 Intrudução, Intermediário, Avançado e muitos outros...
 GitHub
 Diversos desenvolvedores ninjas e sem nada para fazer já disponibilizaram códigos e projetos inteiros
em Swift;
 Grupos/Fóruns/Blogs
Entre em contato comigo
 Facebook: http://facebook.com/hgmorbin
 Portfólio: http://morbix.com.br/resume
 GitHub: http://github.com/Morbix
 Blog: http://iOS4Fun.blogspot.com
 Em breve: LetsGoDev.com
 E-mail: morbin_@hotmail.com
 Whats: 5181992194
Q&A
Obrigado

Introdução ao Swift por Henrique Morbin – iOS Developer

  • 1.
    “Procura-se programador Swiftcom 2 anos de experiência. Salário: R$ 1.200 + VT + VR” Introdução ao Swift por Henrique Morbin – iOS Developer
  • 2.
    Quem sou eu? Henrique Morbin, 25 anos;  Consultor Técnico Mobile na Hewlett-Packard;  Estudante de Matemática pela UFRGS;  3 anos de experiência em iOS;  1 dia de experiência em Swift.
  • 3.
    Meus apps Verportfólio completo: http://morbix.com.br/resume/
  • 4.
    Combinações Iniciais  Ninguémvai sair daqui programador Swift;  É apenas uma introdução e será bem superficial;  Não façam perguntas “difíceis”;  A vaga do título não é verdadeira.
  • 5.
    The Swift LanguageProgramming  Nova linguagem de programação;  Desenvolvida pela Apple;  Segura, Moderna e Poderosa;  Frameworks Cocoa e Cocoa Touch;  Funciona integrado com o Objective-C;  Funciona com o novo recurso Playground.
  • 6.
    WWDC 2014  SanFrancisco;  Palestra principal;  02/06/2014;  5 dias de evento;  iOS 8 & Mac OSX Yosemite (10.10).  Veja as novidades em:  http://www.macrumors.com/2014/06/02/apple-announces-ios-8/  http://www.macmagazine.com.br
  • 7.
    Playground  Código;  Previewdos objetos;  Timeline com:  Saída do console;  Gráfico da evolução dos laços;  Não precisa de build;  Ótimo para testar os códigos e brincar (playground) com a linguagem.
  • 8.
  • 9.
    Tipo dos dadossubentendidos
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
    Qual a diferençade Array e Dictionary para NSArray e NSDictionary?
  • 16.
  • 17.
  • 18.
    Interagindo com oselementos de um Dictionary
  • 19.
  • 20.
  • 21.
    Alterando um elementoespecífico do Array
  • 22.
    Substituindo os índices3, 4 e 5 por 2 elementos
  • 23.
    Alterando um valordo Dictionary através de uma chave inexistente
  • 24.
    Switches no Swiftnão precisam mais de ‘break’
  • 25.
    Switches no Swiftaceitam qualquer tipo de dado agora
  • 26.
    Switches no Swifta cláusula ‘default’ é obrigatório
  • 27.
    Switches no Swiftaceitam ranges de valores
  • 28.
    Sintaxe de umafunção/método
  • 29.
    Chamando uma função(nada de mais)
  • 30.
    Sintaxe de umafunção com parâmetros
  • 31.
  • 32.
    Chamando uma funçãocom parâmetros default
  • 33.
    Sintaxe de umafunção com retorno
  • 34.
    Sintaxe de umafunção com retorno de múltiplos valores (Tuple)
  • 35.
    Tuple são vetorescom elementos de variádos tipos
  • 36.
    Utilizando o retornoTuple de uma função
  • 37.
  • 38.
    Utilizando o Tuplecom os valores nomeados
  • 39.
  • 40.
    Enfatizando o tipode dado Clouser
  • 41.
  • 42.
  • 43.
    Chamando a funçãoe passando um Clouser como parâmetro
  • 44.
    Possibilidade de usonos casos em que o último argumento da função é um Clouser
  • 45.
    O que aindatemos para ver?  Classes, Propriedades, Métodos e Inicializadores;  Herança de Classes;  Propriedades com valores default e Propriedades Computadas;  Sobrecarga de Métodos e Sobrecarga de Propriedades;  Observadores de Propriedades(willSet, didSet, newValue, oldValue);  Structures com Propriedades Computadas e com Métodos;  Diferença de Structures e de Classes;  Diferenças das Constantes e Variáveis para Structures e para Classes;  Modificando uma Structure;  Enums: Raw Values e Hash Values;  Enums com valores associados;  Emuns com Inicializadores e Propriedades;  Tipos de dados aninhados;  Extensões de Structures e de variáveis primitivas;  Pilha de estruturas não-genéricas e de estruturas genéricas; ...e tudo isso apenas referente ao vídeo de introdução do Swift.
  • 46.
    Esse é oSwift
  • 47.
    Onde buscar maisinformações?  Livro disponível na iBooks Store  https://itunes.apple.com/br/book/the-swift-programming-language/id881256329?mt=11  Documetação online:  https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programmi ng_Language/  Vídeos do WWDC – Sessions  https://developer.apple.com/videos/wwdc/2014/  Intrudução, Intermediário, Avançado e muitos outros...  GitHub  Diversos desenvolvedores ninjas e sem nada para fazer já disponibilizaram códigos e projetos inteiros em Swift;  Grupos/Fóruns/Blogs
  • 48.
    Entre em contatocomigo  Facebook: http://facebook.com/hgmorbin  Portfólio: http://morbix.com.br/resume  GitHub: http://github.com/Morbix  Blog: http://iOS4Fun.blogspot.com  Em breve: LetsGoDev.com  E-mail: morbin_@hotmail.com  Whats: 5181992194
  • 49.
  • 50.