Reduzir o número de "objectos"

joaopj

Power Member
Olá pessoal.

É o seguinte, a minha página tem aproximadamente 6 "objectos" (files de CSS e javascript) externos que vêm com ela quando alguém faz o "load" da página. São muitos "requests" para quem tem uma internet lenta não é ?

A minha ideia inicial foi meter o código do javascript e CSS dentro do file principal, neste caso o index.php, dentro da <head></head>. Ficaria mais ou menos assim:

Código:
<html>
<head>

[INDENT]<style type="text/css">
.umaclass{propriedades;}
#umaID{propriedades;}
</style>
[/INDENT]
[INDENT]<script type="text/javascript">
todo o código aqui
</script>
[/INDENT]
</head>
<body>
toda a bacorada do meu site
</body>
</html>

E realmente, isso ia diminuir o número de requests, mas eu ia ficar com um index.php MUITO desorgânizado e ia ser dificil trabalhar nele quando fosse editar...
Então eu pensei em incluir tudo com PHP :) Por exemplo:

Código:
<html>
<head>

[INDENT] <style type="text/css">
<?php include'css.php'; ?>
</style>
[/INDENT] 
[INDENT] <script type="text/javascript">
<?php include'javascript.php'; ?>
</script>
[/INDENT] 
</head>
<body>
toda a bacorada do meu site
</body>
</html>

Eu já tentei fazer isto, e realmente funciona.
Agora eu quero é saber se é seguro, se há falhas de segurança, e se é aconselhavel...

(Ahh e também queria saber se confirmam a minha teoria de que iria realmente diminuir o número de requests se eu incluisse todos os files em vez de... digamos "anexa-los" do modo tradicional)

Obrigado
 
Julgo que os CSSs e JavaScripts nem te vão alterar nada no desempenho da página, por uma questão de organização, recomendo-te a teres as coisas bem separadas.

Imagens, applets e afins, isso sim, vai ser chato com os requests e afins, agora CSS e JS não te deve trazer problema nenhum.

HecKel
 
Está tudo bem orgânizado em folders, e a nivel da página saberei como faze-lo... Não tenho applets e só 2 imagens, tenho é muito javascript e queria saber se posso usar aquele metodo que está no meu primeiro post....
 
Viva,

Desde que não submetas nada através do JavaScript ( httprequest ) não existem problemas de segurança.

Em relação aos requests se os ficheiros que fores incluir forem do mesmo site, não há problema nenhum. Faz um include, é melhor manter o código organizado.

Não sei se o segundo código que tens é o final, mas não percebi porque fazes o include do CSS e do JS em PHP??!!!

Saudações
 
é que eu pensei que se fizesse o include do CSS e JS em PHP isto fosse uma operação "server side" e as coisas fossem incluidas para quando o usuário estivesse a fazer o load da página, as coisas se comportarem como se fosse no código 1....
E o segundo código é suposto ser o final sim, mas secalhar está errado até dizer chega :S

O segundo código pode substituir o primeiro ?
 
é que eu pensei que se fizesse o include do CSS e JS em PHP isto fosse uma operação "server side" e as coisas fossem incluidas para quando o usuário estivesse a fazer o load da página, as coisas se comportarem como se fosse no código 1....

Javascript e CSS não são server side, logo o script será sempre carregado...

O segundo código pode substituir o primeiro ?

Não me parece.

Para fazeres um include de um css fazes o seguinte
<link href="estilo.css>" rel="stylesheet" type="text/css">

ou
<style type="text/css">
@import url("estilo.css");
</style>


Para fazeres o inlcude em JS fazes o seguinte

<script language="JavaScript" src="/javascripts.js"></script>


saudações
 
Obrigado, mas eu sei como se fazem esses includes, e é o que estou a fazer de momento no meu site.

Mas eu queria melhorar a situação, e em vez de ter que carregar esses files em separado, inclui-los em PHP na minha página.... Isto não fará o browser carregar o HTML CSS e JS tudo junto num file como um único request ?
 
VIva,


Carregar os ficheiros juntos não te vai fazer diferença "nenhuma" já que quando abres um site num navegar ele envia vários requests ao mesmo tempo para acelerar o processo.

Cada imagem cada request, cada script cada request, cada ficheiro externo cada request...

Se queres a minha opinião não te preocupes com isso. Se os ficheiros estão no mesmo dominio não sentes diferença nos ganhos

Saudações
 
OK, Obrigado por tudo :)
Eu tava aqui com umas manias porque antes eu tinha uma internet de dial up então sou um bocado freak com optimizações heeheheh...
 
Back
Topo