Last active
August 29, 2015 14:11
-
-
Save itumoraes/cfd602154c1cd56cddf5 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Para esse desafio vamos partir de algumas premissas: | |
- Nosso sistema tem o back-end completamente desplugado do front-end e os | |
dois se relacionam por meio de serviços REST | |
- No front-end temos várias telas de cadastro | |
- Todas as definições das telas estão armazenadas no banco de dados e são | |
entregues ao front-end por um serviço que devolve um JSON que descreve como | |
o formulário deve ser montado. | |
Definição da API | |
Como obter o layout da tela | |
GET : screenLayouts/<screenName> | |
Exemplo | |
GET : screenLayouts/users | |
Como cadastrar novos usuário | |
POST : user | |
body : JSON com os dados do usuário | |
Retorna o layout da tela de usuários | |
{ | |
sections:[{ | |
description: 'Dados de autenticação', | |
fields: [{ | |
name: 'login', | |
mandatory: true, | |
type: 'text' | |
},{ | |
name: 'password', | |
mandatory: true, | |
type: 'password' | |
},{ | |
name: 'expirationDate', | |
mandatory: true, | |
type: 'date' | |
},{ | |
name: 'enabled', | |
mandatory: false, | |
type: 'checkbox' | |
}] | |
},{ | |
description: 'Dados de contato', | |
fields: [{ | |
name: 'rua', | |
mandatory: false, | |
type: 'text' | |
},{ | |
name: 'complemento', | |
mandatory: false, | |
type: 'text' | |
},{ | |
name: 'bairro', | |
mandatory: false, | |
type: 'text' | |
},{ | |
name: 'telefone', | |
mandatory: false, | |
type: 'tel' | |
}] | |
},{ | |
description: '', | |
fields: [{ | |
name: 'submit', | |
type: 'button' | |
}] | |
}] | |
} | |
- Sua missão é criar um mini framework, que tenha como dependência no máximo | |
o jQuery, mas de preferência nenhuma, que solicite a tela de usuários, interprete o JSON | |
retornado e monte um HTML com ele, depois colete dos dados do formulário e submeta de | |
volta para o servidor. | |
- Não é preciso fazer nenhum serviço para receber esse post | |
- Códigos que não funcionem serão desconsiderados | |
- Serão analisados a aderência da implementação com a necessidade exposta e a | |
qualidade do código |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment