• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

concretesolutions/ios-recruiting-brazil: Desafio iOS da Concrete

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称:

concretesolutions/ios-recruiting-brazil

开源软件地址:

https://github.com/concretesolutions/ios-recruiting-brazil

开源编程语言:


开源软件介绍:

Concrete iOS Recruit Challenge


Gif

Bem vindo


Obrigado por participar do desafio iOS da Concrete! Estamos muito contentes pelo seu primeiro passo para fazer parte de um time excepcional.

Afinal, o que é esse desafio?


Você deverá criar uma app sobre filmes, usando a API do TheMovieDB. Legal, certo? Para dar uma padronizada e ter um layout minimamente definido anexamos alguns assets que vão te ajudar a desenvolver esse app:

Pense no desafio como uma oportunidade de mostrar todo o seu conhecimento. E faça com calma, você tem uma semana para entregar! Vamos avaliar como você lida com casos de:

  • Consumo de APIs
  • Persistência de dados (Favoritos)
  • Lógicas de filtros e buscas.
  • Estruturação de layout e fluxo de aplicação.

O único pré-requisito é que o código seja feito em Swift, de preferência na versão mais atual. Sinta-se a vontade para:

  • Usar ou não usar bibliotecas
  • Estruturar seu layout com storyboards, xibs ou ViewCode
  • Adotar a arquitetura que você quiser.

Somos especialmente preocupados com qualidade e acreditamos bastante em testes automatizados. Entretanto, sabemos que não é um tópico dominado por todos, por isso aceitamos desafios com todos os perfis e diferentes momentos de experiência e conhecimento técnico. Para posições mais Seniors, porém, damos muito importância para a qualidade do código.

Features ..


Precisa ter:

  • Tela de Splash;
  • Layout em abas, contendo na primeira aba a tela de grid de filmes e na segunda aba a tela de lista de filmes favoritados no app;
  • Tela de grid de filmes trazendo a lista de filmes populares da API.
  • Tratamento de erros e apresentação dos fluxos de exceção: Busca vazia, Error generico, loading;
  • Ao clicar em um filme do grid deve navegar para a tela de detalhe do filme;
  • Tela de Detalhe do filme deve conter ação para favoritar o filme;
  • Tela de Detalhe do filme deve conter gênero do filme por extenso (ex: Action, Horror, etc); Use esse request da API para trazer a lista.
  • Tela de lista de favoritos persistido no app entre sessões;
  • Tela de favoritos deve permitir desfavoritar um filme.

Ganha mais pontos se tiver:

  • Tela de grid com busca local;
  • Scroll Infinito para fazer paginação da API de filmes populares;
  • Célula do Grid de filmes com informação se o filme foi favoritado no app ou não;
  • Tela de filtro com seleção de data de lançamento e gênero. A tela de filtro só é acessível a partir da tela de favoritos;
  • Ao Aplicar o filtro, retornar a tela de favoritos e fazer um filtro local usando as informações selecionadas referentes a data de lançamento e gênero;
  • Testes unitários no projeto;
  • Testes funcionais.
  • Pipeline Automatizado

Exemplos e sugestões


Abaixo podemos ver algumas telas de exemplo de alguns desses fluxos. São apenas sugestões, fique à vontade para modificar como você quiser. Para facilitar o processo, existem assets, app icons, ícones e paleta de cores no repositório. Mas se o seu lado designer falar mais alto, pode nos surpreender!

Fluxo de grid de filmes

Image of Yaktocat

Fluxo com Splash, Tela de Detalhes e tela de lista da favoritos

Image of Yaktocat

Fluxo Opcional de filtro

Image of Yaktocat

Processo de submissão


Depois de implementar a solução, envie um pull request para este repositório. O processo de Pull Request funciona da seguinte maneira:

  1. Faça um fork deste repositório (não clonar direto!);
  2. Faça seu projeto neste fork;
  3. Commit e suba as alterações para o SEU fork;
  4. Pela interface do Github, envie um Pull Request.

Deixe o fork público para facilitar a inspeção do código.

ATENÇÃO

Não tente fazer o PUSH diretamente para ESTE repositório!




鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap