SlideShare uma empresa Scribd logo
1 de 18
Objective-C para 
quem está 
chegando agora
Produtos
GDG Porto Alegre 
07/11 as 19:30 no 
Bunker360 
http://goo.gl/n6tbpW
Pré-requisitos 
Ter um Mac 
Utilizar o XCode
XCode e 
Simulador 
IDE da Apple 
Não tem limite de memoria e 
de CPU 
Não tem todas as APIs 
disponíveis
Objective-C 
Oriunda do C e de Smalltalk 
Orientada a objetos 
Linguagem dinâmica
Classes 
Header .h 
São como interfaces no Java e 
C# 
Implementation .m 
Implementação dos headers
BankAccount.h
BankAccount.m
Métodos 
Começando com + é um 
métodos estático, com – é 
um método de instancia
Self e Super 
Self é o próprio objeto 
Super é a classe pai
Criando objetos 
Toda classe possui o método alloc e o 
método init 
alloc é responsável por alocar memória 
Init é o construtor 
BankAccount *account = [[BankAccout alloc] 
init]
Propriedades 
Iguais as que temos em C# ou 
Java 
Funcionamento semelhante as 
auto properties do C#
Cocoa Touch 
Foundation Framework 
• NSString 
• NSArray 
• NSDictionary 
• NSMaeDoBadanha 
UIKit 
• UIView 
• UITableView
MVC 
View 
• Xcode Interface Builder 
• XIB ou Storyboard 
Controller 
• UIViewController 
• UITableViewControlller
Eduardo Costa 
eduardo@craftbox.com.br 
@eduardoscosta 
craftbox.com.br 
NSObrigado

Mais conteúdo relacionado

Mais procurados

Introdução ao desenvolvimento para iOS
Introdução ao desenvolvimento para iOSIntrodução ao desenvolvimento para iOS
Introdução ao desenvolvimento para iOSAndrei Rosseti
 
Objective-C e o dinamismo da linguagem
Objective-C e o dinamismo da linguagemObjective-C e o dinamismo da linguagem
Objective-C e o dinamismo da linguagemDiego Chohfi
 
5. Atribuições especiais; Arrays; Tipos de ciclos; Classes-pacote – Fundament...
5. Atribuições especiais; Arrays; Tipos de ciclos; Classes-pacote – Fundament...5. Atribuições especiais; Arrays; Tipos de ciclos; Classes-pacote – Fundament...
5. Atribuições especiais; Arrays; Tipos de ciclos; Classes-pacote – Fundament...Manuel Menezes de Sequeira
 
Qcon SP 2012, 5 (ou mais) coisas que você gostaria de saber sobre o iOS e o O...
Qcon SP 2012, 5 (ou mais) coisas que você gostaria de saber sobre o iOS e o O...Qcon SP 2012, 5 (ou mais) coisas que você gostaria de saber sobre o iOS e o O...
Qcon SP 2012, 5 (ou mais) coisas que você gostaria de saber sobre o iOS e o O...Ricardo Valeriano
 
Introdução ao processamento de imagens com OpenCV (cont)
Introdução ao processamento de imagens com OpenCV (cont)Introdução ao processamento de imagens com OpenCV (cont)
Introdução ao processamento de imagens com OpenCV (cont)Cristiano Rafael Steffens
 
Iniciando Programação em C: Dicas, Ideias e Colocando a Mão na Massa
Iniciando Programação em C: Dicas, Ideias e Colocando a Mão na MassaIniciando Programação em C: Dicas, Ideias e Colocando a Mão na Massa
Iniciando Programação em C: Dicas, Ideias e Colocando a Mão na MassaLhaís Rodrigues
 
Introdução à visão computacional utilizando software livre
Introdução à visão computacional utilizando software livreIntrodução à visão computacional utilizando software livre
Introdução à visão computacional utilizando software livrepichiliani
 
Workshop - IDE / Linguagem
Workshop - IDE / LinguagemWorkshop - IDE / Linguagem
Workshop - IDE / LinguagemGustavo Barbosa
 
