Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Swift - uma fama repentina
Search
hannelita
October 16, 2014
Technology
1
140
Swift - uma fama repentina
Palestra no TDC de POA 2014 - trilha mobile
hannelita
October 16, 2014
Tweet
Share
More Decks by hannelita
See All by hannelita
Java EE 8 - Future, Wishes and Predictions
hannelita
1
200
JVM Internals Demystified
hannelita
0
350
Eletrônica
hannelita
0
170
Cassandra Meetup
hannelita
0
58
Our Daily Graphs written in Ruby and Neo4j
hannelita
1
170
Wildfly em alta disponibilidade
hannelita
0
240
Helios - o backend pra Mobile que você precisava <3
hannelita
0
110
Neo4j - Dia a dia com grafos, Neo4j e Ruby
hannelita
1
140
Curso relâmpago de eletrônica básica para desenvolvedores
hannelita
1
220
Other Decks in Technology
See All in Technology
Goss: New Production-Ready Go Binding for Faiss #coefl_go_jp
bengo4com
0
1.1k
制約理論(ToC)入門
recruitengineers
PRO
2
260
VPC Latticeのサービスエンドポイント機能を使用した複数VPCアクセス
duelist2020jp
0
180
Figma + Storybook + PlaywrightのMCPを使ったフロントエンド開発
yug1224
4
270
7月のガバクラ利用料が高かったので調べてみた
techniczna
3
250
AIエージェント就活入門 - MCPが履歴書になる未来
eltociear
0
440
Evolution on AI Agent and Beyond - AGI への道のりと、シンギュラリティの3つのシナリオ
masayamoriofficial
0
170
現場が抱える様々な問題は “組織設計上” の問題によって生じていることがある / Team-oriented Organization Design 20250827
mtx2s
3
790
ZOZOTOWNフロントエンドにおけるディレクトリの分割戦略
zozotech
PRO
16
5.2k
GCASアップデート(202506-202508)
techniczna
0
250
GitHub Copilot coding agent を推したい / AIDD Nagoya #1
tnir
2
4.5k
事業価値と Engineering
recruitengineers
PRO
1
190
Featured
See All Featured
Designing for Performance
lara
610
69k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Visualization
eitanlees
147
16k
Making Projects Easy
brettharned
117
6.3k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
Mobile First: as difficult as doing things right
swwweet
223
9.9k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.4k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
1k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Imperfection Machines: The Place of Print at Facebook
scottboms
268
13k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Transcript
Swift Uma fama repentina!
Oi! Hanneli (a.k.a. @hannelita)! Desenvolvedora @Codeminer42! Jogos! Café, Lego, Pokémon
e bichos <3 HIRING
O que *NÃO* vamos ver aqui Objective C é melhor
que Swift! Desenvolvedora com 5 anos de exp em Swift! Evangelização de Swift! Teorias chatas zzzzzzzz
O que *vamos* ver aqui Alguns enroscos do Objective C
! O que os desenvolvedores sentiam falta! Swift - resolvendo alguns desses buracos! Swift - bizarrices! GIFs e imagens legais <3
Desenvolvendo Objective C iOS Xcode SQLite Foundation C C++ UIKit
CoreGraphics CoreServices CoreLocation ARC
Desenvolvendo
iOS Development [ ] [ ] [ ] [ ]
Se fosse só isso… Agonia
Quem nunca… Saiu implementando no .m E esqueceu de colocar
no .h ?
Quem nunca…
Quem nunca… Não sabia o tipo de retorno de uma
API… E colocou um tipo nada a ver… Porque não tinha documentação?
Quem nunca…
Quem nunca… Tomou um erro de compilação… Porque faltou um
simples ; ?
Quem nunca…
Noooo
Noooo
SWIFT!
YEEES
O Swift suaviza quase tudo isso
.m e .h no mesmo lugar
auto-detecta os tipos
auto-detecta os tipos var tdc : String = "TDC" var
tdc = "TDC"
Não precisa de ;
Consigo chamar métodos sem []
FAVOR NÃO TROLLAR
**NÃO** var tdc = 2014! tdc = “Oi!"
**NÃO** var meusNumerosLegais = ! [1,33,345,349] meusNumerosLegais.append(“trololol")
**NÃO** var numero : Int = 0 numero = nil
Swift possui algumas 'bizarrices' Optionals
Swift possui algumas 'bizarrices' Optionals ∆ Existe um valor e
ele é igual a alguma coisa ∆ Não existe NENHUM valor
Swift possui algumas 'bizarrices' Optionals
Swift possui algumas 'bizarrices' Optionals Vamos ver um pouco de
código
Swift possui algumas 'bizarrices' Optionals 1. Meet Playground!
Optionals
Optionals let palestrasCount = hanneli.palestras!.quantidade Não FUNCIONAAA fsdhufuhfsuhfhuefwkfhudfs
Optionals
Optionals Não tenho um objeto Palestra! Instanciamos um! Não tem
nenhum valor MESMO!
Optionals
MOAR cool stuff Traz um pouco de ‘FP' (Programação funcional)!
Closure! Tuple! Generics! Map e Filters
Is it production ready?
Is it production ready? Existem poucos exemplos! Existe pouco material
de estudo! Existe menos conteúdo no StackOverflow! A IDE da Apple dá uns paus!
DISCLAIMER MINHA VISÃO Você não precisa concordar, discordar ou achar
que estou xingando/elogiando
Minha visão Swift: BACANA! Traz um pouco de ‘Ruby- like'
para o mundo de iOS! Menos verboso! :D! Alguns conceitos confusos! Como muitas vertentes de FP, temos que lidar com . ! e etc.
Valeu!!! Perguntas?
[email protected]
@hannelita
Referências http://www.slideshare.net/talesp/swift-optionals ! http://www.slideshare.net/jollen/mokoversity-course-swift-101-3-hours? qid=525c7536-b9e1-4d45-b8da-0447854f6a93&v=qf1&b=&from_search=1! http://www.slideshare.net/giordano/a-swift-introduction-to-swift?next_slideshow=1! http://www.slideshare.net/giordano/a-swift-introduction-to-swift?next_slideshow=1! http://www.slideshare.net/ThoughtWorks/taking-swiftfora-spinmrc?qid=525c7536- b9e1-4d45-b8da-0447854f6a93&v=qf1&b=&from_search=10! http://www.slideshare.net/newgenapps/developing-ios-apps-with-swift?
qid=525c7536-b9e1-4d45-b8da-0447854f6a93&v=qf1&b=&from_search=11! Apple Official Reference