Vou divulgar dois eventos online e gratuitos que serão realizados pelo grupo de usuários Adobe do Rio Grande do Sul.
Eventos online e gratuitos sobre Adobe Flex
Por que Flex? Participe e concorra
… a uma licença Flex Builder 3 Professional!!!
É um Concurso Cultural, quer saber como participar?
Dá uma olhada no vídeo feito pelo Igor Costa através desse link:
http://www.flexbrasil.org/porqueflex/
Participe enviando seu vídeo para o youtube e indexando-o com a tag: “porqueflex“ tudo junto e minúsculo, muito atenção para esse detalhe pois seu vídeo pode não ser indexado adequadamente se escrever, por exemplo, “Por que flex“.
Um abraço pra todos!
Quando se constroem aplicações web, é normalmente uma boa prática configurar-se o ambiente de desenvolvimento de forma a que seja o mais semelhante possível ao ambiente de produção.
Uma das configurações que se faz antes de se iniciar o desenvolvimento do projecto, é a criação de um virtual host cuja configuração seja o mais idêntica possível à configuração do servidor onde o projecto estiver alojado.
Entre outras configurações, a mais importante é a estrutura de directorias, que em desenvolvimento é diferente da estrutura em produção.
Regra geral, quando se trata de uma aplicação com backend e um backoffice nós costumamos organizar o nosso ambiente de desenvolvimento desta forma:
1 2 3 4 5 6 7 8 9 10 | \projectos\projecto</p> <p>\projectos\projecto\frontend<br /> \projectos\projecto\frontend\bin-debug (binários da aplicação)<br /> \projectos\projecto\frontend\src<br /> \projectos\projecto\frontend\[...]</p> <p>\projectos\projecto\backoffice<br /> \projectos\projecto\backoffice\bin-debug (binários do backoffice)<br /> \projectos\projecto\backoffice\src</p> <p>\projectos\projecto\backend (backend, por exemplo em php)<br /> \projectos\projecto\mm (imagens, e outros recursos multimédia) |
Quando corremos a aplicação localmente, sem os virtual hosts, vamos obter algo como http://localhost/projecto/bin-debug/index.swf .
Para que a aplicação possa comunicar com o backend, o path para o gateway será por exemplo algo como ../../backend/gateway.php .
Para que a aplicação possa aceder aos recursos multimédia (imagens, etc) o caminho será algo como ../../mm/imagem1.jpg .
Estes caminhos não batem certo com os caminhos na versão de produção:
1 2 3 4 | www.projecto.pt (binários da aplicação)<br /> www.projecto.pt/backoffice (binários do backoffice)<br /> www.projecto.pt/backend (backend, por exemplo em php)<br /> www.projecto.pt/mm (imagens e recursos multimédia) |
Vemos que na versão de produção a aplicação para aceder ao backend vai fazer o caminho backend/gateway.php – enquanto que na versão de desenvolvimento, fazia o caminho ../../backend/gateway.php . O mesmo se aplica para as restantes directorias.
Há muita gente que trabalha com a estrutura de directorias e caminhos do ambiente de desenvolvimento, e quando chega a altura de alojar o projecto, mudam os caminhos no source code (ou num ficheiro de configuração) e recompilam – má prática.
Solução: criar um virtual host
O Apache permite que se associe um ambiente com configurações específicas a um determinado domínio. Ou seja, se o Apache receber um pedido de acesso ao dominio www.projecto.dev , e houver um virtual host para esse dominio, podemos configurá-lo para devolver a nossa própria estrutura de directorias (e não só).
O que gostariamos era de escrever no browser www.projecto.dev , e ser-nos exposto o nosso projecto com a estrutura de directorias igual à estrutura que vamos obter no servidor.
Vamos começar por configurar o apache editando o ficheiro httpd.conf na directoria conf do apache. No final do ficheiro, basta adicionar as seguintes linhas:
1 2 | NameVirtualHost 127.0.0.1<br /> Include conf/vhosts/*.conf |
A primeira linha permite que o apache possa associar os nomes dos domínios pedidos aos virtual hosts que vamos configurar (mais info aqui).
A segunda linha indica ao Apache para carregar e executar todos os ficheiros de configuração com a extensão .conf na directoria vhosts. Isto fará com que criar um novo virtual host seja algo como criar um novo ficheiro .conf na directoria vhosts.
Vamos agora à directoria vhosts, e vamos criar um ficheiro chamado projecto.conf .
Nesse ficheiro, vamos colocar o seguinte:
1 2 3 4 5 6 7 8 9 10 11 12 13 | <VirtualHost 127.0.0.1:80><br /> DocumentRoot "D:\OsMeusProjectos\projecto\frontend\bin-debug"<br /> ServerName www.projecto.dev<br /> <Directory "D:\OsMeusProjectos\projecto\frontend\bin-debug"><br /> Options Indexes FollowSymLinks Includes ExecCGI<br /> AllowOverride All<br /> Order allow,deny<br /> Allow from all<br /> </Directory></p> <p> Alias /backend "D:\OsMeusProjectos\projecto\backend"<br /> Alias /backoffice "D:\OsMeusProjectos\projecto\backoffice\bin-debug"<br /> Alias /mm "D:\OsMeusProjectos\projecto\mm"<br /> </VirtualHost> |
Isto vai indicar ao Apache que os pedidos recebidos na porta 80, máquina 127.0.0.1 relativos ao domínio www.projecto.dev irão ter a directoria bin-debug do frontend como a directoria de raíz do projecto. Os Aliases permitem que o Apache exponha o backend, backoffice e mm em directorias específicas, resultando assim num ambiente igual ao de produção.
Depois de feita a alteração acima, é preciso reiniciar o Apache.
Falta conseguirmos fazer com que pedidos para www.projecto.dev vão parar ao Apache. Para isso, vamos mexer no ficheiro "hosts" do Windows para forçarmos o redireccionamento de pedidos para www.projecto.dev para a nossa máquina local.
Basta para isso editar o ficheiro hosts (mais info no wikipedia), na directoria c:\windows\system32\drivers\etc . Recordo que no Windows Vista, será preciso abrir um editor de texto com permissões de administrador, e depois fazer o File > Open e procurar o ficheiro no disco – caso contrário não será possível editá-lo.
Neste ficheiro, bastará colocar o seguinte:
1 | 127.0.0.1 www.projecto.dev |
A linha acima vai indicar o sistema operativo que todos os pedidos feitos para o domínio www.projecto.dev vão ser reencaminhados para 127.0.0.1 – a nossa máquina local. Como estamos a fazer os pedidos dentro de um web-browser, a porta por defeito será a 80. O resto é fácil de adivinhar: pedidos para a nossa máquina local na porta 80 vão ser entregues a quem? Ao nosso amigo Apache! Que ao receber um pedido destinado ao domínio www.projecto.dev, vai procurar o Virtual Host respectivo e expô-lo com a estrutura que definimos.
Obviamente, isto abre-nos as portas para fazer configurações mais radicais (i.e. configurar o Apache para que o Virtual Host seja igualzinho ao do servidor final).
WebOrb 3.6 para .NET está disponível
Semana Microsoft nas nuvens
A semana do dia 15 ao dia 19 deste mês será recheada de ótimos webcasts sobre a plataforma de desenvolvimento nas nuvens da Microsoft. Acompanhe as palestras e mergulhe nas nuvens.
As palestras ocorrerão todos os dias a partir das 20hrs.
15/12/2008 – Windows Azure – Deep Dive
16/12/2008 – Live Services
17/12/2008 – .NET Services
18/12/2008 – SQL [...]
Domingo passado eu orientei o Anderson, que me mandou o seguinte depoimento sobre a aula recebida.
Bom, após aprender muita coisa com os screencasts feitos pelo Vedovelli, decidi aprofundar mais meus conhecimentos no Flex, foi então que fui atrás do serviço de orientação.
Passei para o Ved minhas dúvidas e o que eu gostaria de aprender, após [...]
Usando checkboxes em uma relação habtm no Rails
Uma dúvida muito comum entre quem está começando a programar em Rails é como colocar uma série de checkboxes que representam uma relação habtm (
1 | has_and_belongs_to_many |
, ou muitos-para-muitos) entre dois modelos. É sobre isso que vou falar neste artigo. Este exemplo foi executado no Rails 2.1.
Vamos tomar um exemplo simples: Livros e Categorias. Um livro pode estar presente em várias categorias, e uma categoria pode conter diversos livros. Seus models ficam mais ou menos assim:
-
#Model Livro
-
has_and_belongs_to_many :categorias
-
-
#Model Categoria
-
has_and_belogns_to_many :livros
(…)
Leia o restante do artigo Usando checkboxes em uma relação habtm no Rails (63 palavras)
© Elvis for Elvis Fernandes, 2008. |
Permalink |
3 comentários |
Adicione ao
del.icio.us
Tags: checkboxes, habtm, Rails, RoR, ruby on rails
Me deparei com uma extensão para o Firefox chamada Xoopit cuja função é vasculhar suas mensagens recebidas no Gmail, buscando por anexos, tais como fotos, arquivos e links do Youtube, catalogando-os numa interface própria, porém, integrada ao Gmail.
Um vez indexados, os anexos ficam a sua disposição sendo possível fazer searches por nome de pessoas, [...]
Screencast: visualizador de imagens do Flickr
O Beck Novaes da DClick está fazendo uma série de screencasts matadora sobre o desenvolvimento com Flex. O primeiro screencast, Construindo uma aplicação Flickr em 10 minutos, mostra passo a passo as primeiras linhas de vida de uma aplicação dessa.
No screencast ele aborda conceitos que vão desde HttpService, passando por binding, states e efeitos. Simples e direto. Vale a pena conferir, mesmo para quem já domina a linguagem.
Posts relacionados
© Elvis for Elvis Fernandes, 2008. |
Permalink |
Nenhum comentário |
Adicione ao
del.icio.us
Tags: efeitos, Flex, web services




