DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:
 
 

  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da SQL Magazine DIGITAL
ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!

Análise do modelo de dados do WordPress, Joomla, Drupal e Magento - Artigo SQL Magazine 86

Apresentar uma visão geral e análise de características técnicas dos modelos de dados das plataformas de produção e gestão de conteúdo WordPress, Joomla, Drupal e Magento.





SQL Magazine 86

[Artigo disponível no Leitor Digital DevMedia. Clique aqui para acessá-lo]

> Clique aqui para ler todos os artigos da SQL Magazine 86


A popularização da Web como plataforma de publicação de conteúdo é um dos principais recursos para a disseminação e criação de novas ideias, projetos, aplicativos, comércios virtuais e outras maneiras de marcar presença on-line. Em uma época onde muitos acreditam que o conteúdo é o rei e que o meio de transmissão é a própria mensagem transmitida, muito do que se é produzido em diferentes tipos de web sites como blogs, sites institucionais, lojas on-line, aplicativos, portais e outros é suportado por um dos principais pilares tecnológicos da web: as plataformas para geração e publicação de conteúdo.

Impulsionados pelo movimento de software livre, as principais plataformas de geração e publicação de conteúdo, também conhecidas como CMS (Content Management System), vêm ganhando cada vez mais adeptos tanto por meio do catálogo de serviços fornecidos por empresas de hospedagem como por usuários que decidem montar sua própria infraestrutura de hospedagem na web. Dentre as principais características que popularizaram a adoção de CMSs, pode-se citar o modelo de licença, que segue as diretrizes do software livre, a simplicidade de uso tanto para os usuários que navegam no site como para quem cria conteúdo, o gerenciamento e disseminação do conteúdo e a quase infinita possibilidade de customizações através da inserção de componentes e templates fornecidos gratuitamente pela comunidade.

Atualmente existem diversas soluções para gerenciamento de conteúdo disponíveis gratuitamente para quem deseja publicar conteúdo na web. Para simplificar a nomenclatura, estas ferramentas serão referenciadas apenas como CMS no decorrer deste artigo. Os CMSs mais populares são o WordPress, o Joomla, o Drupal e o Magento. Estes softwares assumem a forma de frameworks prontos para serem utilizados após a customização e configuração de alguns aspectos. Os seus principais elementos são as páginas web prontas, o painel administrativo, a segurança de acesso, o editor de conteúdo textual, os arquivos de configuração, as imagens e também um modelo de dados, cuja análise é o principal objetivo deste artigo.

Conhecer o modelo de dados de um CMS é importante em diversas situações, como por exemplo, quando se pretende realizar alguma customização, aperfeiçoar o desempenho, realizar manutenção no banco de dados, migrar a plataforma, garantir que os recursos estão sendo bem utilizados e outras tarefas que suportam o web site construído com CMS. Além disso, conhecer os detalhes técnicos relacionados ao modelo de dados do CMS utilizado pode facilitar a execução de tarefas no dia a dia e também aumentar o nível de experiência e competência dos profissionais envolvidos.

Produção de conteúdo com CMS

Durante os primórdios da popularização da internet até o final da era que ficou conhecida como bolha da internet, período compreendido aproximadamente entre 1995 e 2000, as principais soluções para gerenciamento de conteúdo on-line possuíam um alto custo de utilização total (TCO – Total Cost of Ownership, ver Nota DevMan 1), que cobre tanto licenças como outros aspectos financeiros. Alguns analistas e historiadores acreditam que este alto custo de utilização tornava mais difícil a publicação de conteúdo na web e restringia esta tarefa para apenas aqueles que possuíam conhecimento técnico ou tinham recursos para utilizar um dos CMSs proprietários disponíveis na época.
Após o período da bolha da internet alguns projetos de CMS baseados nas ideias de software livre começaram a surgir. Estes projetos começaram a ganhar popularidade, pois uma vez que sejam instalados e configurados eles permitem que pessoas sem grande conhecimento técnico possam começar a publicar conteúdo. Este período foi caracterizado pelo surgimento e popularização de diversos blogs e também de empresas que prestavam serviços de hospedagem de blogs gratuitamente ou por uma pequena quantia.

