Ir para conteúdo
Fernando Rotermund

Porque programar em PHP se existem tantas plataformas prontas.

Recommended Posts

Porque continuar programando em PHP se existem tantas plataformas que dizem resolver todos os problemas.

 

Em matéria de CMS o Wordpress domina, então porque fazer o seu próprio CMS?

Fanboys do Wordpress dizem que a ferramenta tem tudo, e se não tiver é só fazer um plug-in e ta tudo resolvido. No WP tem plug-ins para tudo, e-commerce, forum, CMS bacanudo, sistema para ajudar no SEO entre milhares de opções prontas para usar.

 

Porque desenvolver um sistema de e-commerce, se na outra ponta temo Magento, OpenCart, Prestashop e etc . E mais uma vez essas plataformas resolvem quase todo o tipo de problema com seus plug-ins.

 

Então, porque fazer algo que já esta pronto, porque devo criar se posso reutilizar e copiar.

 

Não conheço nenhum assunto sobre isso na internet, o que estou querendo debater não são as plataformas prontas em si, mas o exagero de achar que uma delas pode resolver tudo e em qual momento eu devo programar meu proprio CMS ou E-commerce.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Seguindo sua forma de pensar, você ensinua que: Pra que estudar matemática se a resposta está no Google.

Isso te torna preguiçoso e mais pra frente ignorante.

 

Olha, você não está errado em falar da grandeza do WordPress, que não vê necessidade de se fazer um CMS do zero, ou então uma plataforma e-commerce com a existência de tantas possibilidades gratuitas.

Concordo!

 

Mas e quando você precisar de algo específico? E quando essa ferramenta passar a dar problema? E quando for desenvolver para outra pessoa?

 

Tem que saber equilibrar isso, se for trabalhar com Wordpress, é super importante saber html/css/php/javascript, desta forma você é capaz de criar seu próprio tema, seu próprio plugin e ter seu site 100% da maneira que quer

Compartilhar este post


Link para o post
Compartilhar em outros sites

A grande questão disso tudo é que as pessoas sismam em acreditar que você não precisa criar nada, porque já tem tudo pronto e, afinal, é muito mais fácil pegar o que já tá pronto e modificar do que criar algo do zero.

 

Mas existe um ponto aqui que eu considero crucial: se a sua loja é exatamente igual ao Exra, ao Submarino, ao Ponto Frio, às Americanas ou qualquer outra dessas, por que diabos eu vou comprar na SUA loja e não nas que todo mundo já conhece e sabe que são confiáveis?

 

É justamente por você ter a liberdade de criação que a sua loja pode ter o diferencial necessário pra se destacar no meio dessas gigantes.

 

É justamente por ter a liberdade de CRIAR o seu próprio código, que você pode criar um gerenciador de cobranças melhor que o PagSeguro, um Marketplace melhor que o MercadoLivre etc. É justamente por CRIAR e não COPIAR que você tem a possibilidade de desenvolver um sistema de segurança eficiente sem ter que pagar os seus rins e fígados por isso.

 

Dentre infinitas outras questões, ainda temos um ponto interessante: quando VOCÊ faz, você tem certeza da qualidade, sabe como funciona, sabe utilizar a ferramenta com perfeição e não depende de pesquisar nos fóruns a todo momento coisas como "como ativar o SSL no wordpress?" no nosso amigo Google.

 

Dentre infinitas outras questões ainda, facilidade de uso, segurança garantida, eficiência, um código mais enxuto, descartando inúmeras coisas desnecessárias que os Frameworks possuem e que você nunca vai precisar utilizar, um site mais leve e, portanto, menos demora pra carregar as páginas, controle total sobre tudo que ocorre dentro do seu website, integrações ilimitadas com quaisquer ferramentas que quiser.

 

Resumindo, existem infinitos motivos pra se desenvolver o próprio código, além, é claro, da questão de que se é você quem desenvolve, você tem o direito de vender a sua ideia, o seu produto, depois. Afinal, toda boa ideia é valiosa, desde que bem estruturada, desenvolvida etc, etc e etc.

  • +1 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

