Este é um post disponível para assinantes MVPEste post também está disponível para assinantes da Engenharia de Software Magazine
ou para quem possui Créditos DevMedia. Clique aqui para saber mais!
ou para quem possui Créditos DevMedia. Clique aqui para saber mais!
Aplicação web usando arquitetura MVC - Revista Engenharia de Software Magazine 48
Este artigo apresenta a experiência do desenvolvimento de uma aplicação web de compra coletiva usando a arquitetura MVC e explorando os recursos do framework CodeIgniter.
Engenharia de Software Magazine 48
[Artigo disponível no Leitor Digital DevMedia. Clique aqui para acessá-lo]
> Clique aqui para ler todos os artigos da Engenharia de Software Magazine 48
[Artigo disponível no Leitor Digital DevMedia. Clique aqui para acessá-lo]
> Clique aqui para ler todos os artigos da Engenharia de Software Magazine 48
Por: Thiago Barbosa Couto e Antonio Mendes da Silva Filho
Software é um artefato sujeito a mudanças e manutenção de software deve ser preocupação contínua do engenheiro de software. Ao longo das duas últimas décadas, diversos esforços têm sido observados visando facilitar o desenvolvimento de software. Como exemplo disso, destacam-se as contribuições de padrões de projeto, tais como observer, composite e strategy. Principalmente no decorrer da última década, houve crescimento no uso de padrões de projetos na engenharia de software. Isso ocorreu, em parte, devido ao crescimento da complexidade dos sistemas e a necessidade de reutilização do software.
Os padrões de projetos possibilitam que classes de sistemas orientados a objetos sejam flexíveis, possibilitando ao projetista de software reutilizar componentes e/ou técnicas que já tiveram êxito em outros sistemas, como também ajudam os desenvolvedores a buscar minimizar erros cometidos em projetos anteriores.
Nota-se que esses padrões possuem um relacionamento direto com uma arquitetura que atende a necessidades da programação orientada a objeto, denominada de MVC (Model-View-Controller). O componente model dessa arquitetura é o objeto que interage diretamente com o banco de dados, enquanto que view é o objeto que representa o conteúdo exibido na tela, e controller define a maneira como a interface de usuário reage com a camada de dados. Isso possibilita um desenvolvimento em paralelo já que os três componentes são independentes, além de facilitar a manutenção.
Adicionalmente, o uso difundido do paradigma de orientação a objetos e propostas de novas arquiteturas de software tem fomentado o surgimento de frameworks que suportam um conjunto de API’s e bibliotecas, visando facilitar a reutilização e a manutenção dos códigos. Hoje, vários deles estão disponíveis para diferentes linguagens de programação. Por exemplo, na linguagem PHP existem diversos frameworks como o Cake, CodeIgniter e o Zend.
Os frameworks oferecem facilidade de desenvolvimento e há expectativa que seu uso possa propiciar minimização do esforço aos programadores, o que pode resultar em suporte à produtividade. Nesse sentido, este artigo apresenta uso da arquitetura MVC, avaliando suas vantagens e limitações no desenvolvimento de uma aplicação web de compra coletiva. Para o desenvolvimento da aplicação foi utilizado o framework CodeIgniter e a arquitetura MVC, discutida a seguir.
Arquitetura MVC
O aumento da complexidade e tamanho do software pode causar dificuldades na manutenção do software. O crescimento contínuo dos sistemas de software requer que seu desenvolvimento seja feito de maneira planejada e componentizada, de modo a tornar os sistemas mais flexíveis, facilitando a manutenção e seu desenvolvimento. Por exemplo, com o uso da arquitetura em camadas, é possível separar os dados de persistência, da lógica do sistema e da interface do usuário, facilitando o desenvolvimento e a manutenção.
A arquitetura MVC (Model-View-Controller) foi criada nos anos 80 na Xerox Parc, tendo como princípio a separação entre a camada de persistência da camada de apresentação do usuário. Para isso, foi criada uma arquitetura com três camadas, onde cada camada é representada por um objeto. O modelo é o objeto de persistência, a visão é o objeto de interface com o usuário e o controlador define como as interfaces do usuário irão reagir com o sistema. Esses objetos podem se comunicar entre si. A arquitetura MVC é atualmente utilizada em diversos frameworks de várias linguagens como JAVA, PHP e .NET devido às vantagens que oferece, tais como reuso do código e maior facilidade de manutenção do software.
"
Este é um post disponível para assinantes MVP
Software é um artefato sujeito a mudanças e manutenção de software deve ser preocupação contínua do engenheiro de software. Ao longo das duas últimas décadas, diversos esforços têm sido observados visando facilitar o desenvolvimento de software. Como exemplo disso, destacam-se as contribuições de padrões de projeto, tais como observer, composite e strategy. Principalmente no decorrer da última década, houve crescimento no uso de padrões de projetos na engenharia de software. Isso ocorreu, em parte, devido ao crescimento da complexidade dos sistemas e a necessidade de reutilização do software.
Os padrões de projetos possibilitam que classes de sistemas orientados a objetos sejam flexíveis, possibilitando ao projetista de software reutilizar componentes e/ou técnicas que já tiveram êxito em outros sistemas, como também ajudam os desenvolvedores a buscar minimizar erros cometidos em projetos anteriores.
Nota-se que esses padrões possuem um relacionamento direto com uma arquitetura que atende a necessidades da programação orientada a objeto, denominada de MVC (Model-View-Controller). O componente model dessa arquitetura é o objeto que interage diretamente com o banco de dados, enquanto que view é o objeto que representa o conteúdo exibido na tela, e controller define a maneira como a interface de usuário reage com a camada de dados. Isso possibilita um desenvolvimento em paralelo já que os três componentes são independentes, além de facilitar a manutenção.
Adicionalmente, o uso difundido do paradigma de orientação a objetos e propostas de novas arquiteturas de software tem fomentado o surgimento de frameworks que suportam um conjunto de API’s e bibliotecas, visando facilitar a reutilização e a manutenção dos códigos. Hoje, vários deles estão disponíveis para diferentes linguagens de programação. Por exemplo, na linguagem PHP existem diversos frameworks como o Cake, CodeIgniter e o Zend.
Os frameworks oferecem facilidade de desenvolvimento e há expectativa que seu uso possa propiciar minimização do esforço aos programadores, o que pode resultar em suporte à produtividade. Nesse sentido, este artigo apresenta uso da arquitetura MVC, avaliando suas vantagens e limitações no desenvolvimento de uma aplicação web de compra coletiva. Para o desenvolvimento da aplicação foi utilizado o framework CodeIgniter e a arquitetura MVC, discutida a seguir.
Arquitetura MVC
O aumento da complexidade e tamanho do software pode causar dificuldades na manutenção do software. O crescimento contínuo dos sistemas de software requer que seu desenvolvimento seja feito de maneira planejada e componentizada, de modo a tornar os sistemas mais flexíveis, facilitando a manutenção e seu desenvolvimento. Por exemplo, com o uso da arquitetura em camadas, é possível separar os dados de persistência, da lógica do sistema e da interface do usuário, facilitando o desenvolvimento e a manutenção.
A arquitetura MVC (Model-View-Controller) foi criada nos anos 80 na Xerox Parc, tendo como princípio a separação entre a camada de persistência da camada de apresentação do usuário. Para isso, foi criada uma arquitetura com três camadas, onde cada camada é representada por um objeto. O modelo é o objeto de persistência, a visão é o objeto de interface com o usuário e o controlador define como as interfaces do usuário irão reagir com o sistema. Esses objetos podem se comunicar entre si. A arquitetura MVC é atualmente utilizada em diversos frameworks de várias linguagens como JAVA, PHP e .NET devido às vantagens que oferece, tais como reuso do código e maior facilidade de manutenção do software.
"
A exibição deste artigo foi interrompida.
Este é um post disponível para assinantes MVPEste post também está disponível para assinantes da Engenharia de Software Magazine
ou para quem possui Créditos DevMedia. Clique aqui para saber mais!
ou para quem possui Créditos DevMedia. Clique aqui para saber mais!
O que você achou deste post?
Cursos relacionados
Publicidade



