Caelum / Alura / Casa do Código Guilherme Silveira ...
Transcript of Caelum / Alura / Casa do Código Guilherme Silveira ...
![Page 1: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/1.jpg)
Caelum / Alura / Casa do Código
Swift: uma relação de amor e ódio
Guilherme Silveira@guilhermecaelum
![Page 2: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/2.jpg)
Guilherme Silveira
❖ curso no alura.com.br
❖ livro no casadocodigo.com.br
❖ instrutor na www.caelum.com.br
![Page 3: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/3.jpg)
popularizou programação windows?
![Page 4: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/4.jpg)
vb e o sobrinho programador
![Page 5: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/5.jpg)
popularizou programação web?
![Page 6: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/6.jpg)
php e o sobrinho programador
![Page 7: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/7.jpg)
linguagem fácil mobile?
![Page 8: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/8.jpg)
swift e o sobrinho programador
![Page 9: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/9.jpg)
vb e php… humm…
![Page 10: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/10.jpg)
vb e php => código ruim?
![Page 11: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/11.jpg)
pop como vb e php… mas ainda mais “seguro”?
![Page 12: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/12.jpg)
BUG
![Page 13: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/13.jpg)
quem não gosta?
![Page 14: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/14.jpg)
encontrar, testar, corrigir, vencer
![Page 15: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/15.jpg)
a evolução dos bugs
![Page 16: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/16.jpg)
a evolução dos bugs
desde software
1990 Sistema Operacional
1991 Aplicativo
1996 Webthin-client
2013 Mobile
![Page 17: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/17.jpg)
a evolução dos bugs
desde software solução
1990 Sistema Operacional reinicia
1991 Aplicativo fecha e abre, ou reinicia o SO
1996 Webthin-client refresh, fecha e abre ou reinicia o SO
2013 Mobile ??
![Page 18: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/18.jpg)
a evolução dos bugs
desde software solução tempo p/resolver
1990 Sistema Operacional reinicia minutos
1991 Aplicativo fecha e abre, ou reinicia o SO minuto
1996 Webthin-client
refresh, fecha e abre ou reinicia o SO segundos
2013 Mobile ?? ??
![Page 19: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/19.jpg)
a evolução dos bugs
desde software solução tempo p/resolver
se quiser usar o concorrente
1990 Sistema Operacional reinicia minutos horas e $
1991 Aplicativo fecha e abre, ou reinicia o SO minuto horas e $
1996 Webthin-client
refresh, fecha e abre ou reinicia o SO segundos minutos
2013 Mobile ?? ?? segundos
![Page 20: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/20.jpg)
a evolução dos bugs
desde software solução tempo p/resolver
se quiser usar o
concorrenteconcorrentes
1990 Sistema Operacional reinicia minutos horas e $ conta em
uma mão
1991 Aplicativo fecha e abre, ou reinicia o SO minuto horas e $ conta em
duas mãos
1996 Webthin-client
refresh, fecha e abre ou reinicia o
SOsegundos minutos centenas
2013 Mobile ?? ?? segundos muitos
![Page 21: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/21.jpg)
se crasheia?
![Page 22: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/22.jpg)
a evolução dos bugs
desde software solução tempo p/resolver
se quiser usar o
concorrenteconcorrentes
1990 Sistema Operacional reinicia minutos horas e $ conta em
uma mão
1991 Aplicativo fecha e abre, ou reinicia o SO minuto horas e $ conta em
duas mãos
1996 Webthin-client
refresh, fecha e abre ou reinicia o
SOsegundos minutos centenas
2013 Mobile DESINSTALA +segundos -segundos muitos
![Page 23: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/23.jpg)
pepino…
![Page 24: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/24.jpg)
linguagem + fácil com - bugs?
![Page 25: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/25.jpg)
linguagem + fácil
live code em swift x android x vblive code em swift x java x scala x etc
![Page 26: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/26.jpg)
refatoração win
![Page 27: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/27.jpg)
+ fácil => porta de entrada
![Page 28: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/28.jpg)
Mas e os crashes?
![Page 29: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/29.jpg)
solução: compilação + rígida
![Page 30: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/30.jpg)
acesso inválido a memória
php: ignora e ve mensagens se acumulando e coisas inesperadas
![Page 31: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/31.jpg)
acesso inválido a memória
java e discipulos: thread crash e nullpointerexception
![Page 32: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/32.jpg)
acesso inválido a memória
java: se catch exception, uuuu, boa sorte
![Page 33: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/33.jpg)
acesso inválido a memória
java: throws exception como controle de fluxo (aka frameworks)
![Page 34: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/34.jpg)
acesso inválido a memória
c e discipulos (nodejs, android, objective C included): acabou o mundo
![Page 35: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/35.jpg)
acesso inválido a memória
swift: nunca
![Page 36: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/36.jpg)
acesso inválido a memória
swift: nunca!
![Page 37: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/37.jpg)
acesso inválido a memória
swift: nunca?
![Page 38: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/38.jpg)
acesso inválido a memória
swift: só se o programador quiser ele força goela abaixo.
![Page 39: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/39.jpg)
acesso inválido a memória
swift: padrão safety
java, nodejs, qq coisa: padrão caca
![Page 40: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/40.jpg)
OO x funcional
tell don’t ask
ou o contrário?
![Page 41: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/41.jpg)
Mas…. no XCode…
![Page 42: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/42.jpg)
100 tipos de construtores
![Page 43: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/43.jpg)
gerador de código zoado
![Page 44: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/44.jpg)
multiple inheritance
![Page 45: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/45.jpg)
multiple inheritance
Senhor Marquinhos:“desamarro qualquer situação, amorosa, multiple inheritance, mixins, traits etc”
![Page 46: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/46.jpg)
Resumindo
![Page 47: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/47.jpg)
Resumindo
❖ Em geral, continuamos programando como em 1990
❖ Mobile: crash = perde cliente
❖ Swift: sobrinho ou expert podem programar
❖ Mais fácil, menos seguro, mais difícil, mais seguro
❖ Gerador de código: :(
![Page 48: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/48.jpg)
Resumindo
❖ Queria uma linguagem sobrinho
❖ + segura
❖ com gerador de códigos melhor
❖ Será que Hack e outras seguem este caminho? O que você acha?
![Page 49: Caelum / Alura / Casa do Código Guilherme Silveira ...](https://reader033.fdocumentos.com/reader033/viewer/2022061600/5870d1331a28abad028c04f6/html5/thumbnails/49.jpg)
Guilherme Silveira
❖ curso no alura.com.br
❖ livro no casadocodigo.com.br
❖ instrutor na www.caelum.com.br