E, claro, você ainda deve levar em consideração a questão de "quando meu negócio for muito mais pra frente, quando ele crescer e se desenvolver de uma forma que eu não esperava, o que eu vou fazer com todas as limitações que esses frameworks talvez me imponham?". Essa é uma pergunta interessante a se fazer.

 

Não basta fazer o que é mais fácil, tem que fazer o que dá certo, o que funciona, o que não vai te dar problemas grandiosos (nenhum problema, quem dirá os grandiosos) no futuro.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Porque desenvolver um sistema de e-commerce, se na outra ponta temo Magento, OpenCart, Prestashop e etc . E mais uma vez essas plataformas resolvem quase todo o tipo de problema com seus plug-ins.

Ai está a sua resposta... as plataformas resolvem QUASE tudo... pesquise por plugins/módulos de cartão de crédito, verá que os que funcionam são pagos... integração com sistemas de análise de risco? Não existem... etc... o que é dado "de graça" é o arroz com feijão, se você quiser a carne, ai tem que por a mão no bolso, sempre foi assim e sempre será. Pesquise por ai quanto custa a hora técnica de um especialista em Magento, é um "absurdo", mesmo a plataforma estando lá de graça para baixar...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Porque PHP não se resume à WordPress, ou qualquer outro CMS pronto. Não devemos esquecer do desenvolvimento de soluções, sistemas específicos para atender necessidade específica, aplicações especiais, em fim, "PROGRAMAR É PRECISO".

 

