Não é a primeira vez que me perguntam se eu acoselho o uso de includes. Não sei o motivo, mas grande parte do pessoal não usa includes. Parece que isso é uma daquelas coisas de uso exclusivo de programadores. Engano deles.
Includes (por exemplo) é uma das coisas que ajudam e muito o trabalho da equipe inteira. Menus, cabecalhos, rodapés, e qualquer coisa que você ache que vá se repetir em mais de uma página no site deve ser colocado em includes. Já vi muita gente, em pleno século 21, repetir o código do menu em todas as páginas. E sim, quando algo muda no menu, ele muda na página inteira. Muito triste.
Faz parte do trabalho parar um tempo por dia para pesquisar novas metodologias, novos meios para agilizar seu trabalho diário. Costumo fazer isso no final do expediente. Normalmente sempre encontro maneiras que resolvem meus problemas mais urgentes.
PS.: Já já novidades aqui no Tableless.
40 Comentários
40 Comentários
Rael B. Riolino 05/11/2007 às 08:04
Concordo.
A única coisa que eu sei de PHP é trabalhar com includes, e isso com certeza facilitou E MUITO a minha vida!
Eu aconselho!
Guilherme Medeiros 05/11/2007 às 08:11
Concerteza.
Por isso acho que todo designer deve saber um pouco de programação, por mais difícil que seja (pra os designers) de aprender…
Thiago Machado 05/11/2007 às 08:51
Include bem usado facilita muito, é mto importante para a não repetição de código e agiliza em certo ponto a produção de código
Gustavo Luciano 05/11/2007 às 08:58
no .net temos o sucego da Masterpage!
Bruno Francisco Santos 05/11/2007 às 09:10
há um tempo atrás eu nao usava includes.. depois que tive que fazer uma grande alteração que me deu muito trabalho, comecei a usá-lo com frequencia e hoje nao vivo sem
novidades?
sempre é bom!
estou curioso hehe
Junio Vitorino 05/11/2007 às 09:12
Eu particularmente uso sempre includes. Acho que facilita e muito a vida.
Ah! Novidades é sempre bom e eu que sou leitor antigo daqui, espero mesmo novidades.
Renato 05/11/2007 às 09:21
Sempre fui a favor de usar includes, por vários motivos, mas o principal seria a facilidade que o administrador do site tem nas atualizações…
Concordo que um designer tem que saber o que ele pode usar para facilitar as atualizações, da mesma forma que o programador tem que saber alguns conceitos bássicos de design.
Fake Eric Schmidt 05/11/2007 às 10:13
Finalmente concordo com o Diego.
Não usar “templates”, é totalmente contra-producente além de induzir ao erro.
E para o pessoal do PHP, vida longa ao Smarty!
Daniel Accorsi 05/11/2007 às 10:54
Hoje em dia um designer tem a obrigação de finalizar sua arte no Photshop / Illustrator, passar para html, css e ainda fazer os includes. E há aqueles que se diferenciam tendo uma boa noção em javascript.
Nicholas Bittencourt 05/11/2007 às 11:16
Além dos includes, uma coisa muito interessante é trabalhar com templates de página. Como programador java, gosto muito da abordagem criada pelo Tiles e pelo Facelets, onde defino como seria uma página e só preciso reescrever a parte que quero alterar, seja o menu ou o bloco de conteudo. Bem interessante!
Carlos Eduardo 05/11/2007 às 11:22
Não vejo onde está o problema de utilizar include nas páginas.
Dependendo do tamanho do site, também utilizo, isso facilita (e muito) na manutenção.
Joana 05/11/2007 às 12:13
No começo eram os frames, eu gostava muito da idéia. Eu já perdi muito tempo no google procurando uma maneira de fazer includes com html e não me conformo que não exista (ou existe??).
Até que com este seu post me voltou a esperança…
Daniel Lopes 05/11/2007 às 12:18
O ideal é usar-se alguma classe/engine de templates, já que se tem uma linguagem server side à mão.
Não adianta quem for montar o html seguir os web standards e construir css layout se quem programa( as vezes o mesmo individuo), seguir a metodologia spagueti de includes e código misturado ao html, isso tambem vale para o spagueti do java script. COmo defendido aqui aplicações web bem feitas são aquelas que podem ser lidas e melhoradas facilmente até em um bloco de notas.
Felipe 05/11/2007 às 12:46
“Eu já perdi muito tempo no google procurando uma maneira de fazer includes com html e não me conformo que não exista (ou existe??).”
EXISTE um recurso do Apache que permite isso: Server Side Includes(SSI)
http://httpd.apache.org/docs/2.3/howto/ssi.html
No final desta página ele conclui dizendo que está é uma solução que substitui os cgi e outras tecnologias(python, Perl, PHP) em páginas que preicisam de um pequeno dinamismo.
Mauro Britto 05/11/2007 às 17:06
O protocolo HTTP é baseado nas requisições do cliente(Get). Assim para acessar uma pagina o navegador executa as seguintes etapas:
1) Query DNS no nome do domínio.
2) Recebe o “Response” do servidor de DNS contendo o IP correspondente ao domínio requisitado.
3) Envia um comando SYN para sincronizar a transferências de dados entre cliente/servidor.
4) Então, finalmente, realiza o comando GET para começar a receber a pagina.
As duas primeiras etapas podem ser puladas apenas se o Cliente de DNS do Windows/Linux possuírem em cache a resolução do domínio requisitado. Para verificar sua tabela de DNS interna vá ao prompt e tecle “ipconfig /displaydns”.
Portanto para cada include que existir na pagina o navegador terá que seguir essas etapas antes de baixar o conteúdo do include. Isso deixa o carregamento da pagina mais lento do que se os arquivos dos includes estivessem no mesmo HTML.
Isso não significa que includes sejam ruins. Eu uso includes praticamente sempre, eles facilitam e organizam a criação de sites. Um bom exemplo é esse do menu que se repete em todas as paginas. A questão é que o exagero de includes pode ser prejudicial. Então eu aconselho a calcular se o beneficio de um include vai ser superior ao acréscimo de overhead que ele vai trazer.
Quem quiser saber mais sobre o funcionamento do protocolo HTTP pode pesquisar no google sobre o Ethereal, um ótimo programa para analise de rede.
Até mais.
EAD 05/11/2007 às 19:20
Includes é o que há.
Julio Fragoso 05/11/2007 às 19:49
Cara, isso é das coisas mais importantes num site.
Poupa código, poupa tempo e a manutenção fica simples ao extremo.
A equipe aqui do trabalho usa em asp.
Sem igual
JOabe 05/11/2007 às 19:57
É meio difícil imaginar um profissional hoje que não use os includes, agora um amador é compreensível. Eu só aprendi a usar no momento que me pediram um site com mais de 20 seções, “a necessidade é a mãe da invenção…” nesse caso a necessidade me fez ir ao Google! :d
Mark de Souza Costa 06/11/2007 às 00:53
Uahh,
Quem trabalha com ASP.NET não tem essa preocupação a muuuuito tempo.
Vide Web User Controls e Master Pages.
Sds,
Mark Costa
Ederson Peka 06/11/2007 às 01:39
Mauro Britto, o include acontece no lado do servidor. Não há “múltiplas requisições do navegador”, nem “overhead”, enfim… O navegador/user agent/cliente HTTP não fica sabendo se foram usados ou não includes.
Diego Hercowitz 06/11/2007 às 10:02
Bem eu uso mesmo os includes em ASP. Esse SSI que o felipe falou eu já tinha ouvido falar, mas sinceramente ainda não testei.
Acho que um grande fator pelo qual nego não uso include é pq nesses cursos relâmpago de “webdesign” molecada aprende tudo no estilão “aperta e pronto”, nos programinhas mesmo… Aí não se ligam no que os códigos oferecem de facilidade.
Por um lado é bom, né… quem conhece pode levar um mérito de profissional… quem não se desenvolve fica fazendo site pra loja de embaladora de quiabos do tio lá do interior de são joão das costas curtas!:)
Abração.
Diego
Fernando 06/11/2007 às 12:32
realmente os includes facilitam muito a vida de toda equipe… poupa muito trabalho em atualizações, tais como adição de uma item no menu, mudança de estrutura do topo ou rodapé e por ai vai… dependendo da criatividade do camarada…
Dirceu Bimonti 06/11/2007 às 14:22
Pro pessoal de PHP tem o CodeIgniter que trabalha com o padrão MVC. Excelente alternativa ao Smarty. Aliás, hoje em dia eu nem uso mais o Smarty.
Novidades no Tableless ? Seria bom, porque um excelente ponto de referência para os web designers brasileiros estava meio as moscas.
Joao Paulo Faria 06/11/2007 às 16:28
Falou, falou, falou e disse besteira, Mauro…
Os includes são server-side, não client-side. Logo, o cliente recebe UMA página com tudo já incluido, sem essa história de várias requisições para receber uma única página (como frames, por exemplo).
Outra, desconheço qualquer implementação de TCP/IP que não tenha caching de DNS.
Mais outra, não precisa ser tão xiita. Se for assim, para cada imagem que você colocar na página também é gerada uma requisição. Por isso os servidores de web e clientes negociam o keep-alive de conexão.
Cesar Oliveira 07/11/2007 às 10:29
Olá, boa tarde a todos os leitores do tableless,
Realmente é pena o próprio html não ter a função de include.
Em ColdFusion usa-se assim:
Só uma duvida, esse SSI funciona em IIS também ?
Cumprimentos
César Oliveira
http://www.profissionalweb.net/blog/
http://www.profissionalweb.net/sondagens (Ainda em desenvolvimento)
msn: malainho2003@hotmail.com
Anderson 07/11/2007 às 11:25
Como diz o título, isso é básico.
Não consigo imaginar alguém que se diz desenvolvedor não dividir seu site em módulos.
Alexandre 07/11/2007 às 15:20
Céus! HTML NUNCA deveria ter includes nativos.. é um documento, hipertexto.. não uma aplicação.
Includes em programação são ótimos, um recurso indispensável em várias tecnologias.. não sei como tem gente que não vê isso. Apesar que, já vi gente me perguntar qual a utilidade de uma array! Vai entender esse pessoal…
Ulysses 07/11/2007 às 23:47
include é a salvação do trabalho em grupo.
atualmente tenho usado em documentos de word (centenas deles) com o svn para fazer documentacao de software. cada arquivo é um item do documento, e existe um compilação.doc (e .pdf) que a gente gera juntando tudo. maravilha!
Vinícius Pitta Lima de Araújo 08/11/2007 às 10:53
Acho que com XSLT você pode criar um esquema de templates pra sua página sem ter que usar uma linguagem server side. No final das contas a curva de aprendizado é quase a mesma que aprender a fazer um includezinho em uma linguagem ou outra. Eu, como uso mais .net e java uso os templates que as linguagens oferecem.
Edgar da Silva Ramos 08/11/2007 às 11:46
Eu trabalho com web design a um ano e comecei a pouco me aventurar em php…sua dica mudo minha vida bixo, valeu =D !
Flávio Araújo 11/11/2007 às 15:20
Includes ou qualquer coisa semelhante realmente é mais que uma mão na roda.
Há algum tempo junto com um amigo meu, escrevi algo sobre isso http://flaviowd.wordpress.com/2007/03/30/includes-do-php-versus-frames-e-iframes/)
Mas tinha testado basicamente só a coisa …
Ai dia desses realmente precisei disso pra fazer o site da FATEC-SJC e ai realmente foi uma maravilha:
Descobri este código aqui:
E depois onde voce quer que apareça o conteúdo que muda você coloca:
E suas urls ficam algo do tipo:
Sobre Nós
Mais fácil que isso, impossível.
Abraços
João Rodrigo Moreira 12/11/2007 às 10:27
Realmente é uma forma de deixar o código limpo e bem estruturado, facilitando paca na hora de fazer alguma atualização. Entendamos como uma obrigação.
Sergio Clemente 12/11/2007 às 10:46
hehehehe
includes, o FRAME do SEC XXI
Uso e recomendo, ajuda pra caramba
FALOW !
Filipe 15/11/2007 às 00:36
Ótimo lembrete!!!!
Realmente o pessoal que ainda não usa includes não sabe o que está perdendo. Eu não vivo sem includes já tem muito tempo.
Abraços
Anderson Sá 15/11/2007 às 16:43
Eu concordo. O include é um recurso bastante útil que pouca gente usa. Uma maneira interessante de usar includes é através da extensão .shtml.
Será que é isso que o Joana gostaria de fazer?
Caio 21/11/2007 às 14:52
Acredito que a melhor forma seria fazer uma unica pagina – layout.php – onde teria toda a estrutura do website. A medida que vou montando as paginas uso um “require” chamando o layout.php que tera uma variavel que ira imprimir o conteudo recebido. Uso ‘require’ por questoes de seguranca pois caso algo errado aconteca o ‘require’ logo cancela o script enquanto o ‘include’ continua executando ate o final o script mostrando as vezes dados bestas mas importantes para aqueles mau-intencionados
Matheus de Oliveira 19/04/2008 às 10:58
Será possível que ainda tem gente que não usa includes? Não acredito nisso…:S
Joyce 05/05/2008 às 16:29
É uma mão na roda usar includes! Eu tenho pavor de IFRAMES! É prejudicial em tudo, até na hora de indexar as páginas… Não conheço ninguém que use IFRAMES…
doce 09/06/2008 às 18:27
hummm includes… Tem algo errado em usar para carregar meio de páginas?
Ué, se tiver e daí? Ninguem os vê no navegador mesmo
somebody 08/09/2008 às 17:57
Muito bom usar includes, faço sites amador (apenas para meus interesses particulares, não vendo e não faço para ninguém para não prejudicar quem vive com isso) e eles sempre me ajudaram.
No começo editava pagina por pagina… depois aprendi includes e agora vou além, uso uma página chamada config, por exemplo, nessa eu coloco todo a “programação” do site, isto é, o html ou o php propriamente dito e insiro os includes de menus (para facilitar a edição em separado, como menus com javascript, carregando fora do “principal” deixando a engine mais leve etc), e também link do css.
Nas outras páginas, por exemplo o index.php, eu apenas coloco o texto escrito numa div class que chamo de conteudo principal.
Muito importante aliar o photoshop para desenhar e depois codificá-lo. As includes e, mais ainda, a página config com função top e bottom salvam a vida na hora de reedição total do site em apenas um arquivo.