Olá mundo dos programadores, hoje venho apresentar para você a forma como eu costumo organizar meus projetos de desenvolvimento WEB.

Estou trazendo esse conteúdo porque eu nunca assisti um tutorial, uma vídeo aula, e nem li nada a respeito de como devemos organizar as pastas de nossos projetos e qual a logica para desenvolver um projeto um pouco, mais complexo.

Pensando nisso, vou compartilhar com vocês como desenvolvo a maior parte de meus projetos.

Vamos lá!

Sempre quando vou começar a desenvolver qualquer projeto, a primeira coisa que passa pela minha cabeça é quais as tecnologias que vou estar utilizando, porque sempre tento seguir uma logica para cada uma delas.

Nesse exemplo vou supor que eu vá utilizar o PHP, HTML e AJAX para desenvolver o projeto.

Um projeto bem organizado facilita a vida de qualquer programador na hora de dar manutenção e continuar projetos que levaram semanas para ficarem prontos.

Para facilitar a didática vou trazer um print da estrutura básica do meu projeto e depois vou explicar qual a função de cada parte do mesmo.

Nesse projeto eu tenho a seguinte necessidade, desenvolver um painel administrativo, onde o usuário terá que realizar um cadastro e efetuar um login para acessar o painel que esta a segurado por uma conta.

Então quando o usuário acessar o site a página index.php redireciona o mesmo para pasta de entrada, local onde eu desenvolvi a parte que realiza a primeira interação com usuário, solicitando conta e senha para realizar o login, caso o usuário ainda não tenha uma conta o sistema de entra o redireciona para pasta de cadastro onde o mesmo poderá se registrar.

Caso a página de entrada ou a de cadastro identifique que o usuário já está logado, o mesmo é redirecionado automaticamente para a página do painel.

Com isso termino a parte da logica do sistema, agora vamos falar da organização.

Eu separo meus projetos por partes, onde cada parte tem sua configuração e particularidades independente, ou seja, dentro da pasta de entrada terá todas as configurações para o seu bom funcionamento, CSS, AJAX, Imagens e etc, compartilhando apenas as configurações da parte de back-end que organizo dentro da pasta PHP.

Quando trabalhamos com AJAX e PHP, temos sempre a necessidade de apontar o AJAX para uma página PHP que fará toda a magia, pensando nisso eu organizo minha estrutura PHP da seguinte forma

Nessa página percebemos claramente a forma como eu gosto de trabalhar, um arquivo chamado conexão, onde realiza exatamente o que o nome sugere, uma conexão com uma base de dados.

Um arquivo chamado funções é onde eu centralizo todas as magias do sistema, ou seja, o local onde eu crio e concentro todas as funções do sistema, dessa forma tenho um local bem preciso para trabalhar encima, caso eu tenha que alterar alguma parte do sistema.

Juntamente com esses dois arquivos temos duas pastas, uma chamado cadastro, onde eu criarei a chamada das funções de cadastro do sistema, seja elas de cadastro de produtos ou até mesmo cadastro de contas, todas elas ficaram dentro desse pasta para rápida manutenção.

E uma página de login, onde eu criarei o arquivo que chama a função de login no sistema e é apontada pelo AJAX da página de entrar.

Nessa mesma pasta PHP eu também costumo criar a pasta de exclusão, pasta de alteração e busca, dessa forma, sei que sempre que eu tiver que alterar alguma coisa da parte de cadastro, vou direto na pasta cadastro, onde terá uma chamada para cada função, por exemplo, terá um arquivo chamado produto.php, tando ele dentro da pasta cadastro, sei automaticamente que se refere a um cadastro de produto.

Dessa forma eu tenho a seguinte estrutura para um projeto simples.

Conclusão

Com isso, eu gostaria de deixar claro, que existem inúmeras formas de organizar a estrutura de um projeto e a forma que estou apresentando é apenas uma entre tantas outras que existem.

Mas devemos levar sempre em consideração que o que fazemos em um projeto tem que ser auto didático o suficiente para que a próxima pessoa que vier mexer no projeto ou até mesmo nossa pessoa do futuro, consiga entender e continuar exatamente de onde paramos sem dificuldade ou com o minimo de dúvidas possíveis.


Leave a Reply

Your email address will not be published. Required fields are marked *