Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Fernando Rotermund

Criando um framework PHP reutilizando Libs conhecidas

Recommended Posts

Srs, em minha busca de um framework em PHP eu me deparei com muitas barreiras:

 

- Host compartilhado com versão do PHP que o framework não suporta;
- Frameworks lentos;
- Sistemas de rotas ou ORMs lentos;
- OOP indigestíveis e feias;

 

Testei o Laravel em um host compartilhado que não me agradou (lento). Meus clientes não estão preparados para pagar um Cloud. E agora na versão 5.1 do Laravel são poucos hots com o PHP 5.5.

 

O CodeIgniter apesar de ser rápido, sua OOP é um pouco indigesta e feia, odeio como ele instância as Models e aqueles underlines nos nomes dos métodos e classes

 

O Yii2 eu ainda estou testando, mas me incomoda um pouco aquele monte de Arrays para configurar algo e sua estrutura de diretórios é bem chata, a do Laravel é melhor e mais direta. Ainda não sei se vale a pena utilizar Yii.

Minha escolha por um framework virou uma novela pois eu gostaria de um que fosse gostoso de programar como o Laravel, tivesse a velocidade do CodeIgniter.

 

Como conheço o PHP desta versão 3, sempre criei meus frameworks, mas hoje eu gostaria de algo que o mercado absorvesse melhor, e criar mais um framework com tantos por ai, seria como reinventar a roda.

 

Foi ai que tive a ideia de simplesmente pegar códigos de bibliotecas conhecidas (e são muuuitas) e criar um framework ao meu gosto, reutilizando Libs de Rotas, templates, cache, acesso a dados (ORM), validação e etc. Com isso as empresas para qual eu presto serviço teriam algo mais solido e de fácil manutenção (já que as libs são testadas e possuem manual de utilização, tipo o Slim com o ORM Doctrine ou o Idiorm).

 

Gostaria de saber se alguém já fez isso? E opiniões são bem vindas?

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

VPS está aí. Digital Ocean, AWS, Rackspace... tudo barato e de qualidade. Configura do jeito que quiser, com a versão do PHP que bem entender

 

Se quiser flexibilidade, um host compartilhado não é uma boa opção. Eles se interessam a atender à maioria, que só precisa de um PHP simples (tem host aí usando PHP 5.2 ainda) e um mysql qualquer.

 

Fazer o próprio framework é bom pra aprender bem PHP. Mas a longo prazo ele pode ficar obsoleto, pois só terá você para manter e atualizar o projeto. Para sistemas grandes, acho melhor usar um framework que tenha a contribuição da comunidade.

O Laravel 5.1 é LTS. Você ficará tempos sem se preocupar com major updates

Compartilhar este post


Link para o post
Compartilhar em outros sites

VPS está aí. Digital Ocean, AWS, Rackspace... tudo barato e de qualidade. Configura do jeito que quiser, com a versão do PHP que bem entender

 

Se quiser flexibilidade, um host compartilhado não é uma boa opção. Eles se interessam a atender à maioria, que só precisa de um PHP simples (tem host aí usando PHP 5.2 ainda) e um mysql qualquer.

 

Fazer o próprio framework é bom pra aprender bem PHP. Mas a longo prazo ele pode ficar obsoleto, pois só terá você para manter e atualizar o projeto. Para sistemas grandes, acho melhor usar um framework que tenha a contribuição da comunidade.

O Laravel 5.1 é LTS. Você ficará tempos sem se preocupar com major updates

 

Como eu disse, meus clientes estão em compartilhados e para eles isso já é o suficiente, os projetos são pequenos.

 

Usar uma VPS exigiria que eles me pagasem um R$ mensam para que eu gerencie toda infra.

 

Eu citei que não estou fazendo meu framework do zero, eu estou utilizando Libs conhecidas e quando elas forem subindo de versão minha framework estaria sempre atualizada tabem.

 

Eu dei uma boa olhada no código do Laravel, e adivinha, quase tudo nele é código de terceiros, o Taylor Otwell (criador do laravel) só juntou as Libs de uma forma facil e inteligente.

 

Gosto muito do Laravel ele me agrada muito mas achei lento para fazer pequenas coisas como CMS e APP menores rodando em server compartilhados.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desculpe!

Apesar que você possui Know-how muito amplo, mas pensa como Freelancer, se tem uma carteira de clientes, e ainda quer coloca-las em hosts compartilhados qualquer, está deixando dinheiro na mesa, Beraldo já disse no post #5 o que realmente você precisa, existe lá fora hosts com suporte a php 5.6.X a partir de $1.99

Eu particularmente contrataria um Cloud a partir de $5, e começava um negócio lucrativo e não me preocuparia em criar outro Framework.

 

