Article image
Gustavo Silva
Gustavo Silva29/04/2025 21:15
Compartilhe

Construindo um Framework PHP MVC: Apresentando o StruktPHP

    Introdução

    Ao longo da minha jornada como desenvolvedor, percebi o quão valioso é entender e até criar suas próprias ferramentas de desenvolvimento. Uma dessas ferramentas que decidi foi o StruktPHP, um framework baseado no padrão MVC (Model-View-Controller) que visa simplificar o desenvolvimento de aplicações em PHP.

    Neste artigo, vou compartilhar minha experiência ao desenvolver esse projeto, explicar o que é o StruktPHP e como você pode utilizá-lo como base para seus próprios projetos.

    O que é o StruktPHP?

    O StruktPHP é um framework que comecei a construir com o objetivo de aprender mais sobre arquitetura de software e sobre como funcionam os frameworks PHP, principalmente os que seguem o padrão MVC (Larave, CodeIgniter, Laminas, etc). O objetivo principal do StruktPHP é fornecer uma estrutura simples e flexível para criar aplicações web com PHP, sem complicações desnecessárias.

    Apesar de ser um projeto em estágio inicial, o StruktPHP já oferece funcionalidades básicas que qualquer projeto PHP necessita, como roteamento de URLs, conexão com banco de dados e organização das camadas de controle, modelo e visão de forma eficiente.

    Por que Criar um Framework?

    Desenvolver um framework próprio é uma excelente forma de entender profundamente o que acontece por trás de frameworks populares como Laravel, Symfony e CodeIgniter. Criando o StruktPHP, pude:

    • Compreender como os frameworks gerenciam o fluxo de dados entre as camadas da aplicação.
    • Melhorar minhas habilidades em design de software e arquitetura.
    • Desenvolver uma estrutura que atende às minhas necessidades específicas, ao mesmo tempo em que posso compartilhar com a comunidade.

    Além disso, é uma oportunidade de colocar em prática conceitos que aprendi ao longo dos meus estudos em programação e computação.

    Funcionalidades do StruktPHP

    Embora ainda seja simples, o StruktPHP oferece funcionalidades essenciais para quem deseja começar a trabalhar com projetos em PHP. Entre elas estão:

    1. Estrutura MVC: O framework segue a arquitetura MVC, separando as responsabilidades de Model, View e Controller.
    2. Roteamento e URLs: Permite definir rotas de maneira simples e eficiente, facilitando a organização do código.
    3. Conexão com Banco de Dados: Uma integração inicial com bancos de dados MySQL, utilizando PDO para consultas seguras.
    4. Autoloading: Utiliza o autoloading para carregar automaticamente as classes do projeto.

    Como Usar o StruktPHP

    Se você deseja testar o StruktPHP e utilizá-lo como base para seu próprio projeto, basta acessar o repositório no GitHub e seguir as instruções de instalação:

    🔗StruktPHP - GitHub

    No repositório, você encontrará toda a documentação e exemplos de como estruturar seu projeto, utilizando o StruktPHP. É importante notar que o framework ainda está em desenvolvimento, mas já oferece uma boa base para quem deseja aprender mais sobre a criação de frameworks PHP.

    Conclusão

    Criar o StruktPHP foi uma experiência valiosa que me permitiu aprender muito sobre o desenvolvinento de software e a criação de frameworks. Eu recomendo que todos os estudantes de programação se desafiem a criar suas próprias ferramentas, pois isso pode acelerar o aprendizado e proporcionar uma compreensão mais profunda do que acontece nos bastidores.

    Se você está começando a estudar PHP e quer entender melhor como um framework funciona, ou se já tem alguma experiência e quer algo simples para projetos menores, o SturktPHP pode ser uma excelente base para seus próprios desafios.

    Espero que esse projeto ajude outros estudantes como eu a aprenderem mais sobre o desenvolvimento de software de uma maneira prática e direta.

    Compartilhe
    Comentários (2)
    Gustavo Silva
    Gustavo Silva - 30/04/2025 19:51

    Os principais desafios foram como organizar as pastas da aplicação de uma forma que ficasse simples e compreensível e proporcionasse a evolução do framewok. E também adequar o cíodigo às melhores práticas do PHP, como as PSRs, ainda estou me acostumando a isso. Como, por exemplo, começar a usar Composer. E também deixá-lo desacoplado de ferramentas de servidor como XAMPP. Ainda está sendo um desafio.

    DIO Community
    DIO Community - 30/04/2025 15:39

    Muito interessante o seu artigo, Gustavo! A criação do StruktPHP não só reflete sua dedicação em aprender sobre a arquitetura de software, mas também mostra a importância de entender como os frameworks populares realmente funcionam. É inspirador ver como você utilizou o processo de construção do seu próprio framework para fortalecer suas habilidades e, ao mesmo tempo, contribuir com a comunidade.

    Desenvolver ferramentas próprias, como o StruktPHP, é uma excelente forma de ganhar uma compreensão profunda do desenvolvimento e também de se destacar no mercado. O que você acha que foi o maior desafio durante o desenvolvimento do StruktPHP e como você superou esse obstáculo?