13
Por Fernando B., João Victor, Rafael F. e Yulle.

Por Fernando B., João Victor, Rafael F. e Yulle

Embed Size (px)

Citation preview

Page 1: Por Fernando B., João Victor, Rafael F. e Yulle

Por Fernando B., João Victor, Rafael F. e Yulle.

Page 2: Por Fernando B., João Victor, Rafael F. e Yulle

Introdução

• Conhecido como “iPhone OS” antes de Junho de 2010.

• Usado em produtos como o iPhone, o iPod Touch e o iPad.

• A Apple não permite rodar em software de terceiros.

Page 3: Por Fernando B., João Victor, Rafael F. e Yulle

• A interação é feita através de gestos e toque da tela.• A interface consiste de elementos de fácil manipulação com os dedos.• Há também um sensor que adapta a orientação da interface dependendo da posição do aparelho (retrato/paisagem)

Page 4: Por Fernando B., João Victor, Rafael F. e Yulle

• O iOS deriva do Mac OS X, sendo, portanto, uma variação de sistema operacional do tipo Unix.

• Aplicativos, tanto oficiais quanto desenvolvidos por terceiros, são distribuídos através da App Store.

Page 5: Por Fernando B., João Victor, Rafael F. e Yulle

iOS 4• Trouxe novos elementos que

sempre foram muito aguardados pela comunidade, pois já se faziam presentes em plataformas móveis concorrentes.

• FaceTime• Multitasking• iBooks• Pastas – categorias de aplicativos.

Page 6: Por Fernando B., João Victor, Rafael F. e Yulle

Jailbreak• Dev-Team.• Jay Freeman (saurik).• A Apple® não dá garantia aos

dispositivos jailbroken.• Criado para permitir a instalação

e utilização de aplicativos não autorizados pela Apple®.

• Possui app store própria (Cydia).• Muitos aplicativos que são

barrados pela Apple® ganharam notoriedade na Cydia Store.

Page 7: Por Fernando B., João Victor, Rafael F. e Yulle

Desenvolvimento• Em março de 2008 foi

lançado o Software Development Kit (SDK) para o desenvolvimento de aplicativos.

• Apesar de liberar o desenvolvimento, para carregar um aplicativo no aparelho é necessário pagar uma taxa. Para efeitos de testes, o SDK possui um “simulador de iPhone”.

• Os aplicativos são escritos utilizando Objective-C.

Page 8: Por Fernando B., João Victor, Rafael F. e Yulle

• O SDK contém quatro camadas de abstração:

• A Cocoa Touch (para eventos relacionados com a interface, como toques e o uso do acelerômetro).

• A camada de mídia (para eventos de audio, video e formatos de imagem, bem como animações).

• A camada Core Services (para eventos de banco de dados, networking e threads).

• E a camada OS X Kernel (XNU), para controle de energia, arquivos de sistema e segurança.

Page 9: Por Fernando B., João Victor, Rafael F. e Yulle

Objective-C

• Características: • Objective-C é apenas um

conjunto de adições à linguagem C. Ela dá ao C suporte à construções orientadas a objetos, como as da Smalltalk.

• Objective-C suporta polimorfismo, posing, categorias, e é uma linguagem dinâmica, com typing e binding dinâmicos.

• Objective-C realiza chamadas de mensagem dinâmicas rapidamente.

Page 10: Por Fernando B., João Victor, Rafael F. e Yulle

Exemplos de código• #import <stdio.h>

#import <objc/Object.h>

@interface Gato: Object

-(void) miau;

@end

metodos@implementation Gato

-(void) miau{printf("Miaau!\n");}

@end

• int main( int argc, const char *argv[] ) {Gato *meuGato;

meuGato = [Gato alloc];meuGato = [meuGato init];

[meuGato miau];

[meuGato free];

return 0;}

Page 11: Por Fernando B., João Victor, Rafael F. e Yulle

• @interface NovaClasse: SuperClasse{Declaração_de_variáveis;}

Declaração_de_métodos;

@end

• @implementation NovaClasse

Definição_de_métodos;

@end

Page 12: Por Fernando B., João Victor, Rafael F. e Yulle

• #import <stdio.h>#import <objc/Object.h>

@interface Gato: Object

-(void) miau;

@end

metodos@implementation Gato

-(void) miau{printf("Miaau!\n");}

@end

• int main( int argc, const char *argv[] ) {Gato *meuGato;

meuGato = [Gato alloc];meuGato = [meuGato init];

[meuGato miau];

[meuGato free];

return 0;}

Page 13: Por Fernando B., João Victor, Rafael F. e Yulle

Comparação com Java SE e EE• Java SE• Plataforma Java Standard, com

recursos padrões para desenvolvimento.

• Máquina virtual Java para rodar aplicações multi-plataforma, o que difere do iOS.

• Também possui orientação à objetos.

• Java EE• Plataforma de programação mais

avançada para servidores em Java.

• Difere-se da Plataforma Java Standard (Java SE) pela adição de bibliotecas que fornecem funcionalidade para implementar software Java distribuído.

• Arquitetura multicamada.