8. Classes e instâncias; Cadeias de caracteres – Fundamentos de Programação
8. Classes e instâncias; Cadeias de caracteres – Fundamentos de Programação8. Classes e instâncias; Cadeias de caracteres – Fundamentos de Programação
8. Classes e instâncias; Cadeias de caracteres – Fundamentos de ProgramaçãoManuel Menezes de Sequeira
 
(Re)pensando a OOP - TDC 2012
(Re)pensando a OOP - TDC 2012(Re)pensando a OOP - TDC 2012
(Re)pensando a OOP - TDC 2012Luís Cobucci
 
Introdução à biblioteca OpenCV
Introdução à biblioteca OpenCVIntrodução à biblioteca OpenCV
Introdução à biblioteca OpenCVGuto Kaberdock
 
6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...
6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...
6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...Manuel Menezes de Sequeira
 
Processing: programação para artes visuais
Processing: programação para artes visuaisProcessing: programação para artes visuais
Processing: programação para artes visuaisMarlus Araujo
 
12. Paradigmas da programação; Programação orientada por objectos; Pacotes – ...
12. Paradigmas da programação; Programação orientada por objectos; Pacotes – ...12. Paradigmas da programação; Programação orientada por objectos; Pacotes – ...
12. Paradigmas da programação; Programação orientada por objectos; Pacotes – ...Manuel Menezes de Sequeira
 
Linguagem de Programação Estruturada com Java-Aula2
Linguagem de Programação Estruturada com Java-Aula2Linguagem de Programação Estruturada com Java-Aula2
Linguagem de Programação Estruturada com Java-Aula2Elvis Araújo
 
Programação "Estruturada" com Java
Programação "Estruturada" com JavaProgramação "Estruturada" com Java
Programação "Estruturada" com JavaLuiz Ricardo Silva
 

Mais procurados (20)

Introdução ao desenvolvimento para iOS
Introdução ao desenvolvimento para iOSIntrodução ao desenvolvimento para iOS
Introdução ao desenvolvimento para iOS
 
Objective-C e o dinamismo da linguagem
Objective-C e o dinamismo da linguagemObjective-C e o dinamismo da linguagem
Objective-C e o dinamismo da linguagem
 
1.introducao java
1.introducao java1.introducao java
1.introducao java
 
5. Atribuições especiais; Arrays; Tipos de ciclos; Classes-pacote – Fundament...
5. Atribuições especiais; Arrays; Tipos de ciclos; Classes-pacote – Fundament...5. Atribuições especiais; Arrays; Tipos de ciclos; Classes-pacote – Fundament...
5. Atribuições especiais; Arrays; Tipos de ciclos; Classes-pacote – Fundament...
 
Qcon SP 2012, 5 (ou mais) coisas que você gostaria de saber sobre o iOS e o O...
Qcon SP 2012, 5 (ou mais) coisas que você gostaria de saber sobre o iOS e o O...Qcon SP 2012, 5 (ou mais) coisas que você gostaria de saber sobre o iOS e o O...
Qcon SP 2012, 5 (ou mais) coisas que você gostaria de saber sobre o iOS e o O...
 
Introdução ao processamento de imagens com OpenCV (cont)
Introdução ao processamento de imagens com OpenCV (cont)Introdução ao processamento de imagens com OpenCV (cont)
Introdução ao processamento de imagens com OpenCV (cont)
 
PHP Orientado a Objetos
PHP Orientado a ObjetosPHP Orientado a Objetos
PHP Orientado a Objetos
 
Iniciando Programação em C: Dicas, Ideias e Colocando a Mão na Massa
Iniciando Programação em C: Dicas, Ideias e Colocando a Mão na MassaIniciando Programação em C: Dicas, Ideias e Colocando a Mão na Massa
Iniciando Programação em C: Dicas, Ideias e Colocando a Mão na Massa
 
Introdução à visão computacional utilizando software livre
Introdução à visão computacional utilizando software livreIntrodução à visão computacional utilizando software livre
Introdução à visão computacional utilizando software livre
 
Workshop - IDE / Linguagem
Workshop - IDE / LinguagemWorkshop - IDE / Linguagem
Workshop - IDE / Linguagem
 
