sexta-feira, 9 de setembro de 2011

Frameworks PHP



Na semana passada falei em e atendeu a primeira Conferência da Comunidade PHP . Foi muito bom. Também foi muito diferente da minha conferência normal. Eu costumo ir para coisas muito técnico. Eu não costumo parar e cheirar as rosas da comunidade ou a história do meu escolhido (por mim ou que eu não estou certo, às vezes) profissão. Havia um monte de comunidade em um presente. 

Uma coisa que parecia ser um tema quente na conferência foi frameworks. CakeDC , o dinheiro para trás CakePHP foi o patrocinador platina. Conversei com mestrado Larry o proprietário de CakeDC um pouco enquanto caminhava uma noite. Grande cara. Joël Perras deu um tutorial sobre Lithum . Eu assisti mais de um presente. Ele fez muito bem. Joël foi franco e honesto sobre os benefícios e problemas com o uso de frameworks, incluindo ter que lidar com mais do que um de cada vez. Houve também um tutorial sobre os padrões Zend Framework por Matthew Weier O'Phinney . Eu perdi um presente. No segundo dia, as coisas eram diferentes. Rasmus Lerdorf alertou sobre o inchaço na maioria dos frameworks PHP e expressou esperança de que eles fariam melhor nas versões mais recentes. Eu recebi várias perguntas sobre frameworks na minha sessão. Eu também falou sobre eles um pouco. Chay Terry encerrou o dia com seu discurso de encerramento e tocou com eles novamente. Mais sobre isso mais tarde. Eu quero tipo de resumir o que eu disse (ou quis dizer). 


PHP é um framework Na minha sessão, eu falei sobre a história da Phorum . Uma das coisas que eu estava coberto primeiros dias do PHP. Na década de 90, antes do PHP, o trabalho de web mais dinâmicas foi feito em C ou Perl. Naquela época, nesses mundos, você tinha que fazer todos os HTTP o trabalho sozinho. Se você queria um tipo de conteúdo de text / html, você tinha que defini-lo, em código, em cada resposta única. Erros em scripts CGI, muitas vezes resultam em páginas de erro Apache interna e fez a depuração muito difícil. Todo o trabalho de HTML tinha que ser feito por escrito para a saída. Não houve incorporação de código HTML com o mesmo como uma linguagem de templates. PHP mudou tudo isso. Você tinha um tipo de conteúdo padrão do texto / html. Você teve o tratamento automático de variáveis ​​pedido. Os cookies eram facilmente ingerido e de saída. Você poderia modelo do seu HTML com script em vez de ter que escrever tudo para fora através de impressão ou stdout. Foi incrível. Quem poderia pedir mais? Frameworks como uma ferramenta Bem, aparentemente um mundo que eu honestamente não funcionam, poderia pedir mais. Há três principais segmentos de desenvolvedores web hoje em dia. Existem desenvolvedores que trabalham para uma empresa que tem um site, mas seu negócio não é o site. Talvez seja uma empresa de hardware de rede ou alguma outra indústria em que seu negócio merece ter uma equipe para executar o seu site, mas não é seu core business. 


Depois, há os desenvolvedores como eu que trabalham para uma empresa onde o site é o negócio. Tudo sobre o negócio passa pela web. Temos o site web público e no site da nossa equipe interna usa. É tudo. O último tipo são aqueles desenvolvedores que estão constantemente a construção de novos sites ou atualização de sites já existentes para os clientes. Eu vou ser honesto, isso não é um segmento que tenho considerado muito no passado, quando escrever mensagens código ou blog. Mas, eu conheci mais pessoas nesta conferência que qualquer um dos outros dois tipos. Eles parecem ser os que estão motivados e interessados. Ou pelo menos, porque o PHP e web são os seus negócios, eles enviaram o seu povo para a conferência. Você vê, eu tenho falado sobre frameworks. Não muito publicamente, mas aqueles que me conhecem me ouviram comentar sobre eles. Eu nunca realmente visto o ponto. Por que começar com algo genérico que provavelmente não caber sua necessidade final quando você precisa de escala ou expandir além de suas habilidades? Bem, para milhares de web sites, que são susceptíveis de ser construído por agências, nunca que o tempo ocorre. Mais provável, antes que isso aconteça, o site será redesenhado e completamente substituído. Então, se você passar todos os dias a construção de um novo site, por que todas as bases que cada vez? Além disso, por que têm de lidar com diferentes necessidades de cada cliente é? Costumo dizer que o Apache é o meu controlador . Eu não gosto de usar o PHP como meu controlador. Mas, se eu fosse implantar um site a cada semana para uma pilha diferente, eu não posso confiar no Apache com mod_rewrite ou tudo o que eu confio no meu trabalho hoje. Então, você precisa ter o controle total da aplicação. 