Analisando o que é um CMS mais a fundo, pode-se perceber que ele é um aplicativo web relativamente simples. O conceito principal é fornecer uma plataforma que permita uma boa customização do layout da página web e que seja fácil inserir o conteúdo que será apresentado para os usuários que visitam o site. A seguir detalharemos tecnicamente como um CMS atende a estes dois objetivos.

A customização de layout é um dos principais atrativos para quem desenvolve para web, pois o CMS permite que as páginas a serem visualizadas pelos usuários do site tenham praticamente qualquer layout ou diagramação. Isso é realizado da seguinte forma: o CMS possui um layout padrão com determinadas áreas pré-definidas na página. Estas áreas contêm código fonte que vai procurar no banco de dados o conteúdo correto a ser colocado na área da página que será retornada para o usuário. Para que o novo layout possa ser utilizado no CMS basta que ele contenha estas áreas pré-definidas. Um layout com estas áreas (e com os arquivos HTML, CSS, imagens e outros) pronto para ser utilizado por um CMS recebe o nome de template. Há, inclusive, diversos repositórios na web com os mais variados templates criados pela comunidade e prontos para serem utilizados sem custo adicional. Além de templates para layouts de sites, cada CMS também conta com componentes criados e disponibilizados gratuitamente pela comunidade que estendem as funcionalidades do CMS. Estes componentes são conhecidos como extensões, plug-ins e add-ons, e são encontrados no próprio site oficial do CMS.

Nota-se que o conteúdo dinâmico, e também algumas configurações do próprio CMS, inicialmente eram armazenadas em arquivos texto. Posteriormente adotou-se um banco de dados para o armazenamento, o que garantiu acesso dinâmico, rápido e adequado para o gerenciamento de dados de conteúdo e para as configurações do CMS.

A produção de conteúdo em si é fornecida por uma área administrativa do CMS que é acessada por meio de um login. Este conteúdo pode variar, mas geralmente se baseia em texto ou imagens inseridas através de um editor com diversos recursos de formatação de texto (negrito, alinhamento, inserção de links, etc.). Para os CMSs que suportam recursos de comércio eletrônico, o conteúdo assume a forma de produtos, categorias, formas de pagamento, preços e outros elementos comuns de uma loja virtual. De qualquer maneira, a simplificação e facilidade da inserção de conteúdo é a chave para que usuários não técnicos possam não apenas publicar conteúdo na web, mas também gerenciar este conteúdo e interagir com os usuários por meio da resposta de comentários e outras formas de diálogo com o visitante do site.

Tanto o conteúdo inserido pelos administradores do site quanto as configurações do CMS e as interações dos usuários são gravadas nas tabelas do modelo de dados do CMS. Há também outros tipos de informação armazenadas no banco de dados, tais como imagens utilizadas nas propagandas do site (banners), informações de acesso, dados de compra e cadastros que tornam o modelo de dados mais complexo e extenso."

A exibição deste artigo foi interrompida.

  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da SQL Magazine DIGITAL
ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!


Mauro Pichiliani
Mauro Pichiliani é bacharel em Ciência da Computação, Mestre e doutorando em computação pelo ITA (Instituto Tecnológico de Aeronáutica). Trabalha há mais de 10 anos utilizando diversos bancos de dados e ferramentas de programação. Pode ser contatato no twitter como @pichiliani e no e-mail pichiliani...
O que você achou deste post?

    2 COMENTÁRIOS

[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.



Geo Santos
onde consigo os DER ultilizados no artigo
[há +1 ano] - Responder

 

Devmedia - Equipe De Moderacao
O arquivo já se encontra disponível no post da revista: http://www.devmedia.com.br/articles/viewcomp.asp?comp=20397 Atenciosamente, Equipe Devmedia.
[há +1 ano] - Responder
 
Cursos relacionados
Publicidade
[Fechar]

Você precisa estar logado para dar um feedback.

Clique aqui para efetuar o login
[Fechar]


Este post está fechado. Saiba mais sobre a assinatura MVP!
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2013 - Todos os Direitos Reservados a web-03