Meu "setup" de desenvolvimento iOS

Bruno Faganello
Code With Coffee
Published in
5 min readApr 9, 2020

Se você está querendo começar com o desenvolvimento iOS, esse artigo é bem recomendado pra você, vou falar sobre o investimento necessário para começar como desenvolvedor iOS

Aplicativos/Plugins

Opa! Estou escrevendo esse artigo pra mostrar alguns aplicativos que eu utilizo no meu dia a dia como Freelancer.

Oh My Zsh

A primeira coisa que eu faço quando eu pego uma maquina nova é instalar o Oh My Zsh. Ele é plugin para o terminal que facilita bastante na produtividade no dia a dia.

Com ele é possível navegar por TAB, tem autocomplete, já vem com atalhos de git e o melhor na minha opinião é que ele se você estiver dentro de uma pasta que é um repositório git ele mostra sua branch atual.

Existem diversos plugin pro Oh My Zsh mas eu gosto do jeito que ele vem, a única coisa que eu muda são as cores.

Utilizando esse plugin, seu terminal vai ficar parecido com isso:

Foi única foto que eu achei sem plugins

Site: https://ohmyz.sh

Temas: https://github.com/ohmyzsh/ohmyzsh/wiki/Themes

Postman

Quando estou trabalhando em um projeto e não me entregam o Swagger para testar a API, acabo utilizando o Postman.

Postman é uma ferramenta que tem como objetivo testar serviços RESTful (Web APIs) por meio do envio de requisições HTTP e da análise do seu retorno

Segue um tutorial bem completo de como utilizar: Tutorial de como utilizar o Postman para documentar uma API

QuickType

Quantas vezes você foi testar um API e viu um JSON gigante? Criar as classes modelos dessa API pode ser um problema mas alguém resolveu essa dor.

Utilizando o QuickType simplesmente pegamos o retorno da API que o Postman nos traz e colamos no QuickType.

Podemos converter o JSON para qualquer uma dessas linguagens:

  • KOTLIN
  • JAVA
  • DART
  • C++
  • RUBY
  • OBJECTIVE-C
  • JSON SCHEMA
  • TYPESCRIPT
  • ELM
  • PYTHON
  • RUST
  • FLOW
  • C#
  • SWIFT
  • JAVASCRIPT
  • GRAPHQL

Agora falando mais especificamente de iOS, ele permite escolher entre classes e structs, se a propriedade vai ser opcional ou não, se ele vai criar enums para algum tipo de padrão que tiver e cria a classe de requisição usando Alamofire ou NSURLSession (Não recomendo essa última rs)

Link: https://quicktype.io

GitKraken

Quando estou trabalhando em projetos sozinho ou com equipes pequenas acabo utilizando o próprio terminal com Oh My Zsh para subir coisas no repositório, entretanto quando o time é grande eu utilizo o GitKraken que é uma interface gráfica para o git (existem outras como Github Desktop e o Sourcetree).

Gosto de utilizar essa ferramenta para olhar o gráfico de branchs do repositório que estou trabalhando.

A UI do Git é gratuita, você pode optar pela versão paga e você ganha o Kanban deles que faz de forma automática PR e outras automações.

Link: https://www.gitkraken.com

Trello

Gosto de trabalhar bastante com Kanban(artigo explicando: https://artia.com/kanban/) e se o projeto que estou trabalhando não me fornece uma ferramenta como o JIRA para colocar minhas atividades, eu acabo criando meu trello no estilo kanban bem basicão mesmo só para ter controle das atividades feitas e os próximos passos do projeto.

Equipamentos

Macbook

Eu trabalho usando um macbook de 2015 i5 dual core com 8GB de ram e 512GB de SSD. No dia a dia de programação ele resolve bem as minhas necessidades, algumas vezes ele "engasga" com o Xcode principalmente se o storyboard tiver muitas telas.

Fazendo outras atividades como responder emails, acessar sites e até mesmo jogar(jogos indies que não precisam de memória de video) eu consigo fazer tranquilamente. Hoje em dia é possível encontrar esse macbook por R$ 5.000,00 que eu acho que é um investimento bom para quem quer começar nessa área.

Meu Macbook x Mac Mini 2018 (i3)

É possível encontrar esses dois equipamentos pelo mesmo preço, particularmente eu prefiro o macbook do que o mac mini pelo fato da portabilidade, de poder trabalhar em um coworking ou até mesmo em um Starbucks.

Existem comparações que mostra o mac mini 2018 sendo superior ao meu modelo de macbook.

Isso é um critério que você deve levar em conta, portabilidade ou um pouco mais de performance.

iPhone

Com relação ao iPhone é super recomendável que você seja um usuário de iPhone enquanto está na área de iOS para poder dar insights para os designers/PO/UX com relação a navegação o que seria bom ou ruim e etc.

Não precisa ter o iPhone mais caro, pode ser um iPhone de entrada.

Outros iDevices

Outros dispositivos acredito que os próprios simuladores conseguem satisfazer 90% dos projetos pois são bem completos. Você só precisar comprar por exemplo um Apple Watch, se for trabalhar com app Saúde, sensores de movimentos e etc. Mas caso seja somente telas com informações, acredito que não é necessário.

Bônus

Quando estou trabalhando de casa utilizo um monitor LG 29" ULTRAWIDE™ PRO GAMER 1MS, pelo fato de super Ultrawide eu consigo deixar por exemplo o Xcode e o Postman aberto lado a lado para comparar possíveis problemas em uma requisição. Utilizo também um mouse e um teclado sem fio no padrão US, então basicamente meu macbook em no meu home office vira uma CPU.

Meu setup

--

--

Bruno Faganello
Code With Coffee

Engenheiro de Software Mobile. Fico constantemente atualizado com relação a tecnologia para que isso possa mudar a vida das pessoas. 💻