Além disso, vejo WordPress e demais CMS como uma mesmice, sem diferencial que valia apena deixar o PHP de lado pra usá-lo. INOVAR é preciso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por diogoglobaltec
      criei um formulário dinamico e gostaria de enviar para o arquivo rec.php, os aquivos adicionados pelo no formato file , já tentei colocar em
       x.setAttribute("enctype" , "multipart/form-data");
      também não funcionou segue o arquivo:
       
      <!DOCTYPE html>
          <html>
              <body>
              
                  
                  
                  <p>Click the button to create a FORM and an INPUT element.</p>
                  <button onclick="myFunction()">Try it</button>
                  <button onclick="enviar()">enviar</button>
          <script>
          function myFunction() {
            var x = document.createElement("FORM");
            x.setAttribute("action", "rec.php");
          x.setAttribute("method", "post");
          x.setAttribute("id", "myForm");
            document.body.appendChild(x);

            var y = document.createElement("INPUT");
            y.setAttribute("type", "file");
            y.setAttribute("name", "arquivo[]");
            document.getElementById("myForm").appendChild(y);
      }
           function enviar(){
              document.forms[0].submit(); 
          
          }
          </script>

              </body>
      </html>
       
      consigo pegar no arquivo rec.php o valor de $_POST , mas de $_FILES não consigo pegar como um array, o que está dando errado ? segue o  script PHP 
       
      Arquivo rec.php
      <?php
      foreach($_POST['arquivo'] as $value) {
              echo $value."<br />";
      }
      foreach($_FILES['arquivo'] as $value) {
                     echo $value['arquivo']['name']."<br />";
      }
       
       
       
       
    • Por Jonas Ribeiro Nascimento
      Estou criando meu próprio mvc php para adquirir mais conhecimento.
      Mas estou me deparando com uma coisa muita estranha, eu perco a $_SESSION de uma view para outra view
      Fiz um codigo simples pra testar.a.php ----- view a.php
      <?php session_start(); $_SESSION['teste'] = 'Funcionou'; echo $_SESSION['teste']; ?> <?php session_start(); echo $_SESSION['teste']; // Notice: Undefined variable: _SESSION in var_dump($_SESSION); // Notice: Undefined variable: _SESSION in NULL ?> <?php namespace Sis\Classes; use App\Model\ClassLogin; use Sis\Traits\TraitGetIp; class ClassSession { private $login; private $timeSession = 1200; private $timeCanary = 300; public function __construct(){ if(session_id() == ''){ ini_set("session.save_handler", "files"); //Cabeçalhos somente atraves de arquivos ini_set("session.use_cookies", 1); //Habilita o uso de cookies ini_set("session.use_only_cookies", 1); //Só pode habilitar a seção atraves de coockies ini_set("session.cookie_domain", DOMAIN); //Só aceita coockies vindo do nosso sistema ini_set("session.cookie_httponly", 1); //Só aceita script php e não deixa o javascript alterar o sistema if(DOMAIN != "localhost"){ ini_set("session.cookie_secure", 1); //Para trabalhar com o SSL do servidor ativo } /*Criptografia das nossas sessions*/ ini_set("session.entropy_length", 512); // ini_set("session.entropy_file","/dev/urandom"); ini_set("session.hash_function", "sha256"); ini_set("session.hash_bits_per_character", 5); session_start(); } $this->login = new ClassLogin(); } #Proteger contra roubo de sessão public function setSessionCanary($par=null){ session_regenerate_id(true); if($par == null){ $_SESSION['canary']=[ "birth" => time(), "IP" => TraitGetIp::getUserIp() //Pega o ip do usuario ]; }else{ $_SESSION['canary']['birth']=time(); } } #Verificar a integridade da sessão public function verifyIdSessions(){ if(!isset($_SESSION['canary'])){ $this->setSessionCanary(); } if($_SESSION['canary']['IP'] !== TraitGetIp::getUserIp()){ $this->destructSessions(); $this->setSessionCanary(); } if($_SESSION['canary']['birth'] < time() - $this->timeCanary){ $this->setSessionCanary("Time"); } } #Setar as sessões do nosso sistema public function setSessions($Email){ $this->verifyIdSessions(); $_SESSION['Login'] = true; $_SESSION['Time'] = time(); $_SESSION['Nome'] = $this->login->getIssetSession($Email)['data']['Nome']; $_SESSION['Email'] = $this->login->getIssetSession($Email)['data']['Email']; $_SESSION['Permissoes'] = $this->login->getIssetSession($Email)['data']['Permissoes']; } #Validar as páginas internas do sistema public function verifyInsideSession(){ $this->verifyIdSessions(); if(!isset($_SESSION['Login']) || !isset($_SESSION['Permissoes']) || !isset($_SESSION['canary'])){ $this->destructSessions(); header("Location: ".DIRPAGE."NaoAutorizado"); }else{ if($_SESSION['Time'] >= time() - $this->timeSession){ $_SESSION['Time']=time(); }else{ $this->destructSessions(); header("Location: ".DIRPAGE."NaoAutorizado"); } } } #Destruir as sessions existentes public function destructSessions(){ foreach (array_keys($_SESSION) as $key) { unset($_SESSION[$key]); } } #testar public function testarSessions(){ echo 'oiiiiiiiiiiiiiiiiiiiiiiooooooooooo'; } }

    • Por Allan Carlos dos Santos G
      Bom dia Pessoal, Gostaria de saber como Instalar e colocar pra rodar a versão do Zend PHP 1.11.11, tenho tido dificuldade de achar material na internet e se puderem ajudar, obrigado!
    • Por Rodrigo Vieira E da Silva
      Olá a todos do fórum Imasters, tudo bem?
      Minha dúvida é a seguinte:
      Eu tenho alguns páginas que desejo restringir o acesso e quero que somente os assinantes e o administrador possam ver essas páginas.
      Gostaria de fazer isso via código sem a necessidade de ter plugins em meu projeto. Alguém já fez isso ou conhece alguém que possa me ajudar.
      Fico no aguardo de um feedback, referente ao assunto acima.
    • Por Perroni91
      Olá pessoal.
      Estou com uma dúvida, mas como sou leiga no mysql, não estou conseguindo resolver.
       
      Tenho duas tabelas no meu banco de dados:
       
      Posts
      id
      titulo_principal
      categoria_id
      imagem
       
      Categorias
      id
      categoria
       
      ---

      Já cadastrei as categorias 'HTML' e 'CSS', e cada um contêm 1 post de cada.

      O que eu gostaria era que: A cada vez que criar um post em alguma dessas categorias, mostrar a quantidade separadamente.

      Ficaria assim:
      HTML               3
      CSS                   1


      Alguém poderia me ajudar, por favor?
      Estou quebrando a cabeça tentando fazer isso e não consegui.
      Obrigada!
×

Informação importante

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