Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá, sou realmente muito inciante e noob em programação, e até hoje ninguem não me explicou direito então ai vai minhas perguntas :graduated:
Veja esses dois hangouts:
>
1 - frameworks é um conjunto de metodos e funções que argilizam do processo de desenvolvimento do site
2 - nenhum já que você é iniciante é melhor aprender a fazer na unha, antes de tentar um frame
3 - te dao tempo e estabilidade
4 - depende muito da sua programação
5 - Orientado a Objetos
O William encavalou algumas perguntas e se equivocou em outras.
Assistindo os hangouts sugeridos pelo Enrico você verá o quê e o porquê:
1 - frameworks é um conjunto de metodos e funções que argilizam do processo de desenvolvimento do site
Não. Ou é um ou é outro porque ambos são a mesma coisa, porém contextos diferentes.
E o contexto garante aos métodos alguns recursos a mais que proceduralmente você não teria ou seria bastante complicado de emular.
Para sua segunda pergunta, primeiro você deve saber as bases da linguagens. De pois aplicar as bases em programação procedural, depois entender o que é Orientação a Objetos e aplicar as bases da linguagens nas classes e criar seus próprios objetos.
Isso porque você ser totalmente dependente de um framework pode (e vai) te engessar quando tiver um problema que o framework não lida mas que se você soubesse programa a linguagem ao invés de simplesmente usar um framework, saberia.
2 - nenhum já que você é iniciante é melhor aprender a fazer na unha, antes de tentar um frame
Essa seria uma parte da segunda pergunta com a terceira. Está correto esse ponto de vista pelo motivo acima.
3 - te dao tempo e estabilidade
Ele não "dão tempo", isso é meio ambíguo. Eles aumentam a sua produtividade lidando com diversas particularidades para que de forma simples e relativamente rápida você programe mais em menos tempos.
Ah! E essa era a quarta pergunta :P
4 - depende muito da sua programação
Depende do framework também. Frameworks mais sólidos tendem a ser mais burocráticos programaticamente falando e dentre essas burocracias temos a divisão do código em muitos e muito arquivos.
E o sistema de arquivos é lento por definição.
Outros frameworks que não vou citar o nome (você deve testar por você mesmo) dão muitas voltas, pra mim, aparentemente desnecessárias.
Mas num geral, TODOS eles sofrem com a ausência de micro-otimizações. Conceitualmente, micro-otimizações só devem ser feitas se você tem tempo para estudar as diversas formas que o PHP permite fazer uma mesma coisa, testando e fazendo benchmark de cada uma delas.
É uma coisa MUITO chata, dispendiosa mas que se feitas, no fluxo da Requisição, vertical e crescente, pode SIM otimizar e muito um framework e, consequentemente, a aplicação que dele dependa.
5 - Orientado a Objetos
E a sexta pergunta é muito generalizada. Colocar um monte de funções numa classe não é Orientação a Objetos.
Vejam o WordPress e o CodeIgniter.
O primeiro é um emaranhado assustador de código, parte com funções procedurais, párte com classes terceirizadas e parte com classes próprias que não seguem os conceitos da OOP. Simplesmente enfiaram um monte de funções lá e bora.
O segundo.... putz! Você desenvolve rápido com ele? Sim, sem dúvida. Se código pode, potencialmente vir a ficar apresentável mesmo usando o CI? Talvez.
Mas o CodeIgniter em si é porco, mal estruturado, cheio de globais e sei lá mais o quê, já que parei de acompanhar na primeira vez que abri o código.
boa resposta :P
melhor abordagem que já vi sobre o assunto.
http://imasters.com.br/linguagens/hangout-sobre-frameworks-e-ferramentas-php/