melhores práticas em webapis para mobile
DESCRIPTION
Veremos metodologias e técnicas seguras, práticas e rápidas para o deploy de WebAPIs para dispositivos mobile. Falaremos sobre Url rewrite, validação de dados, autenticação segura, estratégias de cache e o futuro do MVC. Conheceremos Ferramentas para criação de APIs para focar no código de negócio como o GRS e Respect/REST.TRANSCRIPT
@ramcoelho
Melhores Práticas em WebAPIs para mobile
@ramcoelho
Apresentação
● Graduado em Ciência da Computação● Fundador do grupo PHP-Maranhão● Representante do Maranhão em eventos nacionais● Representante do Maranhão no PHP Brasil Comunidades● Professor de Programação Web● Auditor certificado NBR ISO/IEC 27001:2006● Perito forense digital● CTO da Nexy, empresa de auditoria de segurança e tecnologia
financeira com soluções SaaS em PHP.
@ramcoelho
Mobile Web
Desenvolvimento para Web=
Desenvolvimento Mobile
@ramcoelho
Exemplos API
@ramcoelho
Princípios
@ramcoelho
Métodos
● RESTful Webservices● JSON vs XML● WebApp vs App● OAuth● Comunicação Anyway® vs Otimizada
@ramcoelho
Ferramentas
● Respect Validation (github.com/respect)
//From 1 to 15 non-whitespace alphanumeric characters $validUsername = v::alnum() ->noWhitespace() ->length(1,15);
$validUsername->validate('alganet'); //true
@ramcoelho
Ferramentas
● Respect Validation● Respect Rest (github.com/respect)
use Respect\Rest\Router;
$r3 = new Router;
$r3->get('/users/*/lists/*', function($user, $list) { return "List {$list} from user {$user}";});
@ramcoelho
Ferramentas
● Respect Validation● Respect Rest● Grs (github.com/ramcoelho)
$grs = new Grs();$grs->dispatch();
// http://server/context/Class1/method1/param1/param2.json
@ramcoelho
Ferramentas
● Respect Validation● Respect Rest● Grs (github.com/ramcoelho)
class Class1{
public function method1($params){
return 'Getting ' . $param[1] . ' from ' . $param[0];}
}
@ramcoelho
Ferramentas
● Respect Validation● Respect Rest● Grs● org.json.JSONObject, org.json.JSONTokener● Jackson, GSON
@ramcoelho
Case Veritas
@ramcoelho
Obrigado!
@ramcoelho
Dúvidas
? ??
?
??
?
??
? ?
??