Ai você fala, mais $5 mês é muita grana, ok comece de graça!

 

http://aws.amazon.com/pt/free/

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desculpe!

 

Apesar que você possui Know-how muito amplo, mas pensa como Freelancer, se tem uma carteira de clientes, e ainda quer coloca-las em hosts compartilhados qualquer, está deixando dinheiro na mesa, Beraldo já disse no post #5 o que realmente você precisa, existe lá fora hosts com suporte a php 5.6.X a partir de $1.99

 

Eu particularmente contrataria um Cloud a partir de $5, e começava um negócio lucrativo e não me preocuparia em criar outro Framework.

 

Ai você fala, mais $5 mês é muita grana, ok comece de graça!

 

http://aws.amazon.com/pt/free/

 

 

Willians eu concordo plenamente com você tb acho perda de tempo criar um framework. Mas no meu caso, sim eu sou um freelancer que atente várias empresas, e estas empresas já possuem seus clientes espalhados por ai em tudo quanto é host (hosts bons e outros ruins), e muitos clientes não querem migrar de seus hots porque gostam do atendimento ou tem medo de perderem os emais que estão todos em web mail. Eu já bati de frente com muitas empresas e clientes para tentar reverter a questão da hospedagem e fazer algo melhor, mas em muitos casos o cliente bate o pe e não quer migrar.

 

Em fim, a realidade que eu estou expondo é de 80% de muitos programadores por ai.

 

Mas o que eu estou tentando dizer desde o inicio não é sobre o Host, apesar do PHP depender disso, mas de frameworks que não rodam em Host compartilhado por causa da versão do PHP ou por causa de velocidade, e mesmo com cache de html no front o back end ainda seria lento.

 

O que eu estou tentando perguntar aqui, é até onde é viavel criar algo parecido do que o Alisson expos no 2 post, que é criar um framework com infra extrutura de outros, neste caso eu utilizaria as Libs mais rapidas e na versão que eu precisasse do PHP, criando assim um outro framework com componentes, e classes de outros.

 

Eu até utilizaria o Laravel 5 ou 4 que roda na maioria das hospedagems já que utiliza o PHP 5.4. Mas eu não acho profissional tentar empurrar ele em host compartilhado.

 

Eu já vi muita gente lá fora utiliza o microframework Slim e o Idiorm (um orm extreamente rapido e descente) para criar um framework MVC e utilizar isso em projetos com CMS e Ecommerces.

Compartilhar este post


Link para o post
Compartilhar em outros sites

O que você quer fazer é possível tecnicamente? Sim! É viável do ponto de vista do bom senso? Depende da sua capacidade de manter... já vi uma centena de fw nascerem das premissas que você citou e não vi nenhum de fato durar muito. Eu particularmente não iria por este caminho, preferiria usar um fw "de prateleira" que já tenha uma comunidade e que eu tivesse certeza que:

1 - Atende as minhas necessidades;

2 - Terá um ciclo de vida longo o suficiente.

 

