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
170
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Swift - uma fama repentina
Palestra no TDC de POA 2014 - trilha mobile
hannelita
October 16, 2014
More Decks by hannelita
See All by hannelita
Java EE 8 - Future, Wishes and Predictions
hannelita
1
240
JVM Internals Demystified
hannelita
0
380
Eletrônica
hannelita
0
200
Cassandra Meetup
hannelita
0
87
Our Daily Graphs written in Ruby and Neo4j
hannelita
1
200
Wildfly em alta disponibilidade
hannelita
0
290
Helios - o backend pra Mobile que você precisava <3
hannelita
0
130
Neo4j - Dia a dia com grafos, Neo4j e Ruby
hannelita
1
180
Curso relâmpago de eletrônica básica para desenvolvedores
hannelita
1
280
Other Decks in Technology
See All in Technology
Oracle AI Databaseデータベース・サービス: BaseDB/ExaDB-Dの可用性
oracle4engineer
PRO
1
1.1k
[RSJ26] AnoleVLA: Lightweight Vision-Language-Action Model with Deep State Space Models for Mobile Manipulation
keio_smilab
PRO
0
120
Bet AI Day 2026丨Agentは、「金融」という巨大産業の何を変えられるのか
layerx
PRO
0
560
振り返りこそエンジニアの本領
negima
0
150
AIエージェントを雇う前に決める5つのこと
knishioka
1
140
Backstageでつくるセルフサービスな社内開発基盤
kikunosuke75
1
210
人気商品が「ちゃんと買える」をつくる ー ECの負荷改善
ykagano
1
190
研究開発部の紹介 / Sansan R&D Profile
sansan33
PRO
4
25k
DINO-EdgeQuery:Edge-First Polygon Decoding for Building Footprint Extraction from Satellite Imagery
lehupa
0
130
データエンジニアの困りごとをDevinと一緒に解消する
10xinc
2
620
生成AI時代の クレデンシャルとパーミッション設計
nrinetcom
PRO
3
1.3k
Guerilla InnerSource in enterprises, during the AI hype
onenashev
PRO
0
140
Featured
See All Featured
Marketing to machines
jonoalderson
1
5.7k
The untapped power of vector embeddings
frankvandijk
2
1.9k
The Spectacular Lies of Maps
axbom
PRO
1
960
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
460
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.4k
How to Ace a Technical Interview
jacobian
281
24k
Un-Boring Meetings
codingconduct
0
400
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
700
Unsuck your backbone
ammeep
672
58k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
69
65k
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