Introdução ao C#
Introdução ao C#Introdução ao C#
Introdução ao C#
 
8. Classes e instâncias; Cadeias de caracteres – Fundamentos de Programação
8. Classes e instâncias; Cadeias de caracteres – Fundamentos de Programação8. Classes e instâncias; Cadeias de caracteres – Fundamentos de Programação
8. Classes e instâncias; Cadeias de caracteres – Fundamentos de Programação
 
(Re)pensando a OOP - TDC 2012
(Re)pensando a OOP - TDC 2012(Re)pensando a OOP - TDC 2012
(Re)pensando a OOP - TDC 2012
 
Introdução à biblioteca OpenCV
Introdução à biblioteca OpenCVIntrodução à biblioteca OpenCV
Introdução à biblioteca OpenCV
 
Treinamento i os
Treinamento i osTreinamento i os
Treinamento i os
 
6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...
6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...
6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...
 
Processing: programação para artes visuais
Processing: programação para artes visuaisProcessing: programação para artes visuais
Processing: programação para artes visuais
 
12. Paradigmas da programação; Programação orientada por objectos; Pacotes – ...
12. Paradigmas da programação; Programação orientada por objectos; Pacotes – ...12. Paradigmas da programação; Programação orientada por objectos; Pacotes – ...
12. Paradigmas da programação; Programação orientada por objectos; Pacotes – ...
 
Linguagem de Programação Estruturada com Java-Aula2
Linguagem de Programação Estruturada com Java-Aula2Linguagem de Programação Estruturada com Java-Aula2
Linguagem de Programação Estruturada com Java-Aula2
 
Programação "Estruturada" com Java
Programação "Estruturada" com JavaProgramação "Estruturada" com Java
Programação "Estruturada" com Java
 

Semelhante a Objective-C para quem está chegando agora

Desenvolvendo aplicativos para iOS 6 - Campus Party 2013
Desenvolvendo aplicativos para iOS 6 - Campus Party 2013Desenvolvendo aplicativos para iOS 6 - Campus Party 2013
Desenvolvendo aplicativos para iOS 6 - Campus Party 2013Rafael Winter
 
Mini Curso Android basico EATI-2017
Mini Curso Android basico EATI-2017Mini Curso Android basico EATI-2017
Mini Curso Android basico EATI-2017Jonathan Filho
 
Javascript por debaixo dos panos
Javascript por debaixo dos panosJavascript por debaixo dos panos
Javascript por debaixo dos panosLaís Lima
 
Desenvolvimento de Apps e Games para iOS - Parte 1
Desenvolvimento de Apps e Games para iOS - Parte 1Desenvolvimento de Apps e Games para iOS - Parte 1
Desenvolvimento de Apps e Games para iOS - Parte 1Erisvaldo Junior
 
Micro Front-end + CQRS/ES - JSSP jul/2019
Micro Front-end + CQRS/ES - JSSP jul/2019Micro Front-end + CQRS/ES - JSSP jul/2019
Micro Front-end + CQRS/ES - JSSP jul/2019Gabriel Rodrigues Couto
 
Codando Assíncrono com Coroutines
Codando Assíncrono com CoroutinesCodando Assíncrono com Coroutines
Codando Assíncrono com CoroutinesArildo Borges Jr
 
Introdução aos computadores e à World Wide Web
Introdução aos computadores e à World Wide WebIntrodução aos computadores e à World Wide Web
Introdução aos computadores e à World Wide WebCícero Quarto
 
Aula 1 - Introdução a POO
Aula 1 -  Introdução a POOAula 1 -  Introdução a POO
Aula 1 - Introdução a POODaniel Brandão
 
Conceitos Básicos de OO e Java
Conceitos Básicos de OO e JavaConceitos Básicos de OO e Java
Conceitos Básicos de OO e JavaCharles Jungbeck
 
Conceitos Fundamentais de Programacao
Conceitos Fundamentais de ProgramacaoConceitos Fundamentais de Programacao
Conceitos Fundamentais de ProgramacaoJorge Cardoso
 

