Neste artigo apresentaremos várias novidades versão 6 do iOS, explicando os novos componentes e suas funcionalidades e todo o poder que essas novidades agregam à plataforma móvel da Apple.
ArtigosMobileNovidades do iOS 6 - Revista Mobile Magazine 46
Artigo do tipo Tutorial
Recursos especiais neste artigo: Contém nota Quickupdate, Conteúdo sobre Novidades. Autores: Alexandre Oliveira e Vitor Granzinoli Vellozo
Novidades
do iOS 6 Muitas novidades nessa nova versão, inclusive alguns
novos componentes que prometem agilizar o desenvolvimento de aplicativos e
jogos, novas maneiras de atualizar a aplicação e mudanças na maneira de se
desenvolver. Para discutir o tema, o artigo faz uma breve introdução e, em
seguida, apresenta várias novidades da mais nova versão do iOS, explicando os
novos componentes e suas funcionalidades e todo o poder que essas novidades
agregam à plataforma móvel da Apple.
Em
que situação o tema é útil O tema é útil para todos os desenvolvedores que
buscam constante atualização, e que buscam as informações necessárias para
agilizar o aprendizado sobre as novidades do iOS.
Após o sucesso da versão 5 do seu sistema
operacional para sistemas móveis, a Apple lançou em setembro de 2012 a versão 6
do iOS, acompanhando esta atualização, uma atualização na ferramenta de
desenvolvimento Xcode, que inclui o suporte às novidades deste sistema, além de
atualizações no SDK e simuladores.
Nesta versão foram adicionadas centenas de novas
funcionalidades, correções de bugs e modificações no funcionamento de vários
componentes, que para muitos ocorreu de forma brusca, pois o iOS 5 havia sido
lançado a cerca de um ano e da mesma forma, incluía uma série de novidades que
exigiam tempo para adaptação.
Das novas funcionalidades, iremos falar sobre as
mudanças no ambiente de desenvolvimento, detalhando as principais melhorias na
ferramenta Xcode, modificações em nível de compilador e os novos componentes
visuais como o UICollectionView, que nos permite criar aplicações com o layout
similar à aplicação de fotos que acompanha o iPad de uma maneira simplificada.
Como nem tudo são flores, a evolução do sistema
operacional nem sempre é feita de maneira transparente para o desenvolvedor,
que muitas vezes se vê em uma posição desconfortável de ter que reaprender algo
já costumeiro em seu dia a dia, como é o caso do método viewDidUnload,
utilizado desde a primeira versão do sistema operacional para liberar recursos
quando uma tela é removida da memória, que foi totalmente descartado, não sendo
mais necessária a sua implementação. Outra mudança drástica foi a maneira como
controlamos a orientação dos dispositivos, que recebeu novos aliados como o
Auto Layout (ver Nota do DevMan 1).
Como as mudanças são muitas, iremos mostrar uma
visão geral de cada novo componente ou mudança que consideramos importantes,
deixando o leitor livre para aprofundar seus estudos na tecnologia que mais lhe
interessa. No final do artigo incluímos uma série de referências para os
assuntos aqui tratados, que podem servir como ponto inicial para suas
pesquisas.
Nota do DevMan 1.Incompatibilidade dos novos componentes com versões anteriores do iOS É muito importante
frisar que a utilização de componentes específicos para iOS 6 fazem com que a
exigência mínima do sistema operacional executada seja alterada para a versão
seis. Caso o desenvolvedor pretenda suportar versões anteriores do sistema
operacional, é necessário que seja feito um tratamento especial nas classes
onde tais componentes serão executados, utilizando diretivas de compilador, do
contrário a aplicação simplesmente não irá funcionar.
Melhorias no Cocoa Touch
Além de uma nova versão da ferramenta de
desenvolvimento Xcode, que incluiu novos simuladores para versão 6 do sistema
operacional, outras mudanças ocorreram internamente em nível de compilador e
interface. As mudanças se dividem em novos componentes, novas funcionalidades e
algumas modificações no funcionamento base de alguns componentes (ver Nota do DevMan 2).
Nota do DevMan 2. O
Cocoa Touch O Cocoa Touch é a camada
de mais alto nível para comunicação com o sistema operacional iOS. A mesma segue
o padrão de arquitetura MVC (Model-View-Controller) e possui uma série de
bibliotecas que facilitam a vida do desenvolvedor como o UIKit, MapKit, Core
Data e Core Animation. Uma lista completa das bibliotecas que fazem parte do
Cocoa Touch pode ser encontrada nas referencias no final do artigo.
Automatic Synthesize
Uma das regras básicas para utilizarmos uma
property é a criação de seu par synthesize, que automaticamente cria os getters
e setters necessários para o seu funcionamento. Até então, esta regra não podia
ser quebrada, pois o código deixaria de compilar, porém, com o Xcode 4.5,
podemos agora esquecer estas declarações de vez, pois o compilador irá se
encarregar de inseri-las em tempo de compilação.
Algo que devemos ter em mente é que o acesso a
propriedades deve ser feito diretamente pelo seu método self, pois o comando synthesize
utilizado manualmente adicionava uma variável de instância com o mesmo nome,
permitindo que o acesso fosse feito diretamente pelo nome da variável. Com o
automatic synthesize, as variáveis de instância ainda são criadas, porém a sua
nomenclatura padrão difere do nome da propriedade, sempre adicionando um
underscore na frente de seu nome, o que nos permite ter propriedades com o
mesmo nome de parâmetros de métodos, sem receber o famoso aviso “local
declaration of ‘sua variável’ hides instance variable”.
O mais interessante é que esta nova funcionalidade é
compatível não somente com aplicações que utilizam a última versão do sistema
operacional, mas também com versões anteriores. Sendo uma funcionalidade
opcional, o único requerimento é a utilização da versão mais recente da
ferramenta Xcode.
Na Listagem
1 temos uma comparação entre as duas maneiras de se declarar propriedades, com
automatic synthesize e utilizando o synthesize manualmente.
Listagem 1. Comparação entre o synthesize automático e manual.
@implementation ViewController
@synthesize propertyManual;
// Como o automatic synthesize declara as propriedades.
// @synthesize propertyAutomica = _propertyAutomatica;
- (void)viewDidLoad {
[super viewDidLoad];
propertyManual = @"Property manual acessada pela variável de instância.";
self.propertyManual = @"Property manual acessada via self.";
self.propertyAutomatica = @"Property automática acessada via self.";
_propertyAutomatica = @"Property automática acessada pela
variável de instância.";
}
@end
O método viewDidUnload
Em versões anteriores, quando uma aplicação recebia
o aviso de falta de memória, todos os view controllers não visíveis na tela
recebiam uma chamada para o método viewDidUnload, que os removia da memória.
Este processo nos permitia liberar recursos que seriam carregados novamente
quando a tela fosse aberta, porém, este método foi marcado como deprecated, ou
seja, ele não é mais chamado e deve ser removido da implementação.
De acordo com a Apple, este método foi
descontinuado, pois na maioria dos casos, descarregar componentes visuais em
casos de pouca memória não resolvia de fato o problema.
Com a remoção deste método, a lógica para liberar
tais recursos em caso de falta de memória deve ser centralizada no método
didReceiveMemoryWarning, porém, não devemos simplesmente mover todo o conteúdo
do método viewDidUnload para o método didReceiveMemoryWarning, pois como a view
não é mais descarregada da memória, o método viewDidLoad não será chamado
novamente e os componentes não serão reinicializados.
Novas maneiras de controlar a orientação
Outra mudança em conceitos básicos foi introduzida
nesta versão do iOS, a maneira como é controlada a orientação dos dispositivos,
que antes era feita sobrescrevendo o método
shouldAutorotateToInterfaceOrientation dentro do viewcontroller, nos permitindo
ajustar componentes visuais de acordo com a orientação, ou até mesmo carregar
uma tela totalmente diferente. Este método foi descontinuado e a recomendação é
utilizar uma nova dupla de métodos para controle de orientação, são eles:
shouldAutorotate, que indica se a tela tem suporte a mudança de orientação e
supportedInterfaceOrientations, que indica quais orientações são suportadas
pelo view controller.
Recomendamos começar pelo Plano de Estudo Carreira Programador Front-End. Essa área da programação é mais visual e intuitiva, tornando-a ideal para iniciantes. No Front-End, você aprenderá a criar a parte visual dos sites, como layout, cores e interatividade. Depois de dominar o Front-End, você pode avançar para Programador Back-End, onde aprenderá a lidar com a lógica e o funcionamento interno dos sites, e, finalmente, para Programador Mobile, focando no desenvolvimento de aplicativos para smartphones. Nossa metodologia é estruturada de forma progressiva para garantir que você desenvolva confiança e experiência ao criar projetos reais, como sites estáticos e dinâmicos.
Em quanto tempo vou me tornar um programador?
O tempo necessário para se tornar um programador varia de acordo com a dedicação de cada estudante. Com nossa metodologia, que inclui um Plano de Estudo detalhado e suporte contínuo, você pode se tornar um programador de 6 meses a um ano, dependendo do seu ritmo e esforço. Nossa abordagem prática e orientada a projetos ajudará a acelerar seu aprendizado.
Eu preciso de um diploma de faculdade para começar a atuar como programador?
Não. Ser programador é uma excelente oportunidade para quem não possui diploma de faculdade. Muitas empresas contratam baseadas nas habilidades técnicas e experiência prática, não necessariamente em diplomas. Após conquistar uma vaga, você pode optar por complementar sua formação com um diploma.
Por que a programação se tornou a profissão mais promissora da atualidade?
A necessidade de programadores cresceu exponencialmente, especialmente após a pandemia de Covid-19, que forçou muitas empresas a se adaptarem ao digital. Com o crescimento das empresas de tecnologia, a demanda por programadores aumentou. Atualmente, há mais de 200 mil vagas abertas no Brasil devido à falta de profissionais qualificados.
Metodologia
Quais são os principais diferenciais da DevMedia?
Didática e Metodologia
Com mais de 20 anos de experiência, nossa metodologia foca em menos aulas e mais prática. Desenvolvemos dezenas de projetos e exercícios para ajudar você a se tornar um programador completo. Nossos projetos são desafiadores e autênticos, não apenas exercícios repetitivos.
Projetos reais e exercícios
Você desenvolverá diversos projetos práticos em cada carreira (Front-End, Back-End e Mobile), recebendo mentoria e suporte contínuo. A prática é essencial, e oferecemos milhares de exercícios para ajudar você a fixar o conteúdo e melhorar sua posição no ranking.
Suporte ao aluno
Nossa plataforma oferece suporte dedicado com professores experientes, respondendo suas dúvidas em menos de uma hora. Isso garante que você receba a ajuda necessária durante toda a sua jornada de aprendizado.
Gamificação
A DevMedia utiliza gamificação para tornar o aprendizado mais envolvente e motivador. Você acumula pontos e moedas por acertos, que podem ser trocados por produtos e customizações no seu card pessoal. Além disso, o sistema de ranking mensal incentiva a competição amigável e a melhoria contínua.
O que eu irei aprender estudando pela DevMedia?
Ao estudar conosco, você se tornará um programador Full Stack, dominando Front-End, Back-End e Mobile. Utilizamos a linguagem JavaScript, a mais utilizada no mercado, preparando você para criar sistemas webs e aplicativos celulares. Nossa abordagem prática inclui exercícios para fixar o conhecimento e desenvolvimento de projetos reais que te preparam, para o mercado de trabalho.
Quais as vantagens de aprender programação através da linguagem JavaScript?
Ela é Multiplataforma, ela vai te permitir programar para web e para celulares utilizando praticamente a mesma sintaxe.
Elá é Full Stack. Ela te permite criar aplicações Front-end, Back-end e Mobile. Isso acelera muito sua carreira e aumenta suas possibilidades de pegar trabalhos autônomos e conquistar uma vaga no mercado.
Ela é fácil de aprender. Como ela não exige conhecimento inicial em “Orientação a Objetos” ela se torna mais simples com uma curva de aprendizado suave e vai te permitir começar a programar mais rápido do que outras linguagens
A plataforma oferece certificados?
Sim, oferecemos dois tipos de certificados: o certificado de conclusão, que você adquire ao consumir o conteúdo, e o certificado de autoridade, que você obtém ao acertar exercícios. Ambos possuem carga horária, que pode ser utilizada para fins acadêmicos, como atividades complementares na faculdade, e também para comprovações em processos seletivos ou no seu currículo.
A plataforma tem suporte ao aluno, como funciona?
Sim, temos uma equipe de programadores pronta para ajudar com todas as suas dúvidas! Durante o horário comercial, o tempo médio de resposta é de até 10 minutos. E não se preocupe, também oferecemos suporte à noite e nos finais de semana, com um prazo de resposta um pouco maior.
A DevMedia me forma como programador Full Stack?
Sim! Oferecemos uma formação completa, do zero até Full Stack. Nosso foco é na prática, então você vai encontrar muitos exercícios e projetos reais ao longo do curso. Garantimos que você sairá com a autonomia necessária para desenvolver seus próprios projetos com confiança!
Tem horário para as aulas?
Não, não temos horários fixos para as aulas. Todo o nosso conteúdo está disponível para você acessar a qualquer momento, permitindo que você estude conforme sua própria disponibilidade e ritmo. Dessa forma, você pode integrar o aprendizado à sua rotina de maneira mais flexível e eficaz.
Por que a DevMedia não usa videoaulas em sua didática?
Nosso foco principal é formar programadores de verdade. Sabemos que o dia a dia de um programador envolve muita leitura, interpretação e escrita de código. Por isso, nosso conteúdo é desenvolvido para ambientar você nesse processo desde o início, proporcionando mais autonomia e acelerando seu aprendizado.
Na vídeo-aula é o professor que está lendo, interpretando e escrevndo o código para você, isso limita o seu progresso. Ao ler e interagir diretamente com o conteúdo, você exercita sua capacidade de leitura e concentração, além de poder avançar no seu próprio ritmo. Dessa forma, você se torna um programador mais independente e preparado para os desafios reais do mercado.
Preciso de um computador específico para estudar na DevMedia?
Não é necessário nada específico. Qualquer computador com processador atual e memória de 8 GB é suficiente.
Eu consigo estudar pelo celular?
Sim, a DevMedia possui um aplicativo que te permite seguir com seus estudos de qualquer lugar.
A DevMedia tem aplicativo?
Sim, nosso aplicativo está disponível na Play Store e na Apple Store, permitindo que você estude de forma prática e conveniente em qualquer lugar.
Preciso estar na faculdade para acompanhar os estudos na DevMedia?
Não, a faculdade não é necessária. Você não precisa de nenhum conhecimento prévio para iniciar os estudos na nossa plataforma.
Assinatura e Pagamentos
Quais são os planos de assinatura disponíveis?
Oferecemos o plano anual, o valor total é lançado no cartão de crédito, parcelado em 12 vezes, e você precisa dispor do valor total no limite do seu cartão. Você também pode optar por pagar no PIX
Adquirindo o plano, terei acesso a todo o conteúdo?
Sim, ao assinar nossa plataforma, você desbloqueia acesso total a todo o nosso conteúdo, sem precisar comprar nada separadamente.
A plataforma tem planos vitalícios?
Não, nossos planos são anuais, garantindo que você tenha acesso contínuo às atualizações mais recentes e aos novos conteúdos. A tecnologia evolui rapidamente, e um plano vitalício oferece um conteúdo estático que se tornará ultrapassado em pouco tempo. Com nossos planos anuais, você está sempre à frente, aprendendo as novidades e tendências mais atuais no mundo da programação.
A DevMedia tem fidelidade?
Sim, nosso plano tem uma fidelidade de 12 meses, o que garante o tempo ideal para você explorar nosso conteúdo e desenvolver a autonomia necessária para trabalhar com programação.
Como funciona o cancelamento?
Nós garantimos seu direito de cancelamento com reembolso total dentro dos primeiros 7 dias.
Para que você aproveite ao máximo seu investimento, oferecemos suporte personalizado para orientá-lo na utilização da plataforma. Também temos a opção de transferência de titularidade do plano, permitindo que outra pessoa aproveite o restante do seu período de assinatura.
Cadastro
Como excluir meus dados da plataforma?
Para excluir seus dados da plataforma, acesse o link : https://www.devmedia.com.br/fale-conosco/ e abra um protocolo de 'Exclusão de dados'. Nossa equipe processará a solicitação e removerá todas as informações do seu cadastro.
Compartilhe esse conteúdo com um amigo!
Faça login para ganhar recompensas.
Ou
Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.