Enfim, este é apenas um dos vários pontos de vista possíveis.

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por landerbadi
      Boa tarde pessoal. Estou tentado fazer uma consulta no banco de dados porém estou tendo dificuldades. Tenho uma tabela chamada "itens" com os seguintes campos: id, item, ativo. Nela tem cadastrado vários itens. No campo ativo eu coloco a letra "S" para informar que este item está ativo no sistema. Por exemplo: 1, casa, S 2, mesa, S 3, cama, S 4, moto S 5, rádio O quinto registro "radio" não está ativo no sistema pois não tem um "S" no campo ativo. E outra tabela chamada "produtos" com os seguintes campos (id, item1, item2, item3) com os seguintes registros: 1, casa, mesa, moto 2, mesa, casa, cama 3, rádio, cama, mesa Eu preciso fazer uma busca na tabela produtos da seguinte maneira: Eu escolho um registro na tabela "itens", por exemplo "mesa". Preciso fazer com que o php me liste todos os registros da tabela "produtos" que contenham a palavra "mesa". Até aqui tudo bem eu consigo listar. Estou fazendo assim: <?php $item = "mesa" $sql = mysqli_query($conn, "SELECT * FROM produtos WHERE item1 LIKE '$item' OR item2 LIKE '$item' OR item3 LIKE '$item' LIMIT 10"); while($aux = mysqli_fetch_assoc($sql)) { $id = $aux["id"]; $item1 = $aux["item1"]; $item2 = $aux["item2"]; $item3 = $aux["item3"]; echo $id . " - " . $item1 . ", " . $item2 . ", " $item3 . "<br>"; } ?> O problema é que está listando todos os registros que contém o item mesa. Eu preciso que o php verifique os demais item e me liste somente os registro em que todos os registros estejam ativos no sistema. No exemplo acima ele não deveria listar o registro 3. pois nesse registro contém o item "radio" e este item não está ativo no sistema. Ou seja, o registro "radio" na tabela itens não possui um "S" na coluna "ativo". Alguém sabe como resolver isso?
    • Por ILR master
      Fala galera.
      Espero que todos estejam bem.
      Seguinte: Tenho um arquivo xml onde alguns campos estão com : (dois pontos), como o exemplo abaixo:
       
      <item>
      <title>
      d sa dsad sad sadasdas
      </title>
      <link>
      dsadas dsa sad asd as dsada
      </link>
      <pubDate>sadasdasdsa as</pubDate>
      <dc:creator>
      d sad sad sa ad as das
      </dc:creator>
      </item>
       
      Meu código:
       
      $link = "noticias.xml"; 
      $xml = simplexml_load_file($link); 
      foreach($xml -> channel as $ite) {     
           $titulo = $ite -> item->title;
           $urltitulo = $ite -> item->link;
           print $urltitulo = $ite -> item->dc:creator;
      } //fim do foreach
      ?>
       
      Esse campo dc:creator eu não consigo ler. Como faço?
       
      Agradeço quem puder me ajudar.
       
      Abs
       
       
    • Por First
      Olá a todos!
       
      Eu estou criando um sistema do zero mas estou encontnrando algumas dificuldades e não estou sabendo resolver, então vim recorrer ajuda de vocês.
      Aqui está todo o meu código: https://github.com/PauloJagata/aprendizado/
       
      Eu fiz um sistema de rotas mas só mostra o conteúdo da '/' não sei porque, quando eu tento acessar o register nada muda.
      E eu também quero que se não estiver liberado na rota mostra o erro de 404, mas quando eu tento acessar um link inválido, nada acontece.
      Alguém pode me ajudar com isso? E se tiver algumas sugestão para melhoria do código também estou aceitando.
       
       
      Desde já, obrigado.
    • Por landerbadi
      Olá pessoal, boa tarde
       
      Tenho uma tabela chamada "produtos" com os seguintes campos (id, produto) e outra tabela chamada "itens" com os seguintes campos (id, prod_01, prod_02, prod_03, prod_04).
       
      Na tabela produtos eu tenho cadastrado os seguintes produtos: laranja, maçã, uva, goiaba, arroz, feijão, macarrão, etc.
       
      Na tabela itens eu tenho cadastrado os itens da seguinte maneira:
       
      1, laranja, uva, arroz, feijão;
      2, maçã, macarrão, goiaba, uva;
      3, arroz, feijão, maçã, azeite
       
      Meu problema é o seguinte: 
      Eu escolho um produto da tabela "produtos", por exemplo "uva".  Preciso fazer uma consulta na tabela "itens" para ser listado todos os registros que contenham o produto "uva" e que todos os demais produtos estejam cadastrados na tabela "produtos".
       
      No exemplo acima seria listado apenas dois registros, pois o terceiro registro não contém o produto "uva". 
       
      Alguém pode me ajudar? Pois estou quebrando a cabeça a vários dias e não consigo achar uma solução.
    • Por landerbadi
      Boa tarde pessoal. Estou tentado fazer uma consulta no banco de dados porém estou tendo dificuldades. Tenho uma tabela chamada "itens" com os seguintes campos: id, item, plural, ativo. Nela tem cadastrado vários itens e seu respectivo plural. No campo ativo eu coloco a letra "S" para informar que esta palavra está ativa no sistema. Por exemplo: 1, casa, casas, S 2, mesa, mesas, S 3, cama, camas, S 4, moto, motos, S 5, rádio, rádios O quinto registro "radio" não está ativo no sistema pois não tem um "S" no campo ativo. E outra tabela chamada "variações" com os seguintes campos (id, item1, item2, item3) com os seguintes registros: 1, casa, camas, moto 2, mesas, casas, radio 3, rádio, cama, mesa Eu preciso fazer uma busca na tabela variações da seguinte maneira: Eu escolho um registro na tabela "itens", por exemplo "casa". Preciso fazer com que o php me liste todos os registros da tabela "variações" que contenham a palavra "casa". Porém se tiver algum registro com a palavra "casas" também tem que ser listado. Neste caso ele irá encontrar dois registros. Agora eu preciso que o php verifique os demais itens e faça a listagem apenas dos item que estão ativos (que contenham um "S" no campo ativo. Neste caso ele irá encontrar apenas um registro, pois o segundo registro contém a palavra "rádio". E "rádio" não está ativo na tabela itens. Como faço isso?
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.