gototopgototop
 

Curso de Joomla em várias modalidades só aqui no Joomla Brasília

  • aumentar tamanho texto 
  • diminuir tamanho texto 
  • layout default 
  • layout default daltonismo 
  • layout default contraste
Home Tutoriais | Criando uma extensão: Componente (parte 1)

Criando uma extensão: Componente (parte 1)

E-mail Imprimir PDF

Continuando a série de artigos, técnicos, sobre criação de extensões para Joomla, iremos abordar a criação de um componente. No caso, um livro de visitas. O artigo será dividido em duas partes:

  1. Preparação do ambiente; e
  2. Criação do componente.

Parte 1 - Preparação do ambiente

O controle de código fonte (CCF) deve ser uma das tecnologias amplamente utilizadas principalmente pelos desenvolvedores de software. Infelizmente, muitas pessoas não compreendem as vantagens do CCF, no  desenvolvimento de aplicações e  muitas vezes não procuram a sua utilização. Portanto, resta respeitar essa escolha.

O controle de código fonte, seria basicamente, um arquivo CCS de arquivos de código fonte, registrando todas as mudanças feitas em cada arquivo. As alterações salvas em um arquivo podem ser consultadas mais tarde e, se necessário, a versão mais antiga pode ser restaurada.

Um dos mais populares programas de controle ou revisão CCS é Subversion (SVN). SVN é um tipo de  servidor abrangente do tipo servidor-cliente que dispõe de rede local e controle baseado em revisão de todos os tipos de arquivos desenvolvidos. Diversos desenvolvedores podem trabalhar no mesmo projeto, ao mesmo tempo.
 
O sistema processa todas as mudanças, fornecendo uma interface para o exame de conflitos e escolhendo resoluções para esses conflitos.
 
Aqui está uma série de problemas comuns que você pode encontrar ao desenvolver uma aplicação SVN, com vários desenvolvedores trabalhando ao mesmo tempo e como resolvê-los:
 
1) Muitas alterações foram feitas para uma nova versão, quando você descobre que uma importante característica já não funciona e você não consegue perceber o porquê.

  • Com o SVN, você pode aplicar uma retrospectiva sobre o código fonte e ver quais alterações foram feitas para uma seção de código. Se necessário, você pode recriar o projeto baseado na última versão do código fonte e essa nova execução, através do monitoramento e depuração, irá determinar a diferença entre as versões.

 
2) Se a sua máquina estragar e você não tiver um backup recente.

  • Como o SVN é baseado em servidor, é comum rodar a aplicação em outra máquina. Trocar o arquivo atual é simples e basta um clique com o botão direito do mouse, sobre o arquivo ou pasta e, em seguida, ativar o "check in" para armazenar a mudança de recurso. Isto é muito conveniente para fazer backups.

 
3) Várias pessoas estão trabalhando no mesmo projeto, e elas têm uma maneira de coordenar o trabalho e as mudanças.

  • Aplicações como o SVN nasceram para atender a necessidade de desenvolvedores trabalharem em um mesmo projeto, em diferentes tempos e lugares, mas deve-se ter uma maneira coerente de combinar mudanças sem prejudicar o projeto.

 
4) Uma funcionalidade que foi removida da aplicação á  quatro meses é necessária novamente.

  • Você não tem que procurar através de backups do sistema de arquivo. Simplesmente acesse a versão por nome ou data, até encontrar a  última alteração de código fonte que incluiu a funcionalidade desejada e a mesma poderá ser recuperada rápido e facilmente.

 
5) A revisão desta versão trouxe melhoras em rotinas, então um programador que pretende refazer qualquer rotina poderá recuperar a aplicação de forma simples e indolor, mesmo que tenha sido feito em uma versão antiga do SCC.
 
6) A empresa está desenvolvendo uma nova versão de um aplicativo que requer mudanças drásticas, mas a versão mais antiga ainda deve ser apoiada com atualizações e correções de bugs.

  • SVN elegantemente pode gerir aquilo que é conhecido como uma "mesa", para que a nova versão possa ser criada, deixando a versão antiga em ambiente local para que o desenvolvimento seja continuado.

 
Instalando SVN
 

