0 Compartilhamentos 248 Views

Como aproveitar suas classes do Objective-C no Swift e vice-versa

A Apple prometeu continuar dando suporte ao Objective-C no iOS 8. Mas todos nós sabemos que a grande maioria dos desenvolvedores vai preferir trocar para o Swift, a nova linguagem da Apple. Ela é mais rápida, consome menos recursos, é mais fácil de desenvolver e tem um longo futuro pela frente na plataforma.

Mas, se você usou Objective-C por anos, pode ser um pouco difícil migrar de linguagem. Principalmente se você já tem um projeto no meio do caminho.

Felizmente, é possível aproveitar suas classes criadas no Objective-C no Swift. E vice-versa. Vamos aprender como.

A própria Apple  tem uma boa documentação sobre o tema . Então, se você tem uma classe existente que gostaria de usar, execute o passo 2 e então pule direto para o passo 5. Em alguns casos, você precisará adicionar explicitamente um arquivo antigo do Objective-C:

1: Adicione uma Implementação do Objective-C (.m)

Adicione um arquivo .m à sua classe, e nomeie como CustomObject.m

2: Adicione um Bridging Header

Ao adicionar seu arquivo .m, você provavelmente verá uma tela similar à imagem abaixo. Clique em Yes:

objective-c-bridging

Se você não passar por esta tela ou acidentalmente deletar seu bridging header, adicone um novo arquivo .h ao seu projeto e nomeio-o como <#SeuNomedeProjeto>-Bridging-Header.h

3: Adicione um Objective-C Header (.h)

Adicione outro arquivo .h e nomeio-o como CustomObject.h

4: Monte sua Classe Objective-C

Em CustomObject.h:

Em CustomObject.m:

5: Adicione a Classe ao Bridging-Header

Em SeuNomedeProjeto-Bridging-Header.h:

6: Use Seu Objeto

Em SeuArquivoSwift.swift:

Não há a necessidade de importar explicitamente, é para isso que server o bridging header.

Usando Classes do Swift no Objective-C

E o caminho inverso? Mais fácil ainda, basta seguir os seguintes passos:

1: Crie uma Nova Classe no Swift

Adicione um arquivo .swift ao seu projeto e nomeio-o como MeuObjetoSwift.swift

Em MeuObjetoSwift.swift:

2: Importe Arquivos Swift para uma Classe de Objective-C

Em MinhaClasse.m:

O arquivo <#NomedoProjeto#>-Swift.h já deve ter sido criado automaticamente em seu projeto, mesmo que você não esteja visualizando ele.

3: Use Sua Classe

Observação: Neste estágio inicial de suporte à linguagem, é possível que o CodeCompletion não se comporte adequadamente. Rode uma montagem rápida com CMD + r para ajudar o Swift a encontrar o código Objective-C e vice-versa.

Carregando...

Você pode se interessar

Como criar um “modo noturno” para seu site
Dicas
3 visualizações
Dicas
3 visualizações

Como criar um “modo noturno” para seu site

Carlos L. A. da Silva - 27 de maio de 2020

Três linhas de código permitem que sua página web troque de estilo em dispositivos com opção habilitada.

Você está aprendendo JavaScript errado
Artigos
5 visualizações
Artigos
5 visualizações

Você está aprendendo JavaScript errado

Carlos L. A. da Silva - 25 de maio de 2020

O que esse desenvolvedor diria para si mesmo mais jovem, quando ainda estava estudando a linguagem.

Promoções de Jogos do Final de Semana (22/05)
Notícias
16 visualizações
Notícias
16 visualizações

Promoções de Jogos do Final de Semana (22/05)

Carlos L. A. da Silva - 22 de maio de 2020

Confira as melhores ofertas de jogos de PC para o final de semana.

Deixe um Comentário

Your email address will not be published.

Mais publicações

A origem do Zoom
Artigos
16 visualizações
16 visualizações

A origem do Zoom

Carlos L. A. da Silva - 19 de maio de 2020
Promoções de Jogos do Final de Semana (15/05)
Notícias
26 visualizações
26 visualizações

Promoções de Jogos do Final de Semana (15/05)

Carlos L. A. da Silva - 15 de maio de 2020
Como apagar a pasta Removable Storage Devices da Área de Trabalho
Dicas
17 visualizações
17 visualizações