Qual banco de dados que o cliente use esta semana? Eu não me importo, o quadro de resumos que para mim. Estas são todas muito boas razões para usar um framework. Quadro Trade-Off Existem alguns trade-offs embora. O maior deles que eu vejo é a infinidade de opções. Várias das pessoas pró-quadro ainda mencionou que há um monte por aí. E parece que alguém está fazendo um novo diário. Com todas estas opções, é provável que alguns dos benefícios que você começa de um quadro poderia ser perdido. Se um cliente já possui um site baseado no CakePHP e sua agência usa lítio o que você faz? Diga não ao trabalho ou ter de lidar com as diferenças? Alguns deles são grandes o suficiente para ser um problema real.


Algumas são tão pequenas, você pode não notá-los, até que seja tarde demais. Que é um lugar difícil de ser. A outra questão é o desempenho. Frameworks são notoriamente ineficientes. Ele foi apenas a sua natureza. Quanto mais você abstrair a partir do núcleo, menos eficiente que você é. Isto é mesmo verdade com PHP. Terry Chay apontou que o PHP é menos eficiente do que Java ou C em seu discurso. Mas, você ganha o poder com PHP na forma de ciclos de desenvolvimento mais rápido. Frameworks têm que mesmo benefício. Mas, não resolveram esta questão nada melhor do que PHP tem mais abstrata C. Eles afastado o baixo nível (por PHP, pelo menos) o material que está acontecendo. E isso significa perda de eficiência. Isso pode ser resolvido ou pelo menos trabalhado, no entanto, e espero que seja. 


Frameworks como Commodity Então, isso fica-me de volta a algo Terry Chay disse. 
Ele falou sobre a motivação das empresas de open source sua tecnologia. 
Ele usou Facebook Projeto Compute Abra como um exemplo. 
Ele ressaltou que um dos principais motivos Facebook abriria esta informação seria na esperança de que outros fizessem o mesmo em seus centros de dados. 
Se isso acontecesse, seria mais fácil para o Facebook para se deslocar para um centro de dados novo, porque ele já estava na maior parte de configuração do jeito que ele gosta. Transitioning este frameworks mesmo pensamento, a comoditização aqui, que eu vejo, é do interesse dos desenvolvedores. 
Se o quadro lhe apoio torna-se o padrão de fato, então todos os desenvolvedores que trabalham em agências de usá-lo agora estão prontos para vir trabalhar para você. 
Além disso, se você é a empresa por trás dele, há oportunidades para os livros, conferências, treinamento, suporte e todos os outros periféricos que vêm da interação fonte comercial / open. Preciso de provas de que? Não procure mais, a "Empresa PHP", Zend. 
Eles poderiam ter comprometido os desenvolvedores PEAR, mas em vez criado o Zend Framework. 
Vejo listas de trabalho, muitas vezes para Zend Framework experiência. Originalmente Zend tentou rentabilizar o servidor com seus otimizadores e Zend Server. Eles tiveram sucesso moderado. A comunidade surgiu com APC e XCache esse tipo de roubou seu trovão. Eu sinto que eles têm tido sucesso muito melhor com Zend Framework em termos de penetração no mercado. O dinheiro é com as pessoas que escrever o código, não executar os servidores. 


Frameworks são EVERYWHERE vou fechar com outra coisa que Terry Chay disse. Esta foi uma espécie de aha! momento para mim. Terry apontou que os quadros estão em toda parte. Wordpress, Drupal e até mesmo o meu projecto, Phorum , são frameworks. 


Você pode construir um site bem sucedido usando apenas as aplicações. 
Não é apenas as bibliotecas nova geração de código que pode ser visto como frameworks. 
Na verdade, muito própria da Phorum Maurice Makaay está construindo seu novo web site usando apenas Phorum 5.3 (ramo de desenvolvimento atual). 
Phorum oferece mais fácil a interação de banco de dados, manipulação de saída, templates, um sistema de módulos pluggable e até mesmo de autenticação e permissões de grupo baseado. 
Wow, eu sempre evitava tipo de esta idéia. Na verdade, quando Maurice me mostrou seu site, eu meio que fez uma careta. Por que você quer fazer isso? Você sabe por quê? Porque a principal coisa que leva o seu site é Phorum. Seus usuários vêm ao local para Phorum. Então, por que ele quer instalar Phorum, investir em fazer tudo que pode ser e depois ter de começar do zero para todas as outras partes do site que não fazem parte da placa da mensagem. Duh, eu meio que sinto estúpido para nunca olhar para as coisas a partir dessa perspectiva antes. Sentindo-se mudo é ok. Eu fico mais inteligente quando me sinto burra. Novas idéias fazem-me um desenvolvedor melhor. E eu espero que é o que sai desta experiência para mim. Você nunca sabe, eu possa jogar meu nome neste chapéu e ver como bases Phorum poderia ser útil fora do próprio aplicativo. 

Nenhum comentário :

Postar um comentário

Total de visualizações de página