Semelhante a Objective-C para quem está chegando agora (20)

Desenvolvendo aplicativos para iOS 6 - Campus Party 2013
Desenvolvendo aplicativos para iOS 6 - Campus Party 2013Desenvolvendo aplicativos para iOS 6 - Campus Party 2013
Desenvolvendo aplicativos para iOS 6 - Campus Party 2013
 
Open closed principle - SOLID
Open closed principle - SOLIDOpen closed principle - SOLID
Open closed principle - SOLID
 
Mini Curso Android basico EATI-2017
Mini Curso Android basico EATI-2017Mini Curso Android basico EATI-2017
Mini Curso Android basico EATI-2017
 
Aula2
Aula2Aula2
Aula2
 
Javascript por debaixo dos panos
Javascript por debaixo dos panosJavascript por debaixo dos panos
Javascript por debaixo dos panos
 
I mini curso e torneio robocode.pptx
I mini curso e torneio  robocode.pptxI mini curso e torneio  robocode.pptx
I mini curso e torneio robocode.pptx
 
Objective c
Objective   cObjective   c
Objective c
 
OOP ObjC
OOP ObjCOOP ObjC
OOP ObjC
 
Desenvolvimento de Apps e Games para iOS - Parte 1
Desenvolvimento de Apps e Games para iOS - Parte 1Desenvolvimento de Apps e Games para iOS - Parte 1
Desenvolvimento de Apps e Games para iOS - Parte 1
 
Seminário: C#
Seminário: C#Seminário: C#
Seminário: C#
 
Linguagem c
Linguagem cLinguagem c
Linguagem c
 
Desenvolvendo para iOS
Desenvolvendo para iOSDesenvolvendo para iOS
Desenvolvendo para iOS
 
Micro Front-end + CQRS/ES - JSSP jul/2019
Micro Front-end + CQRS/ES - JSSP jul/2019Micro Front-end + CQRS/ES - JSSP jul/2019
Micro Front-end + CQRS/ES - JSSP jul/2019
 
Codando Assíncrono com Coroutines
Codando Assíncrono com CoroutinesCodando Assíncrono com Coroutines
Codando Assíncrono com Coroutines
 
Introdução aos computadores e à World Wide Web
Introdução aos computadores e à World Wide WebIntrodução aos computadores e à World Wide Web
Introdução aos computadores e à World Wide Web
 
Aula 1 - Introdução a POO
Aula 1 -  Introdução a POOAula 1 -  Introdução a POO
Aula 1 - Introdução a POO
 
Java Seminar
Java SeminarJava Seminar
Java Seminar
 
Conceitos Básicos de OO e Java
Conceitos Básicos de OO e JavaConceitos Básicos de OO e Java
Conceitos Básicos de OO e Java
 
Conceitos Fundamentais de Programacao
Conceitos Fundamentais de ProgramacaoConceitos Fundamentais de Programacao
Conceitos Fundamentais de Programacao
 
02 - Introdução a linguagem C# v1.0
02 - Introdução a linguagem C# v1.002 - Introdução a linguagem C# v1.0
02 - Introdução a linguagem C# v1.0
 

Mais de Eduardo Costa

Google Analytics para Mobile
Google Analytics para MobileGoogle Analytics para Mobile
Google Analytics para MobileEduardo Costa
 
Introdução ao Android Wear
Introdução ao Android WearIntrodução ao Android Wear
Introdução ao Android WearEduardo Costa
 
Material design - Teoria e prática
Material design - Teoria e práticaMaterial design - Teoria e prática
Material design - Teoria e práticaEduardo Costa
 
Dicas de UX para Apps Mobile
Dicas de UX para Apps MobileDicas de UX para Apps Mobile
Dicas de UX para Apps MobileEduardo Costa
 
Desenvolvimento para Windows 8 com Javascript
Desenvolvimento para Windows 8 com JavascriptDesenvolvimento para Windows 8 com Javascript
Desenvolvimento para Windows 8 com JavascriptEduardo Costa
 
