iOS Swift Developer

Transcrição

iOS Swift Developer
iOS Swift Developer
Carga Horária: 200
Pré requisito
Para o melhor aproveitamento do curso iOS Swift Developer, é imprescindível ter participado dos cursos
Ambiente Mac OS X e Introdução à Programação Orientada a Objeto ou possuir conhecimentos
equivalentes.
Objetivo
O curso iOS Swift Developer é fundamentado em técnicas e recursos de desenvolvimento de aplicativos
para a plataforma Apple iOS, versão 9, ensinando o aluno a utilizar com eficácia as ferramentas mais
inovadoras. Com uma base forte na linguagem Swift, o curso de iOS apresenta situações práticas ao
aluno, exercitando sua capacidade de desenvolver soluções profissionais completas para a plataforma
Apple.
Diversos dos recursos estudados podem ser encontrados em aplicações de grande sucesso, como Uber,
Facebook, Instagram, Telegram e diversas outras, o que possibilita ao aluno ter uma visão muito mais
apurada de como os recursos podem ser aplicados.
Introdução
<strong>Introdução ao Xcode e ao Swift</strong>Xcode.Swift: Escopo de um programa em Swift;
Variáveis e constantes (Qualificadores); Declarando variáveis e constantes em Swift (Exemplo de
declaração de variável, Exemplo de declaração de constante); Inferência de tipos (Tipagem implícita,
Tipagem explícita); Tuplas; Optionals; Declaração de uma optional; Caracteres de escape.Operadores:
Operador de atribuição; Operadores matemáticos básicos; Incremento e decremento; Operador de
atribuição composto; Operadores de comparação.<strong>Strings, arrays e dicionários</strong>Strings:
Strings literais; Strings mutáveis; Strings vazias; Concatenação de strings; Interpolação de strings; Strings
e suas propriedades básicas.Arrays: Métodos e propriedades do array.Dicionários: Métodos e
propriedades do dicionário.<strong>Estruturas de controle</strong>Estruturas condicionais: if/else; switch;
guard.Operadores lógicos: Operador NOT; Operador AND; Operador OR.Estruturas de repetição: for;
for-in; while; repeat while.Operadores de intervalo: Operador de intervalo fechado; Operador de intervalo
semifechado.<strong>Funções</strong>Funções: Parâmetros e retornos; Funções com apenas um
parâmetro; Funções com mais de um parâmetro; Funções com retorno; Funções com retorno múltiplo;
Funções com classes.Métodos: Métodos de instância; Modificando tipos de valor com métodos de
instância; Métodos de classe.<strong>Closures</strong>Funções como parâmetro.Definindo uma
closure.Inferência de tipos e retorno por contexto.Shorthands em argumentos.<strong>Classes e
structures</strong>Structures: Structures são tipos.Classes: Classes são tipos de referências.Structures
versus classes.<strong>Enumerations</strong>Definindo uma enumeration.Verificação dos valores de
uma enumeration.Associação de valores.Valores padrão em uma enumeration.<strong>ARC</strong>O
ARC.Como
o
ARC
funciona.<strong>Optional
chaining</strong>Unwrapping
com
optional
chaining.Chamada
de
métodos
com
optional
chaining.Relacionamentos
multiníveis
de
encadeamento.<strong>Tratamento de erros</strong>Representando e lançando erros.Tratando erros:
Lançando erros utilizando throwing functions; Tratando erros utilizando do-catch; Convertendo erros para
valores opcionais; Desabilitando a propagação de erros.Utilizando o recurso defer.<strong>Type
casting</strong>Type casting.<strong>Tipos aninhados</strong>Definição de um tipo aninhado.Aplicação
de um tipo aninhado.Utilizando um tipo aninhado.<strong>Extensions</strong>Declaração de uma
extension.Acrescentando propriedades através de uma extension.Acrescentando métodos através de uma
extension.<strong>Protocolos</strong>Definindo um protocolo.Adotando um protocolo.Propriedades
obrigatórias.Métodos obrigatórios.Delegates.
SDK 1
<strong>O modelo de programação MVC</strong>Conceitos básicos sobre Design Pattern.O MVC.Tipos
de objetos: Características dos objetos Model; Características dos objetos View; Características dos
objetos Controller.Funcionamento do esquema MVC.<strong>Cocoa Touch: trabalhando com interfaces de
toque</strong>Conceitos básicos sobre o Cocoa Touch.Trabalhando a interface do usuário: framework
UIKit.O ambiente Xcode.Utilizando os arquivos principais de trabalho: Conhecendo o arquivo
appDelegate.swift (Método didFinishLaunchingWithOptions, Método applicationWillResignActive, Método
applicationDidEnterBackground,
Método
applicationWillEnterForeground,
Método
applicationDidBecomeActive, Método applicationWillTerminate); O arquivo ViewController.swift; O Arquivo
Assets.xcassets; O arquivo Main.storyboard.<strong>Os objetos de interface: classes, conceitos e
utilização</strong>Storyboard.A classe UIView.A classe UIViewController: O método viewDidLoad
executando instruções.O objeto First Responder.IBOutlet.IBAction.Criando uma conexão entre objetos e
arquivos storyboard.A classe UILabel: Modificando as propriedades de UILabel (Propriedade text,
Propriedade textColor, Propriedade textAlignment).A classe UIButton: Modificando as propriedades de
UIButton (Propriedade buttonType, Propriedade backgroundColor, Propriedade frame).A classe
UISegmentedControl:
Modificando
as
propriedades
de
UISegmentedControl
(Propriedade
numberOfSegments, Propriedade selectedSegmentIndex); Métodos para os segmentos (Método
setImage:forSegmentAtIndex, Método setTitle:forSegmentAtIndex, Método titleForSegmentAtIndex).A
classe UISlider: Modificando as propriedades de UISlider (Propriedade minimumValue, Propriedade
maximumValue, Método setValue:animated).<strong>Trabalhando com as caixas de texto</strong>A
classe UITextView: Modificando as propriedades de UITextView (Propriedade editable, Propriedade text,
Propriedade textColor); Métodos para os textos (Método insertText, Método hasText); O protocolo
UITextViewDelegate
(Método
textViewDidBeginEditing(textView:
UITextView),
Método
textViewDidEndEditing(_ textView: UITextView), Método textViewDidChangeSelection(_ textView:
UITextView).A classe UITextField: Modificando as propriedades de UITextField (Propriedade text,
Propriedade textColor, Propriedade backgroundColor); O protocolo UITextFieldDelegate (Método
textFieldShouldReturn(textField:
UITextField)->
Bool,
Método
textFieldDidBeginEditing(textField:
UITextField), Método textFieldDidEndEditing(textField: UITextField)).<strong>Trabalhando com a barra de
ferramentas</strong>A classe UIToolBar: Modificando as propriedades de UIToolBar (Propriedade items,
Propriedade barStyle, Propriedade tintColor, Método setItens).A classe UIBarButtonItem: Modificando as
propriedades
de
UIBarButtonItem
(Propriedade
title,
Propriedade
tintColor,
Propriedade
tag).FlexibleSpace: espaço flexível na toolbar.FixedSpace: espaço fixo na toolbar.<strong>Conhecendo os
indicadores de atividade e progresso</strong>A classe UIActivityIndicatorView: Modificando as
propriedades
de
UIActivityIndicatorView
(Propriedade
activityIndicatorViewStyle,
Propriedade
hidesWhenStopped); Métodos referentes ao indicador de atividade (Método startAnimating, Método
stopAnimating, Método isAnimating).A classe UIProgressView: Modificando as propriedades de
UIProgressView (Propriedade progress, Propriedade progressViewStyle).
SDK 2
<strong>Diretórios, gravação de arrays e dicionários</strong>Estrutura de diretórios, sistema de arquivos
e Sandbox: Acessando diretórios; Criando o caminho até um diretório conhecido.Gerenciamento de
arquivos e diretórios: Criando um objeto de NSFileManager; Criando subdiretórios; Removendo arquivos
ou diretórios; Movendo arquivos ou diretórios; Copiando arquivos ou diretórios.Trabalhando com arrays e
dicionários:
Salvando
arrays;
Resgatando
arrays;
Salvando
dicionários;
Resgatando
dicionários.<strong>UIView e UIViewController</strong>UIView: Geometria e sistema de coordenadas
(Frame, Bounds e Center); Dimensões de tela; Principais propriedades (frame, bounds, center,
backgroundColor, superview, subviews, tag, userInteractionEnabled); Principais métodos (init(frame:),
addSubview(_:),
viewWithTag(_:),
bringSubviewToFront(_:),
sendSubviewToBack(_:),
exchangeSubviewAtIndex(_:withSubviewAtIndex:)); Criando views manualmente; Animações; Animando
com métodos (animateWithDuration(_:animations:), animateWithDuration(_:animations:completion:),
animateWithDuration(_:delay:options: animations:completion:)).UIViewController: Principais propriedades
(view,
title);
Principais
métodos
(viewDidLoad(),
viewWillAppear(_:),
viewWillDisappear(_:),
viewDidAppear(_:),
viewDidDisappear(_:),
supportedInterfaceOrientations(),
didReceiveMemoryWarning()).<strong>Storyboards</strong>Definição e uso do Storyboard.Definindo a
View
Controller
inicial.Main
Storyboard.UIStoryBoardSegue:
Principais
propriedades
(sourceViewController,
destinationViewController,
Identifier);
Principais
métodos
relacionados
(performSegueWithIdentifier(_:sender:), prepareForSegue(_:sender:)); Tipos de segues.Transição entre
telas com o Storyboard.Segue Unwind.<strong>Listas de seleção, data e hora</strong>UIPickerView:
Principais propriedades (delegate, dataSource, numberOfComponents, showsSelectionIndicator);
Principais métodos (numberOfRowsInComponent(_:), reloadComponent(_:), reloadAllComponents(),
selectRow(_:inComponent:animated:),
selectedRowInComponent(_:));
Protocolos
(numberOfComponentsInPickerView(_:),
pickerView(_:numberOfRowsInComponent:),
pickerView(_:titleForRow:forComponent:), pickerView(_:didSelectRow:inComponent:).NSDate: Principais
propriedades
(description);
Principais
métodos
(init(),
init(timeIntervalSinceNow:),
init(timeInterval:sinceDate:),
dateByAddingTimeInterval(_:),
descriptionWithLocale(_:),
timeIntervalSinceDate(_:), isEqualToDate(_:).NSDateFormatter: Principais propriedades (dateFormat,
dateStyle, locale); Principais métodos (stringFromDate(_:), dateFromString(_:).UIDatePicker: Principais
propriedades (date, minimumDate, maximumDate, countDownDuration, datePickerMode); Principal
método (setDate(_:animated:)).<strong>Trabalhando com barras de abas</strong>UITabBar: Principais
propriedades (delegate, items, selectedItem, translucent, backgroundImage); Principais métodos
(beginCustomizingItems(_:), endCustomizingAnimated(_:), setItems(_:animated:), isCustomizing());
Protocolos
(tabBar(_:willBeginCustomizingItems:),
tabBar(_:didBeginCustomizingItems:),
tabBar(_:willEndCustomizingItems:changed:),
tabBar(_:didEndCustomizingItems:changed:),
tabBar(_:didSelectItem:)).UITabBarItem: Principais propriedades (badgeValue, selectedImage); Principais
propriedades
relacionadas
(image,
title);
Principais
métodos
(init(tabBarSystemItem:tag:),
init(title:image:tag:), init(title:image:selectedImage:)).UITabBarController: Principais propriedades (delegate,
tabBar,
viewControllers,
selectedViewController,
selectedIndex);
Principal
método
(setViewControllers(_:animated:));
Protocolos
(tabBarController(_:shouldSelectViewController:),
tabBarController(_:didSelectViewController:),
tabBarController(_:willBeginCustomizingViewControllers:),
tabBarController(_:willEndCustomizingViewControllers:changed:),
tabBarController(_:didEndCustomizingViewControllers:changed:)).<strong>Trabalhando
com
tabelas</strong>UITableView: Principais propriedades (style, delegate, dataSource, allowsSelection,
allowsMultipleSelection,
separatorColor);
Principais
métodos
(beginUpdates(),
endUpdates(),
dequeueReusableCellWithIdentifier(_:),
deleteRowsAtIndexPaths(_:withRowAnimation:),
deleteSections(_:withRowAnimation:),
deselectRowAtIndexPath(_:animated:),
indexPathForCell(_:),
insertRowsAtIndexPaths(_:withRowAnimation:),
insertSections(_:withRowAnimation:),
reloadData(),
setEditing(_:animated:),
selectRowAtIndexPath(_:animated:scrollPosition:));
Protocolos
(numberOfSectionsInTableView(_:),
tableView(_:numberOfRowsInSection:),
tableView(_:cellForRowAtIndexPath:),
tableView(_:titleForHeaderInSection:),
tableView(_:titleForFooterInSection:),
tableView(_:didSelectRowAtIndexPath:),
tableView(_:didDeselectRowAtIndexPath:),
tableView(_:heightForRowAtIndexPath:),
tableView(_:heightForHeaderInSection:),
tableView(_:heightForFooterInSection:)).UITableViewCell:
Principais propriedades (backgoundView, editing, selected, accessoryType, highlighted, textLabel,
detailTextLabel, imageView); Principais métodos: init(style:reuseIdentifier:), setEditing(_:animated:),
setSelected(_:animated:), setHighlighted(_:animated:)).UITableViewController: Principais propriedades
(tableView, clearsSelectionOnViewWillAppear); Principal método (init(style:)).<strong>Trabalhando com
barras de navegação</strong>UINavigationController: Principais propriedades (topViewController,
visibleViewController, viewControllers, navigationBar, delegate); navigationBarHidden; Principais métodos
(setViewControllers(_:animated:),
pushViewController(_:animated:),
popViewControllerAnimated(_:),
popToRootViewControllerAnimated(_:),
popToViewController(_:animated:),
setNavigationBarHidden(_:animated:));
Protocolo
UINavigationControllerDelegate
(navigationController(_:willShowViewController:animated:),
navigationController(_:didShowViewController:animated:)).UINavigationBar:
Principais
propriedades
(items, backIndicatorImage, backIndicatorTransitionMaskImage, barStyle, barTintColor, tintColor,
translucent);
Principais
métodos
(backgroundImageForBarMetrics(_:),
setBackgroundImage(_:forBarMetrics:)).UINavigationItem:
Principais
propriedades
(title,
prompt,
backBarButtonItem,
hidesBackButton);
Principal
método
(setHidesBackButton(_:animated:)).<strong>Trabalhando
com
imagem
e
vídeo</strong>UIImagePickerController: Principais propriedades (delegate, allowsEditing, sourceType,
cameraCaptureMode,
showsCameraControls,
cameraDevice,
cameraFlashMode,
mediaTypes,
videoQuality, videoMaximumDuration); Principais métodos (availableMediaTypesForSourceType(_:),
isSourceTypeAvailable(_:),
isCameraDeviceAvailable(_:),
isFlashAvailableForCameraDevice(_:));
Protocolo UIImagePickerControllerDelegate (imagePickerController(_:didFinishPickingMediaWithInfo:),
imagePickerControllerDidCancel(_:)).<strong>Páginas Web</strong>NSURL: Principais propriedades
(absoluteString, URLByDeletingLastPathComponent, URLByDeletingPathExtension); Principais métodos
(init(string:),
fileURLWithPath(_:),
URLByAppendingPathComponent(_:),
URLByAppendingPathExtension(_:)).NSURLRequest: Principais propriedades (URL, mainDocumentURL,
timeoutInterval,
cachePolicy);
Principais
métodos
(init(URL:),
init(URL:cachePolicy:timeoutInterval:)).UIWebView: Principais propriedades (canGoBack, canGoFowards,
delegate, loading, request); Principais métodos (goBack(), goForward(), reload(), loadRequest(_:),
stopLoading()); Protocolo UIWebViewDelegate (webViewDidStartLoad(_:), webViewDidFinishLoad(_:),
webView(_:didFailLoadWithError:)).
SDK 3
<strong>Janelas de alerta no iOS</strong>Classe UIAlertController: Principais propriedades (title,
message, preferredStyle, actions, textFields); Principais métodos (init(title:message:preferredStyle:),
addAction(_:),
addTextFieldWithConfigurationHandler(_:)).<strong>Trabalhando
com
UICollectionView</strong>Classe UICollectionView: Principais propriedades (delegate, dataSource,
allowsSelection,
allowsMultipleSelection);
Principais
métodos
(dequeueReusableCellWithReuseIdentifier(_:forIndexPath:),
deleteItemsAtIndexPaths(_:),
deleteSections(_:),
indexPathsForSelectedItems(),
deselectItemAtIndexPath(_:animated:),
indexPathForCell(_:),
insertItemsAtIndexPaths(_:),
insertSections(_:),
reloadData(),
selectItemAtIndexPath(_:animated:scrollPosition:));
Protocolo
UICollectionViewDataSource
(collectionView(_:numberOfItemsInSection:),
numberOfSectionsInCollectionView(_:),
collectionView(_:cellForItemAtIndexPath:));
Protocolo
UICollectionViewDelegate
(collectionView(_:didSelectItemAtIndexPath:),
collectionView(_:didDeselectItemAtIndexPath:)).<strong>Trabalhando
com
threads
e
GCD</strong>Definição de threads.Classe NSThread: Principais propriedades (executing, finished,
cancelled); Principais métodos (init(target:selector:object:), start(), sleepForTimeInterval(_:), exit(),
cancel()).API de multiprocessamento GCD: Queues; Principais funções (dispatch_after(_:_:_:),
dispatch_get_global_queue(_:_:),
dispatch_async(_:_:),
dispatch_sync(_:_:)).<strong>XML</strong>Linguagem
XML.Classe
NSXMLParser:
Principais
propriedades (delegate, shouldProcessNamespaces, parserError, columnNumber, lineNumber); Principais
métodos (init(contentsOfURL:), init(data:), parse(), abortParsing()); Protocolo NSXMLParserDelegate
(parserDidStartDocument(_:),
parserDidEndDocument(_:),
parser(_:didStartElement:namespaceURI:qualifiedName:attributes:),
parser(_:didEndElement:namespaceURI:qualified
Name:),
parser(_:foundCharacters:)).<strong>Framework Contacts - trabalhando com a agenda de
contatos</strong>Conhecendo o framework Contacts: Classe CNContactStore; Principais métodos
(unifiedContactWithIdentifier(_:keysToFetch:),
unifiedContactsMatchingPredicate(_:keysToFetch:),
authorizationStatusForEntityType(_:),
requestAccessForEntityType(_:completionHandler:),
groupsMatchingPredicate(_:), containersMatchingPredicate(_:), defaultContainerIdentifier()); Classe
CNContact; Principais propriedades (identifier, contactType, givenName, middleName, familyName,
phoneNumbers, emailAddress, imageData); Objeto CNGroup; Principais propriedades (Identifier, name);
Principais
métodos
(predicateForGroupsWithIdentifiers(_:),
predicateForGroupsInContainerWithIdentifier(_:)).Conhecendo
o
framework
ContactsUI:
Classe
CNContactPickerViewController;
Principais
propriedades
(displayedPropertyKeys,
delegate,
predicateForSelectionOfContact);
Protocolo
CNContactPickerDelegate;
Principais
métodos
(contactPickerDidCancel(_:),
contactPicker(_:didSelectContact:),
contactPicker(_:didSelectContactProperty:),
contactPicker(_:didSelectContacts:),
contactPicker(_:didSelectContactProperties:)).<strong>QuickLook</strong>Conhecendo o Framework
QuickLook.Classe
QLPreviewController:
Principais
propriedades
(dataSource,
delegate,
currentPreviewItem,
currentPreviewItemIndex);
Principais
métodos
(canPreviewItem(_:),
refreshCurrentPreviewItem(), reloadData()).Protocolo QLPreviewControllerDataSource: Principais métodos
(numberOfPreviewItemsInPreviewController(_:),
previewController(_:previewItemAtIndex:)).Protocolo
QLPreviewControllerDelegate:
Principais
métodos
(previewControllerWillDismiss(_:),
previewControllerDidDismiss(_:)).<strong>Mapas e geolocalização</strong>CoreLocation e seus
elementos principais.Classe CLLocationManager: Solicitando autorização do usuário; Principais
propriedades (delegate, desiredAccuracy, location, heading, pausesLocationUpdatesAutomatically,
activityType); Principais métodos (requestWhenInUseAuthorization(), requestAlwaysAuthorization(),
startUpdatingLocation(),
stopUpdatingLocation(),
locationServicesEnabled(),
headingAvailable(),
startUpdatingHeading(), stopUpdatingHeading()).Protocolo CLLocationManagerDelegate: Principais
métodos
(locationManager(_:didUpdateLocations:),
locationManager(_:didFailWithError:),
locationManager(_:didUpdateHeading:)).Framework MapKit.Classe MKMapView: Principais propriedades
(annotations, centerCoordinate, delegate, mapType, region, scrollEnabled, showUserLocation,
zoomEnabled);
Principais
métodos
(addAnnotation(_:),
removeAnnotation(_:),
setCenterCoordinate(_:animated:), setRegion(_:animated:)).Protocolo MKMapViewDelegate: Principais
métodos
(mapViewWillStartLoadingMap(_:),
mapViewDidFinishLoadingMap(_:),
mapViewDidFailLoadingMap(_:withError:),
mapView(_:regionWillChangeAnimated:),
mapView(_:regionDidChangeAnimated:), mapView(_:didUpdateUserLocation:)).<strong>Trabalhando com
o framework iAd</strong>Framework iAd.Classe ADBannerView: Principais propriedades (delegate,
bannerLoaded,
adType,
bannerViewActionInProgress);
Principais
métodos
(init(adType:),
cancelBannerViewAction()).Protocolo
AdBannerViewDelegate:
Principais
métodos
(bannerViewWillLoadAd(_:),
bannerViewDidLoadAd(_:),
bannerViewActionShouldBegin(_:willLeaveApplication:),
bannerViewActionDidFinish(_:),
bannerView(_:didFailToReceiveAdWithError:)).<strong>Utilizando os sensores de acelerômetro e
giroscópio</strong>Classe CMMotionManager: Principais propriedades (accelerometerAvailable,
accelerometerUpdateInterval, accelerometerActive, accelerometerData, gyroAvailable, gyroUpdateInterval,
gyroActive,
gyroData,
deviceMotion);
Principais
métodos
(startAccelerometerUpdatesToQueue(_:withHandler:),
startAccelerometerUpdates(),
stopAccelerometerUpdates(),
startGyroUpdatesToQueue(_:withHandler:),
startGyroUpdates(),
stopGyroUpdates()).Classe
CMDeviceMotion:
Principais
propriedades
(attitude,
gravity,
userAcceleration).Structure CMAcceleration.Classe CMAttitude: Principais propriedades (roll, pitch,
yaw).<strong>Gesture Recognizer - Trabalhando com reconhecimento de gestos</strong>Classe
UIGestureRecognizer: Principais propriedades (state, view, enabled); Principais métodos
(init(target:action:),
addTarget(_:action:),
removeTarget(_:action:),
locationInView(_:),
numberOfTouches()).Classe UITapGestureRecognizer: Principais propriedades (numberOfTapsRequired,
numberOfTouchesRequired).Classe
UIPinchGestureRecognizer:
Principais
propriedades
(scale,
velocity).Classe UIRotationGestureRecognizer: Principais propriedades (rotation, velocity).Classe
UISwipeGestureRecognizer: Principais propriedades (direction, numberOfTouchesRequired).Classe
UIPanGestureRecognizer:
Principais
propriedades
(maximumNumberOfTouches,
minimumNumberOfTouches); Principais métodos (translationInView(_:), velocityInView(_:)).Classe
UILongPressGestureRecognizer:
Principais
propriedades
(minimumPressDuration,
numberOfTouchesRequired, numberOfTapsRequired, allowableMovement).<strong>Framework Multipeer
Connectivity</strong>Conhecendo o framework Multipeer Connectivity: Programação para Multipeer
Connectivity.Classe MCSession: Principais propriedades (delegate, myPeerID, connectedPeers);
Principais
métodos
(init(peer:),
cancelConnectPeer(_:),
sendData(_:toPeers:withMode:error:),
disconnect()).Protocolo MCSessionDelegate: Principais métodos (session(_:peer:didChangeState:),
session(_:didStartReceivingResourceWithName:fromPeer:withProgress:),
session(_:didFinishReceivingResourceWithName:fromPeer:atURL:withError:),
session(_:didReceiveData:fromPeer:),
session(_:didReceiveStream:withName:fromPeer:)).Classe
MCBrowserViewController:
Principais
propriedades
(delegate,
browser,
session,
maximumNumberOfPeers,
minimumNumberOfPeers);
Principal
método
(init(serviceType:session:)).Protocolo
MCBrowserViewControllerDelegate:
Principais
métodos
(browserViewControllerDidFinish(_:),
browserViewControllerWasCancelled(_:)).Classe
MCAdvertiserAssistant:
Principal
propriedade
(session);
Principais
métodos
(init(serviceType:discoveryInfo:session:), start(), stop()).Classe MCPeerID: Principal propriedade
(displayName); Principal método (init(displayName:)).
SDK 4
<strong>Multitasking Executando tarefas em segundo plano no iOS</strong>Conhecendo o
multitasking.Classe
UIMutableUserNotificationAction:
Propriedades
da
classe
UIMutableUserNotificationAction.Classe UIMutableUserNotificationCategory: Propriedade da classe
UIMutableUserNotificationCategory; Método da classe UIMutableUserNotificationCategory.Classe
UIApplication: Métodos da classe UIApplication.<strong>Framework QuartzCore Controlando animações
avançadas</strong>Conhecendo o framework QuartzCore.Coleção de classes Core Animation.Classe
CALayer: Propriedades da classe CALayer; Métodos da classe CALayer.Classe CABasicAnimation:
Propriedades
da
classe
CABasicAnimation.Classe
CAAnimationGroup.Classe
CAKeyframeAnimation.<strong>Trabalhando com a biblioteca SQLite</strong>Banco de dados SQLite:
Lidando com os tipos de armazenamento; Comparando os tipos.Como acessar o SQLite: Comandos de
linha; Comandos SQL (Comando para criar uma tabela, Comando para inserir registros em uma tabela,
Comando para consultar registros em uma tabela, Cláusula WHERE, Comando para alterar registros em
uma tabela, Comando para remover registros de uma tabela, Comando para remover uma tabela).API
escrita em C.Exemplo de utilização do SQLite no Swift: Criando ou abrindo o banco; Inserindo um registro
no
banco;
Resgatando
registros
no
banco.<strong>Trabalhando
com
o
framework
AVFoundation</strong>Conhecendo o framework AVFoundation.Classe AVAudioPlayer: Propriedades da
classe AVAudioPlayer; Métodos da classe AVAudioPlayer.Classe AVAudioRecorder: Propriedades da
classe AVAudioRecorder; Métodos da classe AVAudioRecorder.<strong>Trabalhando com o framework
Photos</strong>Conhecendo o framework Photos.Classe PHAsset: Propriedades da classe PHAsset;
Métodos
da
classe
PHAsset.Classe
PHImageRequestOptions:
Propriedades
da
classe
PHImageRequestOptions.A
Classe
PHImageManager:
Métodos
da
classe
PHImageManager.<strong>Trabalhando com o framework AVKit</strong>Conhecendo o framework
AVKit.Formatos multimídia suportados.Classe AVPlayer: Propriedades da classe AVPlayer; Métodos da
classe
AVPlayer.Classe
AVPlayerViewController:
Propriedades
da
classe
AVPlayerViewController.<strong>Trabalhando com o recurso Push Notification</strong>Conhecendo o
Push Notification.Estrutura da mensagem de um Push Notification.Geração de certificados: Geração do
CSR; Criação do App ID; Certificado SSL; Criando a Provision Profile.<strong>Trabalhando com o
framework
Message
UI</strong>Conhecendo
o
framework
Message
UI.Classe
MFMailComposeViewController: Propriedade da classe MFMailComposeViewController; Métodos da
classe
MFMailComposeViewController;
Protocolo
MFMailComposeViewControllerDelegate.Classe
MFMessageComposeViewController: Propriedades da classe MFMessageComposeViewController;
Protocolo
MFMessageComposeViewControllerDelegate.<strong>Trabalhando
com
o
Social
Framework</strong>Social Framework.Classe SLComposeViewController: Métodos da classe
SLComposeViewController.Classe UIActivityViewController: Método da classe UIActivityViewController.

Documentos relacionados