O sistema pode ser instalado de várias maneiras diferentes. Se você prefere uma interface de linha de comando, você pode instalar o SVN após o download a partir do seguinte URL: http://subversion.tigris.org
 
Se você prefere uma instalação do tipo next -> next -> finish existem várias opções e eu particularmente recomendo o TortoiseSVN.
 
TortoiseSVN - O mais popular Sistema SVN para o sistema operacional Windows. TortoiseSVN (http://tortoisesvn.tigris.org) integra-se com a interface do Explorer de modo a que todas as funções estão disponíveis diretamente no arquivo / pasta bastando um clique com o botão direito do mouse no menu contexto do sistema operacional. Para fazer o download do TortoiseSVN, clique aqui.

Após baixar o programa basta seguir o procedimento padrão de instalação de qualquer programa para windows.

Uma vez terminada a instalação, crie um diretório e nomeie como SVN_Repository. Dentro do diretório, clique com o botão direito do mouse  e selecione TortoiseSVN  -> Criar repositório aqui. Em poucos segundos você receberá a mensagem de repositório criado com sucesso.

 

Instalando o Eclipse

Eclipse é um sistema de desenvolvimento profissional originalmente criado pela IBM antes de ser transferido para a comunidade de fonte aberta. Eclipse é uma IDE completa com suporte a desenvolvimento PHP. A IDE é baseada em projetos, assim todos os arquivos de um projeto podem ser coordenados.

Existe um plug-in para desenvolvimento no eclipse chamado subclipse. Ele se integra sem problemas ao controlador de versão SVN permitindo um total controle do ambiente de desenvolvimento. Com um simples clique no botão direito do mouse  pode-se checar os arquivos do seu projeto.

Ao invés de fazer o download do Eclipse e de todos os plug-ins necessários, é melhor baixar a distribuição para PHP do EasyEclipse, instalando desta forma, todos os plug-ins necessários para desenvolver a aplicação em PHP. No website do EasyEclipse você encontrará instaladores para Windows, Mac e GNU/Linux.

Para baixar a distribuição do Easyeclipse para PHP, clique aqui.

Ocorrendo tudo bem na instalação você deve ver uma tela parecida com a abaixo quando clicar no ícone de execução do Easyeclipse.

Figura 1 - Easyeclipse
tela inicial easyeclipse

No eclipse o ambiente de desenvolvimento é chamado de bastidor. O bastidor principal é a janela que aparece na figura abaixo e sua configuração é determinada pela atual perspectiva. Uma perspectiva de todos os recursos disponíveis é mostrada em janelas. No canto direito superior da janela, você pode ver as perspectivas da barra de atalho que permite alterar entre as perspectivas atuais, assim como a abertura de outros.

A barra de título mostra a perspectiva e os recursos que estão sendo usados atualmente.  

Figura 2 - Bastidor
bastidor principal

Você pode criar um novo projeto a partir de uma variedade de modelos (tais como java, páginas estáticas, php, xml e assim por adiante), que incluem base de todos os modelos que atender ao tipo de projeto que está sendo criado. O modelo que será utilizado para o desenvolvimento de um componente do Joomla será um projeto PHP.

Antes de criar um novo projeto, é importante lembrar que todos os arquivos devem possuir o código de segurança (defined('_JEXEC') or die ('Restricted access');) que impede a execução direta do mesmo fora do Joomla. Será necessário alterar a forma padrão dos arquivos PHP do Easyeclipse e para tal você deverá fazer o seguinte:

Figura 3 - Editando as configurações do arquivo php
editando o php

1) Clique em window -> preferences e expanda o nó PHP até chegar ao ítem templates;
2) Na janela a direita escolha New PHP files e clique no botão Edit;
3) Insira o código de segurança após os comentários do arquivo que ficam antes da tag (?>); e
4) Salve.

Figura 4 - Novas configurações do arquivo PHP
configurações do PHP ok

Artigo traduzido e adaptado por Júlio Coutinho. O original, está  publicado no capítulo 6 do livro Professional Joomla - Programador para Programador, de Dan Rahmel.
  divulgue o artigo no orkut
Voltar

Joomla! Brasilia é um domínio, sem afiliação ou ligação com o projeto Joomla! O nome e marca Joomla! pertencem a Open Source Matters!