Tecnologias .NET usadas pela Craftbox
Tecnologias .NET usadas pela CraftboxTecnologias .NET usadas pela Craftbox
Tecnologias .NET usadas pela CraftboxEduardo Costa
 
Historias de uma Startup
Historias de uma StartupHistorias de uma Startup
Historias de uma StartupEduardo Costa
 
Ganhe destaque no Google Play
Ganhe destaque no Google PlayGanhe destaque no Google Play
Ganhe destaque no Google PlayEduardo Costa
 
SyncAdapter, Sincronização de dados no Android
SyncAdapter, Sincronização de dados no AndroidSyncAdapter, Sincronização de dados no Android
SyncAdapter, Sincronização de dados no AndroidEduardo Costa
 
Lições de uma Startup
Lições de uma StartupLições de uma Startup
Lições de uma StartupEduardo Costa
 
Lições de uma startup que (ainda) não deu certo
Lições de uma startup que (ainda) não deu certoLições de uma startup que (ainda) não deu certo
Lições de uma startup que (ainda) não deu certoEduardo Costa
 
Azure Mobile Services
Azure Mobile ServicesAzure Mobile Services
Azure Mobile ServicesEduardo Costa
 

Mais de Eduardo Costa (16)

Azure Websites
Azure WebsitesAzure Websites
Azure Websites
 
Google Analytics para Mobile
Google Analytics para MobileGoogle Analytics para Mobile
Google Analytics para Mobile
 
Introdução ao Android Wear
Introdução ao Android WearIntrodução ao Android Wear
Introdução ao Android Wear
 
Material design - Teoria e prática
Material design - Teoria e práticaMaterial design - Teoria e prática
Material design - Teoria e prática
 
Dicas de UX para Apps Mobile
Dicas de UX para Apps MobileDicas de UX para Apps Mobile
Dicas de UX para Apps Mobile
 
Desenvolvimento para Windows 8 com Javascript
Desenvolvimento para Windows 8 com JavascriptDesenvolvimento para Windows 8 com Javascript
Desenvolvimento para Windows 8 com Javascript
 
Tecnologias .NET usadas pela Craftbox
Tecnologias .NET usadas pela CraftboxTecnologias .NET usadas pela Craftbox
Tecnologias .NET usadas pela Craftbox
 
Historias de uma Startup
Historias de uma StartupHistorias de uma Startup
Historias de uma Startup
 
Ganhe destaque no Google Play
Ganhe destaque no Google PlayGanhe destaque no Google Play
Ganhe destaque no Google Play
 
Windows 8
Windows 8Windows 8
Windows 8
 
GDG Porto Alegre
GDG Porto AlegreGDG Porto Alegre
GDG Porto Alegre
 
SyncAdapter, Sincronização de dados no Android
SyncAdapter, Sincronização de dados no AndroidSyncAdapter, Sincronização de dados no Android
SyncAdapter, Sincronização de dados no Android
 
Lições de uma Startup
Lições de uma StartupLições de uma Startup
Lições de uma Startup
 
Lições de uma startup que (ainda) não deu certo
Lições de uma startup que (ainda) não deu certoLições de uma startup que (ainda) não deu certo
Lições de uma startup que (ainda) não deu certo
 
Azure Mobile Services
Azure Mobile ServicesAzure Mobile Services
Azure Mobile Services
 
ASP.NET vNext
ASP.NET vNextASP.NET vNext
ASP.NET vNext
 

Objective-C para quem está chegando agora

Notas do Editor

  1. Uma biblioteca que permite acesso ao Windows RT e agiliza o desenvolvimento de apps
  2. IDE da apple para iOS e Mac
  3. Semelhante a javascript
  4. WinJS 1.0 = Windows 8 e WinJS 2.0 = Windows 8.1
  5. WinJS 1.0 = Windows 8 e WinJS 2.0 = Windows 8.1
  6. Uma biblioteca que permite acesso ao Windows RT e agiliza o desenvolvimento de apps
  7. Uma biblioteca que permite acesso ao Windows RT e agiliza o desenvolvimento de apps
  8. Conjuntos de framewoks para desenvolvimento iOS