Prévia do material em texto
54
COORDENAÇÃO DE ENGENHARIA DA COMPUTAÇÃO
HENRIQUE LUIZ DE OLIVEIRA
TERMINAL ACADÊMICO FACENS PARA iOS
Sorocaba/SP
2014
Henrique Luiz de Oliveira
TERMINAL ACADÊMICO FACENS PARA iOS
Trabalho de Conclusão de Curso apresentado à Faculdade de Engenharia de Sorocaba – FACENS, como parte dos pré-requisitos para obtenção do título de Engenheiro da Computação.
Orientador: Rodrigo Cristiano Silva
Sorocaba/SP
2014
FICHA CATALOGRÁFICA
ELABORADA PELA “BIBLIOTECA FACENS”
XXXXX
Oliveira, Henrique Luiz de.
Terminal Acadêmico FACENS para iOS / por Henrique Luiz de Oliveira – Sorocaba, São Paulo: {s.n.}, 2014.
65f.; 29 cm.
Trabalho de Conclusão de Curso (Graduação) – Faculdade de Engenharia de Sorocaba – Curso de Engenharia da Computação, 2014.
Orientador: Rodrigo Cristiano Silva.
1. iOS. 2. Aplicação Móvel. 3. FACENS. I. Autor. II. Faculdade de Engenharia de Sorocaba. III. Título.
CDU XXX.XXX
TERMINAL ACADÊMICO FACENS PARA iOS
Trabalho de Conclusão de Curso apresentado à Faculdade de Engenharia de Sorocaba, como exigência parcial para obtenção do Diploma de Graduação em Engenharia da Computação.
Comissão examinadora:
Prof. Rodrigo Cristiano Silva
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Coordenadora:
Drª Andréa Lúcia Braga Vieira Rodrigues
________________________________
Sorocaba/SP
2014
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin in mauris consectetur, dignissim ligula eget, faucibus lacus. Nulla felis diam.
AGRADECIMENTOS
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras vel lorem fringilla, blandit dui bibendum, semper nunc. Nam sed est vitae nibh tincidunt placerat. Mauris et lobortis lorem. Nullam lorem velit, vestibulum non tempus nec, elementum vitae libero. Pellentesque suscipit tellus quis orci iaculis, eu faucibus orci suscipit. Donec nec egestas ligula, id placerat sem. Integer pharetra metus nec volutpat blandit. Donec suscipit nisi dolor, ac accumsan quam luctus eu. Donec pharetra mauris velit, et volutpat elit congue ac. Pellentesque pretium odio eget lectus congue, eget varius sapien lacinia.
Sed augue sem, aliquet vitae ullamcorper pretium, placerat sed arcu. Suspendisse cursus erat tortor, sed pellentesque arcu auctor vel. Pellentesque hendrerit dui id egestas elementum. Cras justo eros, iaculis a lacinia ac, consectetur ultrices urna. Quisque dictum blandit feugiat. Fusce magna tellus, ultricies vitae auctor vitae, blandit ac dui. Maecenas at lectus sit amet risus ultricies dapibus vel eleifend nibh. Sed ante mi, fermentum eget magna vel, ornare blandit velit. Ut nec congue dolor, at tristique nisi. Etiam aliquam velit quis lectus varius eleifend. Aenean porttitor, nulla eu porta fringilla, neque nisi mollis metus, vitae tempor justo sapien vel erat. Sed consectetur lorem sem, vel varius massa dictum eget. Maecenas vestibulum, nibh vel adipiscing vestibulum, eros purus scelerisque tellus, ac aliquet lorem metus a sapien. Suspendisse vitae leo rutrum, aliquam sem mattis, fringilla mi.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras vel lorem fringilla, blandit dui bibendum, semper nunc. Nam sed est vitae nibh tincidunt placerat. Mauris et lobortis lorem. Nullam lorem velit, vestibulum non tempus nec, elementum vitae libero.
Lorem ipsum
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras vel lorem fringilla, blandit dui bibendum, semper nunc. Nam sed est vitae nibh tincidunt placerat. Mauris et lobortis lorem. Nullam lorem velit, vestibulum non tempus nec, elementum vitae libero.
Lorem ipsum
RESUMO
Oliveira, H. L. Terminal Acadêmico FACENS para iOS. Sorocaba, 2014, 20p. Trabalho de Conclusão de Curso (Graduação) – Curso de Engenharia da Computação, Faculdade de Engenharia de Sorocaba. Sorocaba, 2014.
Com um crescimento de vendas constante no mercado de dispositivos com o sistema iOS, este trabalho consiste em proporcionar informações sobe os dispositivos que fazem uso da tecnologia, além de realizar um estudo introdutório sobre o desenvolvimento para a plataforma iOS, que como demonstração prática do mesmo abordará o desenvolvimento da aplicação do Terminal Acadêmico da FACENS para a plataforma. Através da aplicação, desenvolvida utilizando padrões e tecnologias da própria SDK, será proporcionado ao aluno o acesso facilitado às suas notas, faltas, dados, quadro de horários e materiais disponibilizados pelos professores.
Palavras chave: iOS. Aplicação Móvel. FACENS.
Abstract
With a constant increase of sales in the market of iOS mobiles, this project intends to purpose information about the devices that uses this technology, beside an introductory study about the iOS development, and for practical demonstration thereof will tackle the FACENS’ Student’s Session to and iOS app. In this application, developed using patterns and technologies of own SDK, will be available to the students the access to their grades, presences, info, class schedule and files uploaded by professors.
Keywords: iOS. Mobile Application. FACENS.
LISTA DE ABREVIATURAS E SIGLAS
LISTA DE FIGURAS
Figura 2.1 – Evolução do iPhone 15
Figura 2.2 – iPad Air e iPad Mini 17
Figura 2.3 – iPod Touch 19
Figura 2.4 – Apple TV 19
Figura 3.1 – Camadas do iOS 21
Figura 3.2 - Springboard iPhone OS 1 25
Figura 3.3 – Springboard iPhone OS 2 26
Figura 3.4 – Springboard iPhone OS 3 27
Figura 3.5 – Springboard iOS 4 28
Figura 3.6 – Springboard iOS 5 29
Figura 3.7 – Springboard iOS 6 30
Figura 3.8 – Springboard iOS 7 31
Figura 3.9 – Mudanças de Design dos Ícones do iOS 6 e iOS 7 32
Figura 3.10 – Springboard iOS 8 33
Figura 4.1 – Representação da Arquitetura MVC 35
Figura 6.1 – Homescreen com a Aplicação 44
Figura 6.2 – Imagem de Abertura da Aplicação 45
Figura 6.3 – Login 45
Figura 6.4 – Notas por Etapa 46
Figura 6.5 – Notas Parciais 47
Figura 6.6 – Faltas Por Disciplina 48
Figura 6.7 – Arquivos Por Disciplina 49
Figura 6.8 – Menu Outros 50
Figura 6.9 – Dados Cadastrais 51
Figura 6.10 – Dados Profissionais 52
Figura 6.11 – Quadro de Horários 53
Figura 6.12 – Atividades Complementares 54
SUMÁRIO
1 INTRODUÇÃO 14
2 APPLE 15
2.1 Dispositivos 15
2.1.1 iPhone 15
2.1.2 iPad 16
2.1.3 Outros Dispositivos 18
2.2 Mercado 20
3 iOS 21
3.1 Arquitetura 21
3.1.1 Camada Cocoa Touch 22
3.1.2 Camada Media 22
3.1.3 Camada Core Services 23
3.1.4 Camada Core OS 24
3.2 Evolução do iOS 25
3.2.1 iPhone OS 1 25
3.2.2 iPhone OS 2 26
3.2.3 iPhone OS 3 27
3.2.4 iOS 4 28
3.2.5 iOS 5 29
3.2.6 iOS 6 30
3.2.7 iOS 7 31
3.2.8 iOS 8 33
4 DESENVOLVIMENTO PARA iOS 34
4.1 Ambiente de Desenvolvimento 34
4.2 Desenvolvedor 34
4.3 Cocoa Touch 35
4.3.1 Camada Model 36
4.3.2 Camada Controller 36
4.3.3 Camada View 36
4.4 Objective-C 36
4.4.1 Arquivos de Implementação 37
4.4.2 Tipos de Dados 37
4.4.3 Customização da Aplicação 38
5 TERMINAL ACADÊMICO 40
5.1 Motivação 40
5.2 Desenvolvimento 40
5.2.1 Módulo Secretaria 41
5.2.1.1 Notas 41
5.2.1.2 Faltas 41
5.2.1.3 Dados, Atividades e Quadro de Horários 41
5.2.2 Módulo Materiais 41
6 Resultados Obtidos 43
6.1 Base de Dados 43
6.2 WCF 43
6.3 Aplicação FACENS 44
7 Conclusão 55
7.1 Perspectivas Futuras 55
INTRODUÇÃO
Com um crescimento evidente nos últimos anos o desenvolvimento de aplicações para dispositivos móveis tem se tornado um grande destaque nos últimos tempos. Dentre as principais plataformas estão o iOS, Android e Windows Phone.
Esse projeto visa a plataforma iOS desenvolvida pela Apple. Os principais dispositivos que possuem essa plataforma serão abordados, tendo suas características e evoluções destacadas, além de informações sobre o mercado em ascensão da empresa.
O iOS encontra-se atualmente em sua sétima versão, um estudo foi realizado sobre o sistema, mostrando sua evolução e principais novidades.
Focando na parte do desenvolvimento para o iOS, para este projeto foi realizado um estudo com informações sobre as necessidades para se tornar um desenvolvedor certificadopara o sistema, além de informações sobre o desenvolvimento em si, inteirando o leitor iniciante ao desenvolvimento para o sistema.
Como complemento do estudo sobre o desenvolvimento, será desenvolvida uma aplicação que fornecerá ao usuário acesso ao terminal acadêmico da FACENS. Dentre as funcionalidades da aplicação estão o acesso as notas, faltas, quadro de horários e materiais disponibilizados pelos professores de cada disciplina.
APPLE
Fundada em 1 de Abril de 1976 em Cupertino, Califórnia por Steve Wozniak, Steve Jobs e Ronald Wayne a empresa começou produzindo computadores, passando depois a produzir também smartphones, sistema de vídeo digital, software e hardware. (Apple, 2014)
Dispositivos
A empresa produz diversos tipos de dispositivos, serão abordados nesse trabalho os que utilizam o sistema operacional móvel da empresa, o iOS.
iPhone
Lançado em 2007, o iPhone é um dos principais dispositivos da Apple, atualmente em sua sétima versão, sendo possível acompanhar a evolução do dispositivo na Figura 2.1. Uma nova versão do aparelho é lançada anualmente, seguindo o mesmo padrão: a cada ano alterações de hardware e software, e a cada dois anos alterações de design do aparelho. Atualmente, os dispositivos mais recentes são o iPhone 5S e iPhone 5C; com lançamento da nova versão do aparelho previsto para o final de 2014. (Apple, 2014)
Figura 2.1 – Evolução do iPhone
Fonte: Phone Services Local
A principal diferença de hardware entre as versões 5S e 5C, está no processador: o 5C possui o mesmo que o 5, o Apple A6; enquanto o 5S possui o Apple A7 Cyclone, o primeiro com 64 bits no mercado de dispositivos móveis. A diferença física do aparelho ocorre, pois o 5C é uma versão de plástico do aparelho, com a intenção de venda de aparelhos mais baratos, a fim de atingir uma maior quantidade de usuários; já o 5S continua sendo de vidro e alumínio como seus sucessores. (Apple, 2014)
No Quadro 2.1 é possível visualizar as características de hardware das versões mais recentes do aparelho.
Quadro 2.1 – Comparativo iPhone 5S e iPhone 5C
iPhone 5S
iPhone 5C
Tela
4 polegadas
4 polegadas
Resolução
1136 x 640 (326 ppp)
1136 x 640 (326 ppp)
Tecnologia de tela
IPS Retina Display
IPS Retina Display
Processador
A7 da Apple de 64 bits, Chip M7 para processamento de movimentos
A6 da Apple com 1.4GHz
RAM
1 GB
1 GB
SIM
nano-SIM
nano-SIM
Armazenamento
16, 32 ou 64GB
16 ou 32GB
Conexão
HSDPA e LTE
HSDPA e LTE
Wi-Fi e Bluetooth
802.11 a/b/g/n dual band e Bluetooth 4.0
802.11 a/b/g/n dual band e Bluetooth 4.0
Touch ID
Sim
Não
Câmara traseira
8 MP f/2.2 com auto-focus, sensor retroiluminado, dual flash LED True Tone e pixels de 1.5 microns
8 MP f/2.4 com auto-focus, sensor retroiluminado e flash LED
Câmera frontal
1.2 MP (720p)
1.2 MP (720p)
Filmagem
1080p 30fps – 720p 120fps
1080p 30fps
Bateria
1.440 mAh
1.440 mAh
Peso
112 gramas
132 gramas
Dimensões
123.8 x 58.6mm
124.4 mm x 59.2 mm
Espessura
7.6mm
8.97mm
Segurança
Leitor biométrico
-
Fonte: Mac Magazine
iPad
Lançado em 2010, o iPad é um dispositivo em formato tablet. Atualmente encontra-se em sua quinta versão, o “iPad Air”, além de uma versão em menor proporção intitulada “iPad Mini”; ambas representadas na Figura 2.2. As grandes novidades das últimas versões do dispositivo ficaram por conta da tela retina e do novo processador 64 bits. (Apple, 2014)
Figura 2.2 – iPad Air e iPad Mini
Fonte: Apple
No Quadro 2.2 pode-se acompanhar as características gerais e as principais diferenças entre os dois últimos modelos do dispositivo em sua versão padrão.
Quadro 2.2 – Comparativo iPad 4 e iPad Air
iPad 4
iPad Air
Capacidade
16, 32, 64 e 128GB
16, 32, 64 e 128GB
Tela
9,7″ Retina
9,7″ Retina
Processador
Dual-core A6X
A7 64-bit e coprocessador M7
Câmera traseira
Fotos 5MP, ƒ/2.4
Fotos 5MP, ƒ/2.4
Vídeos 1080p HD
Vídeos 1080p HD
Câmera frontal
Fotos 1,2MP
Fotos 1,2MP
Vídeo 720p
Vídeo 720p
Duração da bateria
10 horas
10 horas
Peso (Modelo Wi-Fi e Celular)
652g / 662g
469g / 478g
Dimensões
Altura 241,2 mm
Altura 240 mm
Largura 185,7 mm
Largura 169,5 mm
Espessura 9,4 mm
Espessura 7,5 mm
4G Brasileiro
Não compatível
Compatível
Wi-Fi
Wi-Fi (802.11a/b/g/n)
Wi-Fi (802.11a/b/g/n)
Wi-Fi MIMO
Não compatível
Compatível
Fonte: Mac Magazine
No Quadro 2.3 pode-se acompanhar as características gerais e as principais diferenças entre os dois últimos modelos do dispositivo em sua versão mini.
Quadro 2.3 – Comparativo iPad Mini e iPad Mini Retina
iPad mini
iPad mini com tela Retina
Capacidade
16, 32 e 64GB
16, 32, 64 e 128GB
Tela
7,9″
7,9″ Retina
Resolução
768 x 1024 pixels
1536 x 2048 pixels
Processador
Dual-core A5
A7 64-bit e coprocessador M7
Câmera traseira
Fotos 5MP, ƒ/2.4
Fotos 5MP, ƒ/2.4
Vídeos 1080p HD
Vídeos 1080p HD
Câmera frontal
Fotos 1,2MP
Fotos 1,2MP
Vídeo 720p
Vídeo 720p
Duração da bateria
10 horas
10 horas
Peso (modelo Wi-Fi e Celular)
308g / 312g
331g / 341g
Dimensões
Altura 200 mm
Altura 200 mm
Largura 134,7 mm
Largura 134,7 mm
Espessura 7,2 mm
Espessura 7,5 mm
4G brasileiro
Não compatível
Compatível
Wi-Fi
Wi-Fi (802.11a/b/g/n)
Wi-Fi (802.11a/b/g/n)
Wi-Fi MIMO
Não compatível
Compatível
Fonte: Mac Magazine
Outros Dispositivos
Dentre os dispositivos que utilizam do iOS, estão também o iPod Touch e a Apple TV.
O iPod Touch, representado na Figura 2.3, foi lançado em 2007, com uma interface multi-toque exatamente igual a presente no iPhone, além do botão home. Seu modelo mais recente foi lançado em 2012, e apresenta o processador Apple A5 dual-core, além de 512 MB de RAM; seu hardware é semelhante ao do iPhone 4S. (Apple, 2014)
Figura 2.3 – iPod Touch
Fonte: Apple
Lançado em 2007, o Apple TV, mostrado na Figura 2.4, é um reprodutor de mídia digital suportando até 1080p de transmissão. A partir do dispositivo é possível acesso a iTunes Store, onde é possível alugar e comprar filmes e músicas. Dentre as possibilidades, estão também: acesso a aplicações como Netflix, Youtube e Vimeo; possibilidade de acessar sua conta iCloud e visualizar os arquivos armazenados; rádios online; espelhamento sem fio de um computador, Mac, iPhone ou iPad. O dispositivo faz utilização de uma versão diferenciada do iOS, onde não é possível a instalação de aplicações já que ele não possui armazenamento interno. (Apple, 2014)
Figura 2.4 – Apple TV
Fonte: Mac Magazine
Mercado
De acordo com o Financial Times, em 2012 a Apple se tornou a companhia mais valiosa de todos os tempos, valendo em termos nominais o valor de mercado de US$623,1 bilhões, corrigido pela inflação o valor passa a ser de aproximadamente 850 bilhões.
Em 2013, de acordo com o Financial Times, o valor das ações da empresa caiu cerca de 5%, inclusive tendo um recuo no valor de mercado de US$ 23 bilhões em 2 dias. Apesar da queda, para a Fortune, a empresa continuava sendo um colosso financeiro que obteve 13 bilhões de dólares líquidos no primeiro trimestre do ano, sendo a empresa mais rentável do mundo nesse período.
De acordo com o analista Travis McCour, da Raymond James, as indústrias de celulares que mais faturaram no ano de 2014 foram Apple (com cerca de 87,4%) e Samsung (32,2%) resultando em cerca de 119,6% dos lucros somente para as duas empresas. De acordo com McCour, esse percentual é possível pois muitos fabricantes perderam dinheiro em 2013, algo que também aconteceu em 2012. A tendência em 2014 é de que o faturamento seja maior ainda com o lançamento de novas versões do iPhone, que provavelmente virá em dois tamanhos agora, além de novos dispositivos da empresa.
iOS
iOS é o sistema operacional desenvolvido para os dispositivos móveis da Apple. O sistema foi apresentado na Macworld Conference & Expo, no dia 9 de Janeiro de 2007. Apesar de ter sido apresentado em Janeiro, somente em Junho que o sistema foi lançado, juntamente com o iPhone. Primeiramente, não foi permitido aplicaçõesde terceiros, somente em outubro do mesmo ano que uma SDK nativa foi anunciada. (PEREIRA et al, 2006)
Em março de 2008, o primeiro beta foi lançado, além de um novo nome para o sistema: “iPhone OS”. Somente em 2010, já na quarta versão, que o sistema operacional teve seu nome alterado para “iOS”. (PEREIRA et al, 2006)
Prezando pela eficiência de suas aplicações, beleza e simplicidade ele foi desenvolvido para o iPhone e depois adaptado para iPod Touch, iPad e Apple TV. (Apple, 2014)
Arquitetura
A arquitetura do iOS é formada por quatro camadas, e é semelhante à arquitetura básica do Mac OS X. Ela é formada pelas camadas: Core OS, Core Services, Media e Cocoa Touch, como mostrado na Figura 3.1. (ROCHA; FINZI, 2011)
Figura 3.1 – Camadas do iOS
Fonte: Yates [2010]
Nas camadas inferiores estão os serviços e tecnologias fundamentais, dos quais toda aplicação depende; já nas camadas superiores estão as tecnologias e serviços mais sofisticados. Nas camadas superiores, estão os frameworks que fornecem abstração orientada a objetos das camadas de níveis inferiores, facilitando assim o desenvolvimento, pois reduzem a quantidade de código necessária, além de encapsular características complexas, como threads. (ROCHA; FINZI, 2011)
Camada Cocoa Touch
Na camada Cocoa Touch estão os principais frameworks para a construção de aplicações. As principais tecnologias disponíveis nessa camada, são: Notificação Push, Proteção de Dados e Multitarefas. (Apple, 2013)
A notificação Push é uma maneira de avisar o usuário através de alertas, mesmo com a aplicação rodando em segundo plano. Através desse serviço, o usuário é alertado a partir de uma notificação escrita e/ou sonora, que pode ficar disponível na Central de Notificações. (ROCHA; FINZI, 2011)
A Proteção de Dados permite trabalhar com dados confidenciais usando a criptografia de alguns dispositivos. Quando um arquivo é definido como protegido, ele é armazenado de forma criptografada. Enquanto o dispositivo está bloqueado, o arquivo está inacessível, inclusive para o próprio aplicativo; já quando o aparelho é desbloqueado, uma chave de decodificação é criada e permite o acesso ao arquivo. (ROCHA; FINZI, 2011)
A Multitarefas, permite que quando o usuário saia da aplicação (através do botão home, por exemplo) ela não termine, mas sim fique em execução em um contexto de segundo plano. Através da multitarefa, a vida da bateria é preservada pois a aplicação permanece em memória mas nenhuma linha de código é executada o que permite que a aplicação seja retomada rapidamente sem um consumo de bateria exagerado. (ROCHA; FINZI, 2011)
Camada Media
Na Camada Media, estão as tecnologias projetadas para auxiliar e facilitar a implementação de aplicativos multimídias. Essa camada contém tecnologias de áudio, vídeo e gráfico. (Apple, 2013)
As tecnologias de áudio disponíveis, permitem a capacidade de reproduzir e gravar áudio de alta qualidade, além de vibrações para os dispositivos compatíveis. Alguns dos frameworks disponíveis são: Media Player, que permite acesso à biblioteca do iTunes, além de reproduzir faixas e playlists; AV Foundation, que possui um conjunto de interfaces em Objective-C para reprodução e gravação de áudio; Core Audio, que pode ser usado para a reprodução de sons de alerta do sistema, streaming de áudio e provocar vibrações no dispositivo. (ROCHA; FINZI, 2011)
As tecnologias de vídeo da camada permitem reproduzir e gravar conteúdo de vídeo, que são suportados nas extensões mov, mp4, m4v e 3gp. Dentre os frameworks disponíveis, estão: Media Player, que fornece conjunto de interface para apresentar vídeos completos ou parciais; AV Foundation, que fornece interfaces em Objective-C para gerenciamento de captura e reprodução de vídeos; Core Media, que oferece interfaces de baixo nível para manipulação de mídias; além da classe UI ImagePickerController do UIKit que fornece uma interface padrão para gravação de vídeo. (ROCHA; FINZI, 2011)
Caso o desenvolvedor deseje usar gráficos e animações em sua aplicação, a camada fornece frameworks para o auxílio. Se a aplicação exigir animações simples, o sistema pode fazer isso facilmente; caso a aplicação vá além, o desenvolvedor tem o auxílio de algumas tecnologias, como: Core Graphics, que auxilia na renderização de vetores com base em imagens 2D; Core Animation, fornece suporte avançado para animar visualizações; OpenGL ES, que oferece suporte para renderização 2D e 3D acelerados por hardware. (ROCHA; FINZI, 2011)
Camada Core Services
A camada Core Services, contém serviços fundamentais que mesmo que o desenvolvedor não use-os diretamente, muitas partes do sistema são baseadas neles e fundamentais para as aplicações. Dentre os serviços, estão: SQLite, XML support, In-App Purchase e Grand Central Dispatch. (Apple, 2013)
O SQLite permite a incorporação de um banco de dados SQL leve na aplicação, sem a necessidade de um servidor de banco de dados remoto. O banco pode ser criado, e as tabelas e registros gerenciados a partir da aplicação. (ROCHA; FINZI, 2011)
O XML support, auxilia na manipulação de arquivos XML além de suporte para a transformação do conteúdo XML para HTML. (ROCHA; FINZI, 2011)
O In-App Purchase, é a tecnologia que auxilia o desenvolvedor a vender serviços e conteúdo dentro da própria aplicação. Ele fornece o que é necessário para as transações financeiras usando a conta do iTunes do usuário. (ROCHA; FINZI, 2011)
O Grand Central Dispatch auxiliar o desenvolvedor a gerenciar a execução de tarefas na aplicação, combinando um modelo de programação assíncrono, com um núcleo otimizado para oferecer uma alternativa eficiente para threading. Ele também fornece alternativas para tarefas de baixo nível como temporizadores, monitoramento de sinais e eventos do processo, além de ler e escrever em arquivos. (ROCHA; FINZI, 2011)
Camada Core OS
A camada Core OS possui características de baixo nível, utilizadas em situações onde o desenvolvedor precisa lidar diretamente com comunicação com acessórios de hardware externo, ou segurança por exemplo. (Apple, 2013)
Dentre os frameworks disponíveis, existe o Accelerate, que contém interfaces para realização de cálculos matemáticos e o framework External Accessory, que fornece interfaces de comunicação com acessórios de hardware conectados ao dispositivo através do conector de 30 pinos, lightning ou bluetooth. (ROCHA; FINZI, 2011)
No nível do sistema, existe o ambiente kernel, drivers e interfaces de baixo nível do UNIX. A biblioteca kernel, é a responsável pelos aspectos do sistema, como: gerenciamento de memória virtual, threads, rede e comunicação entre processos. Os drivers fornecem a interface entre o hardware e os frameworks do sistema. (ROCHA; FINZI, 2011)
Através da biblioteca Libsystem, o aplicativo pode acessar características de baixo nível do sistema, como: alocação de memória, networking, threading e standard I/O. (ROCHA; FINZI, 2011)
Evolução do iOS
XXXXXXXXXXXXXX
iPhone OS 1
Lançado em Junho de 2007, a primeira versão do sistema, representado na Figura 3.2, era compatível com o iPhone 2G. Anunciado como uma extensão móvel do OS X (Sistema Operacional da Apple, para seus computadores), apesar de inovar em várias maneiras, ficou marcado pelas funcionalidades que não possuía. Na primeira versão, veio acompanhado somente de algumas aplicações: Telefone, Mensagens, E-mail, iPod, Calendário, Câmera, Fotos, Relógio, Safari, Notas, Calculadora, Mapas, Configurações, e Finanças. A inovação ficou por parte de ser o primeiro sistema móvel multitoques, além de uma versão móvel do navegador Safari, e a velocidade e consistência das aplicações. (Cult Of Mac, 2013)
Figura 3.2 - Springboard iPhone OS 1
Fonte: Cult Of Mac
iPhone OS 2
A segunda versão, representada na Figura 3.2, foi lançada em 11 de Julho de 2008 juntamente com o iPhone 3G. As melhorias dessa versão do sistema, foram: Busca de Contatos, emojis, suporte ao Microsoft Exchange, suporte a aplicações de terceiros, push para e-mails, melhorias na vida útil da bateria, download de podcasts e oaplicativo App Store. (Cult Of Mac, 2013)
A App Store móvel, proporciona ao usuário a facilidade de instalar aplicações de terceiros, sem a necessidade de baixar pelo iTunes no computador e fazer a transferência para o dispositivo. A Apple, também forneceu um kit de desenvolvimento para o sistema móvel. (Cult Of Mac, 2013)
Agora com a possibilidade da instalação de aplicativos, foram criadas várias páginas na springboard, conforme a necessidade devido a quantidade de aplicações. (Cult Of Mac, 2013)
Figura 3.3 – Springboard iPhone OS 2
Fonte: Cult Of Mac
iPhone OS 3
A terceira versão, representada na Figura 3.4, foi lançada em 17 de Junho de 2009, juntamente com o iPhone 3GS. Apesar de não possuir mudanças radicais, muitas melhorias foram feitas no sistema. A maioria das adições dessa versão, eram funcionalidades já disponíveis em outros sistemas, como por exemplo: suporte a MMS, gravação de vídeos, controle de voz, função de cortar, copiar e colar. A precisão do GPS foi melhorada, e novos aplicativos nativos foram incluídos, como: Notas em Voz, Bussola e o Find My iPhone. (Cult Of Mac, 2013)
Em Abril de 2010, a versão 3.2 foi lançada com o principal intuito de trazer o sistema para o novo dispositivo da empresa, o iPad. A atualização foi necessária, pois o iPad possui uma resolução de tela diferente do iPhone. Com essa atualização, algumas novas funcionalidades vieram, como: possibilidade de alterar o plano de fungo da springboard, novos gestos e mudanças no design de alguns aplicativos. (The Verge, 2013)
Figura 3.4 – Springboard iPhone OS 3
Fonte: Cult Of Mac
iOS 4
Deixando de se chamar “iPhone OS” e chamando agora “iOS”, ele foi lançado em 17 de Junho de 2010 juntamente com o iPhone 4. Dentre as novas funcionalidades, estão: Recursos multitarefas, tethering, zoom digital na câmera, verificação ortográfica e pastas de aplicativos. O FaceTime (chat de vídeo) também foi lançado, recurso o qual a Apple não foi a primeira a apresentar, mas tornou-o simples de ser utilizado devido a interface simples. Adicionando o aplicativo Game Center (que tem funcionalidade semelhante a uma rede social, mas para jogos) a Apple conseguiu se destacar na área dos jogos para dispositivos móveis. (Cult Of Mac, 2013)
Figura 3.5 – Springboard iOS 4
Fonte: Cult Of Mac
iOS 5
Com cerca de 200 novas funcionalidades, o iOS 5, exibido na Figura 3.5, foi a maior atualização até então. Lançado em 2011, ele trouxe ao sistema funcionalidades como: Central de notificações, onde as notificações das aplicações, além de ligações perdidas e novas mensagens, ficam reunidas facilitando o acesso ao usuário; iMessage, um serviço de mensagens gratuitas para usuários com dispositivos iOS; iCloud, que introduziu o sistema no armazenamento na nuvem, possibilitando a realização de backups na nuvem; além da sincronização sem fio, integração com o Twitter e a adição dos aplicativos Lembretes e Banca. (Cult Of Mac, 2013)
Exclusivamente para iPad, algumas das novidades foram: novos gestos multi-touch, nova divisão do teclado que facilita a digitação no modo paisagem e mudanças de design no aplicativo Música. (Cult Of Mac, 2013)
Figura 3.6 – Springboard iOS 5
Fonte: Cult Of Mac
iOS 6
Lançado em 2012, a versão representada na Figura 3.7 trouxe recursos como: função Não Perturbe, que faz com que o usuário não receba notificações no período de tempo desejado; novo aplicativo Mapas, onde a Apple deixou de usar os mapas disponibilizados pelo Google e começou fazer uso próprio; integração nativa do sistema com o Facebook; além de atualizações como o FaceTime permitir ligações usando a rede 3G e as configurações de acessibilidade terem sido melhoradas. (Cult Of Mac, 2013)
Figura 3.7 – Springboard iOS 6
Fonte: Cult Of Mac
iOS 7
Com a demissão de Scott Forstall, executivo da Apple que cuidava do iOS desde a criação do iPhone, e contratação de Jony Ive a versão com a maior mudança de interface gráfica aconteceu, como se pode visualizar na Figura 3.8.
Figura 3.8 – Springboard iOS 7
Fonte: Cult Of Mac
Em 2013, o iOS 7 foi lançado deixando para trás o esqueurmorfismo e trazendo um visual flat, todos os aplicativos nativos tiveram seus ícones atualizados e sofreram mudanças no design da aplicação, que podem ser conferidos na Figura 3.9. (Cult Of Mac, 2013)
Figura 3.9 – Mudanças de Design dos Ícones do iOS 6 e iOS 7
Fonte: Rafael Marques
Dentre as novidades da nova versão estão: Central de Controle, que facilita o acesso a controles utilizados com mais frequência como volume, brilho, wifi, bluetooth, câmera, relógio e lanterna; iTunes Radio, serviço de streaming de música da Apple, a Central de Notificações recebeu atualização, estando disponível na tela bloqueada e ganhando abas para facilitar acesso aos compromissos do usuário por exemplo; a Multitarefas foi reformulada, funcionando para todos os aplicativos; AirDrop, onde é possível compartilhar arquivos entre dispositivos móveis que possuam iOS; iCloud Keychan, que armazena senhas na nuvem facilitando o futuro acesso; além de atualização no aplicativo da Câmera (opção de filtros), Mapas (contando com um modo noturno), Siri (ganhando novas funções e controles) e Fotos (podendo agrupar as fotos por data e local). (The Verge, 2013)
iOS 8
Com previsão de lançamento para outubro de 2014, o iOS 8, apresentado na Figura 3.10, mantém o mesmo design de sua versão anterior, trazendo algumas novas funcionalidades, dentre elas as seguintes: QuickType, que permite que o teclado preveja o que você irá digitar e então de sugestões de palavras; iCloud Drive, que transforma o iCloud em um gerenciador de arquivos na nuvem; HealthKit, que reunirá todas as informações de saúde do usuário, sendo compatível com diversos aparelhos de diversas marcas; HomeKit, que permite que o iOS e a Siri se integrem com produtos voltados à casa, como por exemplo luzes e alarmes; Ligações Telefônicas no computador, que permite que através de um Mac seja possível realizar ligações e enviar mensagens de texto; além de melhorias nos aplicativos Câmera, Fotos e App Store. (Apple, 2014)
Figura 3.10 – Springboard iOS 8
Fonte: Apple [2014]
DESENVOLVIMENTO PARA iOS
O desenvolvimento para iOS ocorre oficialmente no Mac, mas ultimamente novas maneiras de desenvolver têm surgido, inclusive para o Windows.
A vantagem do desenvolvimento no Mac com o uso de Objective C, acontece pois por se tratar da linguagem oficial muitas das funcionalidades estão disponíveis exclusivamente para esse formato, além de frameworks não disponíveis em outros modelos.
Ambiente de Desenvolvimento
A ferramenta de desenvolvimento oficial para iOS e Mac OS X é o Xcode, disponível gratuitamente para os Macs através da App Store. Ele já traz a última versão do SDK do iOS automaticamente, além de trazer um simulador virtual do iPhone (e iPad) para testes da aplicação, sem que seja necessário um aparelho físico. (NG, 2014)
Para o Windows, algumas novas maneiras surgiram ultimamente, por exemplo em Delphi com o XE6. (Embarcadero, 2014)
No Visual Studio 2013, tornou-se possível a criação de softwares em C# que rodem em várias plataformas, incluindo iOS. Através de uma parceria com a Xamarim, praticamente o mesmo código é adaptado para todas as plataformas. (TechTudo, 2013)
Desenvolvedor
Não é necessária uma licença para iniciar o desenvolvimento para a plataforma, e caso não crie uma você estará habilitado a usar o Xcode, mas não poderá testar sua aplicação em aparelhos físicos, nem publica-la; é possível realizar testes somente no simulador, o que se torna inviável em aplicações que fazem uso de GPS, acelerômetro ou câmera.
A licença Standart, tem um custo de US$99 por ano, e é individual. Ela permite instalar suas aplicações no aparelho, usar a função debug diretamente do dispositivo físico e publicá-las na App Store. (MILANI, 2012)
Já a licença Enteprise, tem custo de US$299 por ano, e possui as mesmas vantagens da Standart, mas é possível habilitar mais de um desenvolvedor na conta, o que é vantagem para empresas. (MILANI, 2012)
Se tornandoum desenvolvedor registrado, você a passar ter acesso também as versões betas do iOS, Mac OS X e do Xcode. Isso para que possa ajustar sua aplicação para o novo sistema, antes dele ser lançado.
A aquisição de uma licença é feita através do site iOS Developer Center. O processo pode levar até dois dias uteis, pois após o envio das informações é feita uma análise manual por parte da Apple. (MILANI, 2012)
Cocoa Touch
Apesar da linguagem de programação utilizada ser a Objective-C, alguns frameworks foram criados para facilitar o desenvolvimento. Dentre os frameworks, está o Cocoa Touch que é bem integrado ao Xcode e facilita a utilização de vários recursos, como: networking, multimídia e etc. (LECHETA, 2012)
O Cocoa Touch é baseado na arquitetura MVC, representada na Figura 4.1, que é composta por três camadas: View, Controller e Model. (DEVMedia, 2014)
Figura 4.1 – Representação da Arquitetura MVC
Fonte: Telerik Blogs
Camada Model
É a camada responsável por organizar e codificar a lógica de negócio, sem ter a preocupação com a interface gráfica. (MILANI, 2012)
Nessa camada é onde o processamento de dados deve ocorrer, além de qualquer outra ação relacionada a lógica de negócio. (MILANI, 2012)
Essa é a única camada que pode trabalhar isoladamente, já que não se comunica com nenhuma outra, as outras camadas que consultam as informações dela. (MILANI, 2012)
Camada Controller
Utilizada para realizar a comunicação entra as camadas Model e View, ela não deve ser utilizada para a lógica de negócio nem para a interface gráfica. A camada recebe requisições do usuário através da camada View, e envia para a Model para algum processamento ser realizado. (MILANI, 2012)
Essa camada controla basicamente o ciclo de vida das telas, os eventos dos usuários e o controle de navegação; além de ser as classes filhas de UIViewController. (LECHETA, 2012)
Camada View
A camada View é responsável unicamente por mostrar as informações na tela, as quais são fornecidas pela camada Model através da Controller. (MILANI, 2014)
Geralmente a camada View encontra-se no arquivo storyboard, permitindo que várias interfaces sejam criadas e conectadas. (MILANI, 2014)
Objective-C
Criada com base na sintaxe de da linguagem C e com conceitos do Smalltalk, a linguagem possui vários recursos para usufruir da orientação a objetos. (MILANI, 2012)
Utilizada pra o desenvolvimento de aplicações para iOS e Mac OS X, ela foi criada no início da década de 80, adquirida e licenciada por Steve Jobs em 1988. (LECHETA, 2012)
Arquivos de Implementação
Nos arquivos de projeto, podem ser visualizados basicamente três tipos de arquivos que podem gerar dúvida: o xib, h e m.
Os arquivos do tipo xib são arquivos baseados em XML com informações da interface gráfica de um objeto, como uma célula personalizada de uma grid. Antes do Xcode 4 um programa a parte era utilizado para a criação desse arquivo, depois acabou por ser integrado ao Xcode e sua utilização diminuída. (NG, 2014)
Os arquivos de extensão h são um cabeçalho para os arquivos do tipo m, que são os arquivos de implementação. Como em algumas linguagens de programação, os códigos no Objective C são divididos em: interface e implementação. (NG, 2014)
Tipos de Dados
Os tipos de dados primitivos herdados da linguagem C padrão são: char, int, float, double e bool.
Nos tipos de dados avançados tem-se: NSNumber, utilizado quando é necessário que valores de tipos primitivos como int, double e float sejam usados como objeto; NSString, utilizado para facilitar a manipulação de strings, sendo possível a localização de substrings dentro de uma string, concatenação de texto e etc.; NSArray, utilizado para a manipulação de arrays não editáveis; NSMutableArray, possui as mesmas funcionalidades que o anterior, mas é possível alterar a estrutura do mesmo; NSDictionary, implementa o conceito de dicionário na programação, ou seja, é uma coleção de objetos acessados por outros objetos chamados chaves de acesso. (MILANI, 2012)
Em um NSArray ou NSMutableArray, o armazenamento é possível somente com objetos, por exemplo, caso deseje armazenar números inteiros será feito uso do tipo de dado NSNumber e não int. (MILANI, 2012)
Customização da Aplicação
Após a criação do projeto para desenvolvimento algumas configurações são necessárias, como o nome da aplicação a ser exibida na springboard, ícone da aplicação e o splash screen.
Cada projeto possui um arquivo do tipo plist onde as configurações relacionadas à aplicação são armazenadas. Esse arquivo possui o mesmo nome do projeto acompanhado de –Info e a extensão plist. O arquivo fica dentro da pasta Supporting Files do projeto. (MILANI, 2012)
Por padrão o nome do aplicativo a ser exibido na home screen é o mesmo nome do projeto. Para alterar o mesmo, no arquivo plist na sessão “Bundle Display Name”, basta digitar o nome desejado para ser exibido da aplicação. (LECHETA, 2012)
Para alterar o ícone da aplicação, é utilizado a propriedade Icon Files do arquivo plist. Os ícones podem ser da resolução normal ou em alta resolução (retina). Os ícones para dispositivos com tela retina devem ter o dobro da resolução normal e no nome do arquivo possuem @2x. Depois de adicionar as imagens dos ícones ao projeto, na propriedade do arquivo plist adiciona-se sub itens e em cada um deles é colocado o nome da imagem, o Xcode se encarrega de saber qual versão será utilizada para cada aparelho através da resolução da imagem. A resolução para cada aparelho pode ser visualizada no Quadro 4.1. (MILANI, 2012)
Através do Images.xcassets é possível definir a splash screen, que se trata da imagem que será exibida em tela cheia quando a aplicação é aberta. Na sessão LaunchImage é possível carregar as imagens desejadas. A resolução apropriada pode ser visualizada no Quadro 4.1. (LECHETA, 2012)
Quadro 4.1 – Resolução dos Ícones e Splash Screen
Asset
iPhone 5 (@2x)
iPhone 4s (@2x)
iPad and iPad mini (@2x)
iPad 2 and iPad mini (@1x)
Icone da Aplicação (Obrigatório)
120 x 120
120 x 120
152 x 152
76 x 76
Icone Para App Store (Obrigatório)
1024 x 1024
1024 x 1024
1024 x 1024
1024 x 1024
Splash Screen (Obrigatório)
For iPhone 5, 640 x 1136
640 x 960
1536 x 2048 (portrait)
768 x 1024 (portrait)
2048 x 1536 (landscape)
1024 x 768 (landscape)
Icone Spotlight (Recomendado)
80 x 80
80 x 80
80 x 80
40 x 40
Icone Configurações (Recomendado)
58 x 58
58 x 58
58 x 58
29 x 29
Icone Barra de Navegação (Opcional)
Cerca de 44 x 44
Cerca de 44 x 44
Cerca de 44 x 44
Cerca de 22 x 22
Icone tab bar (opcional)
Cerca de 50 x 50 (maximo: 96 x 64)
Cerca de 50 x 50 (maximo: 96 x 64)
Cerca de 50 x 50 (maximo: 96 x 64)
Cerca de 25 x 25 (maximo: 48 x 32)
Fonte: Apple
TERMINAL ACADÊMICO
O Terminal Acadêmico é a área de acesso do aluno as informações referentes à sua matricula e as disciplinas em que está matriculado. No terminal, o aluno tem acesso as notas, faltas, horários, materiais disponibilizados pelos professores e informações da tesouraria.
Motivação
A ideia da aplicação visa auxiliar o aluno na praticidade de consultar informações referentes às disciplinas em que está matriculado, como as notas obtidas e faltas em cada uma delas, garantindo assim um maior controle de ambos; visa também auxiliar na obtenção dos materiais disponibilizados pelos professores, sendo possível o download direto para celulares ou tablets; auxiliar na consulta do quadro de horários e atividades complementares realizadas.
O desenvolvimento da aplicação, visa auxiliar novos desenvolvedores para a plataforma iOS, pois através do desenvolvimento do terminal acadêmico que será demonstrado neste trabalho, o leitor poderá aprender um pouco sobre o desenvolvimento básico de uma aplicação.
Desenvolvimento
Uma base de dados simples foi desenvolvida simplesmente para representar a existente atualmente na faculdade, pois quando a aplicação estiver em produção não será necessária já que se dispõe de uma, logo a base será usada somente para testes durante o desenvolvimento.
Um WCF ficaráencarregado da comunicação entre a aplicação no dispositivo e o banco de dados. Ele fornecerá as informações necessárias para o preenchimento das informações, que nem sempre são as mesmas da versão WEB, já que para o dispositivo é necessário um design mais limpo e informações mais claras.
O desenvolvimento da aplicação será para dispositivos que rodem no iOS 7, ou superior; a aplicação será desenvolvida em Objective-C.
Módulo Secretaria
No módulo de secretaria, têm-se as sessões de Notas Por Etapa e Parciais; Faltas; Dados Cadastrais e Profissionais; Quadro de Horários; Atividades Complementares.
1.1.1.1 Notas
A sessão de notas é dividia em: Notas por Etapa e Notas Parciais.
Em notas por etapa, pode-se consultar as notas de cada disciplina que o aluno cursa, divididas em: Módulo 01, Módulo 02, Substitutiva e Média Final.
Em notas parciais, pode-se consultar as notas obtidas em atividades extras que compõe a nota do módulo.
1.1.1.2 Faltas
Na sessão de Faltas, pode-se consultar as faltas de cada disciplina que o aluno está matriculado, agrupadas por mês.
1.1.1.3 Dados, Atividades e Quadro de Horários
Na sessão de Dados Cadastrais, pode ser consultado as informações pessoais do aluno, como endereço, telefone, e-mail e etc.
Na sessão de Dados Profissionais, estão os dados da empresa em que o aluno trabalha, inclusive o cargo que exerce.
Em Atividades Complementares, é possível ver quais atividades o aluno já realizou e qual a carga horaria já recebeu com cada uma delas.
No Quadro de Horários, o aluno pode analisar sua grade horaria e inclusive saber em qual sala a disciplina é lecionada.
Módulo Materiais
O módulo de materiais consiste da sessão onde ficará disponível os materiais disponibilizados pelos professores, agrupados por disciplina. Após disponibilizado, os arquivos estão disponíveis para download e então poderão serem abertos em aplicações apropriadas para cada tipo de arquivo, sendo por exemplo possível a leitura de arquivos “.pdf” e até edição de arquivos “.doc”. Qualquer tipo de arquivo será permitido para download na aplicação, basta que o dispositivo possua um aplicativo apropriado para o formato, então logo após o download será dada a opção ao usuário para abrir na aplicação desejada.
Resultados Obtidos
Para o funcionamento completo da aplicação simulando um ambiente de produção foi necessário a criação de uma base de dados, de um WCF e a aplicação em si.
Base de Dados
Para o desenvolvimento prático, foi criado um banco de dados em SQL para representação do banco de dados da universidade. O banco consiste de tabelas que retratam as informações essenciais para a aplicação iOS, não sendo representados os dados irrelevantes para tais. Quando em ambiente de produção, o banco de dados utilizado será o já existente atualmente na própria universidade, a fim de diminuir o impacto na implantação da aplicação.
WCF
Para realizar a comunicação entre a aplicação e a base de dados, fez-se uso de um WCF. Após feita a requisição pela aplicação, através do WCF que os dados serão carregados. O WCF também garante que os dados necessários sejam levados à aplicação, fazendo a adaptação do banco da universidade para as informações necessárias para a aplicação, relevando as outras informações garantindo assim uma menor transferência de dados (por se tratar de um dispositivo que pode realizar as requisições em rede 3G, o tamanho se torna importante) e garantindo também que independente da estrutura do banco de dados, ele possuindo as informações necessárias seja possível realizar a consulta.
Aplicação FACENS
A aplicação foi desenvolvida em Objective C no Xcode através do sistema Mavericks. A homescreen do dispositivo com a aplicação pode ser visualizada na Figura 6.1.
Figura 6.1 – Homescreen com a Aplicação
O nome da aplicação foi definido como FACENS, e a representação da homescreen e de todas as imagens referentes à aplicação serão de um iPhone 5. A aplicação foi desenvolvida para dispositivos com iOS 7 ou superior, não estando disponível para versões anteriores.
Apesar de representado neste dispositivo, o comportamento em outros é semelhante tendo como diferença a resolução do aparelho e a aplicação se adaptando automaticamente a resolução adequada.
Na Figura 6.2 é possível visualizar a imagem de abertura da aplicação, exibida enquanto a aplicação é iniciada.
Figura 6.2 – Imagem de Abertura da Aplicação
Na Figura 6.3 tem-se a tela de Login. Através desta tela o aluno irá preencher seu RA e sua senha, ambos utilizados para o acesso ao terminal acadêmico disponível na versão web.
Figura 6.3 – Login
Após o Login, o usuário é transferido automaticamente para a tela de Notas por Etapa, exibido na Figura 6.4.
Figura 6.4 – Notas por Etapa
Em cada uma das células tem-se as informações referentes a uma matéria. Em negrito o nome da matéria, logo abaixo as notas referentes aos Módulos 1 e 2. Do lado direito da célula, tem-se a nota da substitutiva e a média final do aluno na matéria. Na parte inferior é possível visualizar o menu responsável por direcionar o usuário a outros módulos.
Em Notas Parciais, exibido na Figura 6.5, é possível visualizar as notas postadas pelos professores que não fazem parte da etapa geral. Geralmente a sessão é utilizada para trabalhos, projetos ou semelhantes.
Figura 6.5 – Notas Parciais
Agrupado por matéria, em cada célula é exibido o nome da atividade e a nota obtida. Não existe uma quantidade exata de atividades, caso o professor não tenha utilizado essa sessão a matéria não será exibida visando facilitar a visualização das notas.
Na sessão de Faltas, exibida na Figura 6.6, o aluno pode consultar as faltas obtidas em cada disciplina.
Figura 6.6 – Faltas Por Disciplina
Agrupado por matéria, em cada célula da grid é possível visualizar o mês e a quantidade de faltas referentes a ele; sendo possível assim o aluno ter acesso a quantidade de faltas por matéria que cursa.
Na sessão de Arquivos, visto na Figura 6.7, o aluno terá acesso aos arquivos disponibilizados pelos professores.
Figura 6.7 – Arquivos Por Disciplina
Agrupado por matéria, ficaram disponíveis os materiais disponibilizados pelos professores. Caso o arquivo seja de um formato suportado por alguma aplicação no dispositivo, ele poderá ser aberto em tal aplicação e então manipulado.
Para fornecer acesso a outras áreas da aplicação não disponíveis na barra inferior, é utilizado um menu intitulado “Outros”, como visto na Figura 6.8.
Figura 6.8 – Menu Outros
Nesse menu, tem-se então acesso as áreas de Dados Cadastrais, Dados Profissionais, ao Quadro de Horários e as Atividades Complementares. Depois de selecionado uma das áreas, ela será então exibida. Para retornar ao menu basta clicar no botão superior direito.
Na Figura 6.9 tem-se a tela dos Dados Cadastrais do aluno, onde se pode consultar as informações básicas do aluno.
Figura 6.9 – Dados Cadastrais
Cada uma das células é referente a algum dado do aluno, tendo em destaque com fonte um pouco maior qual é o dado e em seguida a informação em si.
Na Figura 6.10, tem-se dos Dados profissionais do aluno, onde ficam disponíveis as informações profissionais do aluno.
Figura 6.10 – Dados Profissionais
Cada uma das células é referente a uma informação da empresa em que aluno trabalha. Seguindo o mesmo padrão dos Dados Cadastrais tem-se em destaque um pouco maior qual a informação é exibida, e menor a informação em si.
Na Figura 6.11, é possível visualizar o Quadro de Horários do aluno, onde fica disponível a grade horaria do semestre.
Figura 6.11 – Quadro de Horários
Dividido por dia da semana, cada célula representa uma aula. Em destaque tem-se o horário e logo abaixo a matéria lecionada e a sala (sendo o prédio e o número da sala).
Na Figura 6.12 tem-se as atividades complementares, que são as atividades extracurriculares cumpridas pelo aluno a fim de conseguir a quantidade menina exigida pela instituição.
Figura 6.12 – Atividades Complementares
Cada célula representa uma atividade realizada,sendo em destaque o nome da atividade e logo abaixo a quantidade de horas recebidas pela realização da mesma.
Conclusão
Este trabalho propôs um estudo sobre como se tornar um desenvolvedor para a plataforma iOS, trazer informações para iniciantes no desenvolvimento em Objective-C e além disso o desenvolvimento de uma aplicação para dispositivos iOS como complemento.
Através da proposta estabelecida pode-se realizar o entendimento do desenvolvimento para a plataforma, resultando em informações que visam auxiliar novos desenvolvedores além de fornecer uma aplicação do Terminal Acadêmico da faculdade para os alunos, a fim de facilitar a consulta à dados e matérias referentes ao aluno em si e as matérias cursadas.
Todos os objetivos estabelecidos foram alcançados, tendo como alvo da aplicação os alunos, visto que a maior parte dos módulos disponíveis via web para estudantes, estão também no aplicativo.
Com o estudo realizado pode-se perceber uma grande ascendência de aplicativos móveis, devido ao grande crescimento de vendas do mesmo. Com isso, cada vez mais aplicativos móveis estão ganhando destaque no mercado. Visando auxiliar novos desenvolvedores, informações iniciais estão disponíveis no documento, a fim de introduzir o leitor ao desenvolvimento para esta plataforma.
Perspectivas Futuras
Em futuras versões da aplicação novos módulos poderão ser incluídos, como o da tesouraria; podendo ser incluído também módulos direcionados aos professores, visando auxiliar com a postagem de notas, materiais e chamadas.
Outras melhorias não essenciais, mas visando facilitar a vida do aluno podem ocorrer, como: calendário de provas, notificações de atualização de notas ou materiais e vídeo aulas disponíveis.
A aplicação também pode sofrer pequenas alterações de design, visando o ambiente de outras faculdades. Para a realização desta alteração basta apenas que o WCF se encarregue de trazer os dados necessários do banco da faculdade em questão, com isso o mercado atingido seria ainda maior.
REFERÊNCIAS
Apple - Apple TV. Disponível em: <https://www.apple.com/br/appletv/>. Acesso em: 22 ago. 2014.
Apple e Samsung continuam dominando todo o lucro do mercado de celulares | MacMagazine. Disponível em: <http://macmagazine.com.br/2014/02/13/apple-e-samsung-continuam-dominando-todo-o-lucro-do-mercado-de-celulares/>. Acesso em: 22 ago. 2014.
Apple - iPod touch. Disponível em: <http://www.apple.com/br/ipod-touch/>. Acesso em: 22 ago. 2014.
Comparamos o iPhone 5S, iPhone 5C e iPhone 4S, escolha o seu! | iPadDicas - Dicas, Tutorais, Jogos e Aplicativos do iPad. Disponível em: <http://ipaddicas.com/dicas/comparativo-iphone-5s-5c-4s-apple/>. Acesso em: 24 ago. 2014.
Evolution Of The Iphone | phoneserviceslocal.com. Disponível em: <http://phoneserviceslocal.com/evolution-of-the-iphone/>. Acesso em: 22 ago. 2014.
G1 - Compare o iPhone 5S com o iPhone 5C - notícias em Tecnologia e Games. Disponível em: <http://g1.globo.com/tecnologia/noticia/2013/09/compare-o-iphone-5s-com-o-iphone-5c.html>. Acesso em: 22 ago. 2014.
Tabela comparativa entre o iPad 4 e o novo iPad Air | Blog do iPhone. Disponível em: <http://blogdoiphone.com/2013/10/tabela-comparativa-entre-o-ipad-4-e-o-novo-ipad-air/>. Acesso em: 24 ago. 2014.
Tabela comparativa entre o iPad mini antigo e o novo iPad mini Retina | Blog do iPhone. Disponível em: <http://blogdoiphone.com/2013/10/tabela-comparativa-entre-o-ipad-mini-antigo-e-o-novo-ipad-mini-retina/>. Acesso em: 24 ago. 2014.
Apple anuncia o futuro iOS 8, repleto de novidades | Blog do iPhone. Disponível em: <http://blogdoiphone.com/2014/06/apple-anuncia-o-futuro-ios-8-repleto-de-novidades/>. Acesso em: 09 ago. 2014.
iOS: A visual history | The Verge. Disponível em: <http://www.theverge.com/2011/12/13/2612736/ios-history-iphone-ipad>. Acesso em: 09 ago. 2014.
Novo design no iOS 7, acerto ou erro? | Rafael Marques. Disponível em: <http://www.rafaelmarques.com.br/blog/novo-design-no-ios-7-acerto-ou-erro/>. Acesso em: 09 ago. 2014.
Tablet - iOS: Conheça a história do sistema operacional da Apple - Tablet.com.br. Disponível em: <http://www.tablet.com.br/historia-apple-ios>. Acesso em: 09 ago. 2014.
The Evolution Of iOS: From iPhone OS To iOS 7 | Cult of Mac. Disponível em: <http://www.cultofmac.com/191340/the-evolution-of-ios-from-iphone-os-to-ios-6-gallery/>. Acesso em: 09 ago. 2014.
Catching up with ASP.NET MVC. Disponível em: <http://blogs.telerik.com/telerikreportingteam/posts/08-07-05/catching-up-with-asp-net-mvc.aspx>. Acesso em: 12 out. 2014.
Introdução ao Padrão MVC. Disponível em: <http://www.devmedia.com.br/introducao-ao-padrao-mvc/29308>. Acesso em: 30 set. 2014.
iOS Human Interface Guidelines: Icon and Image Sizes. Disponível em: <https://developer.apple.com/library/iOS/documentation/userexperience/conceptual/mobilehig/IconMatrix.html#//apple_ref/doc/uid/TP40006556-CH27-SW2>. Acesso em: 12 out. 2014.
iOS Mobile App Development with Delphi. Disponível em: <http://www.embarcadero.com/br/products/delphi/ios-development>. Acesso em: 30 set. 2014.
Visual Studio ganha suporte para Android, iOS, Mac OS e outras novidades | Notícias | TechTudo. Disponível em: <http://www.techtudo.com.br/noticias/noticia/2013/11/visual-studio-ganha-suporte-para-android-ios-mac-os-e-outras-novidades.html>. Acesso em: 06 set. 2014.
Livro 1
Livro 2
Livro 3
Artigo 1
Artigo 2
Artigo 3