Mostrando postagens com marcador MVC. Mostrar todas as postagens
Mostrando postagens com marcador MVC. Mostrar todas as postagens

sexta-feira, 31 de março de 2017

REST API - 31/03/2017



O sistema StLocator tem a proposta de oferecer seus serviços em forma  de API, supondo um eventual crescimento da aplicação e ou integração com outros sistemas que estendam e ou agreguem de alguma forma à solução para restituição de bens perdidos, portanto o nosso servidor utilizará o modelo de arquitetura REST.

Transferência de Estado Representacional, em inglês, Representation State Transfer, ou REST, é um termo datado de 2000 na tese de doutorado de Roy Fielding, um dos principais autores das especificações do protocolo HTTP e co-fundador do projeto Apache Web Server. A própria rede mundial de computadores é um exemplo de aplicação funcionando em REST. Essa tecnologia aproveita o protocolo mais utilizado e seus métodos para realizar transações stateless. Também conhecidos como HTTP verbs, pode-se citar entre os mais comuns: GET, POST, PUT, DELETE.  O paradigma “sem estado” dessas transações de requisição entre cliente e  servidor torna cada um delas únicas, poupando o lado do cliente de tratar comunicação com banco de dados, logs, cache, etc., e da mesma forma o lado servidor não lida com interface, experiência de usuário, logo tal divisão permite liberdade de evolução distinta para os ambientes. A partir desse princípio o modelo de serviço converge com o estrutural da aplicação, que a princípio considerou-se tratar de um MVC, quando na prática acaba se tornando um MVW, Model View Whatever,  o tanto faz é uma bem humorada definição sugerida pela equipe do Angular JS que significa utilizar  o que for mais adequado para aplicação, seja MVC, MVVM ou o MVP. Neste momento utilizaremos o MVC, contudo outras abordagens poderão ser analisadas durante o desenvolvimento.

Nosso servidor REST terá diversos tipos de respostas de acordo com as  requisições clientes, pois disponibilizaremos respostas em JSON, XML, HTML e CSV, o que permite uma integração com aplicações Web e Mobile.

quarta-feira, 29 de março de 2017

Framework PHP - 29/03/2017

Resultado de imagem para codeigniter
O desenvolvimento de um sistema de forma “from scratch”, ou seja do zero, é custosa e requer muita experiência do desenvolvedor e domínio da tecnologia empregada para uma conclusão bem sucedida. Esse é o motivo para a popularidade do uso de frameworks, toolkits, engines, etc., que tornam o processo de construção de um sistema drasticamente mais fácil, por exemplo, em desenvolvimento de jogos, onde há uma enorme gama de ferramentas facilitadoras utilizadas tanto por amadores quanto pela indústria digital. A partir dessa premissa a equipe São Longuinho, optou por utilizar uma framework para a criação do lado servidor da aplicação, à tal escolha pesou dois pontos fundamentais que são a facilidade de uso e ou aprendizado e poder da ferramenta, para tanto foram avaliados diversas frameworks e chegou-se ao Cakephp e CodeIgniter, ambas as duas mais populares e gratuitas. Tal popularidade é resultado do poder de ambas, que são muito bem documentadas, contêm bibliotecas repletas de funcionalidades e facilidades, mas o ponto de desempate foi a facilidade de manipulação e adaptação aos interesses do nosso servidor como descrito no escopo do projeto, uma API Rest. 

A framework escolhida foi o CodeIgniter cuja arquitetura é a MVC (Utilizaremos o MVW, mas trataremos desse tema na próxima postagem), que será utilizado junto com o CRUDgniter para uma implementação do tipo database first e uma extensão para o REST server. Essa decisão nos exonera da árdua tarefa de construir funcionalidades complexas, como as relacionadas à segurança de acesso à diretórios, roteamento, arquivos de configurações, etc., portanto permite que a equipe tenha foco principal em desenvolver o negócio da aplicação.