14/02/2008,
14:22,
por Rodrigo Sieiro |
Permalink
Houve um tempo em que memória era um recurso extremamente limitado nos computadores. Meu primeiro PC, um 386 SX-33, tinha incríveis 2 MB de RAM. O mínimo para rodar o Windows 95, primeira versão 32 bits do Windows, era 4 MB. Naquela época o consumo de memória e recursos dos programas era extremamente importante, principalmente se você considerar a necessidade de multitasking com tão pouca memória disponível.
Hoje a realidade é outra. Memória é extremamente barata, e já se fala em 2 GB como padrão. O Windows Vista, por exemplo, pede 1 GB só pra rodar (ele até roda com 512 MB, mas convenhamos, não dá).
Ao meu ver, esta aparente “sobra” de recursos tornou os desenvolvedores mais relaxados, se preocupando menos com o consumo destes recursos por seus aplicativos. Até aí não temos um grande problema, se analisarmos um programa isolado, porém a realidade de hoje praticamente nos obriga a rodar diversos programas simultaneamente. E vários destes programas, como E-Mail, Instant Messenger, Player de MP3, Browser, ficam abertos praticamente o tempo todo. E muitos deles “escondidos”, sem interação com o usuário, na maior parte do tempo.
É nesta categoria — programas que estão sempre em execução, e quase sempre rodando em segundo plano — que está o maior problema: não existe tanto impacto no consumo de recursos por cada um individualmente, mas quando somados transformam o computador em uma grande carroça improdutiva.
Vejamos por exemplo o consumo de memória de alguns programas em segundo plano (mas em execução) no meu computador, neste momento:
- iTunes (MP3 Player) - 130 MB
- Pidgin (Instant Messenger) - 15 MB
- Firefox (Browser) - 100 MB
Veja você: apenas três programas, e lá se foram 245 MB de memória do meu computador. OK, são programas “desnecessários”, mas que estão o tempo todo em execução em grande parte dos computadores. Destes eu destaco dois opostos: o consumo do Firefox até pode ser justificado, já que na maior parte do tempo ele está em foco, com várias abas abertas. Já o iTunes engole essa tonelada de memória simplesmente por ficar tocando música, escondido na system tray.
Vale lembrar que nem sempre os programas foram essas jamantas monstruosas. Tomemos como exemplo o Winamp: a versão atual (5.5) consome no mínimo 35 MB de memória com a skin padrão (Bento), e 15 MB com a skin básica (Classic). Já a versão 2.95 (última versão antes de começarem a adicionar um monte de tralhas inúteis) consome meros 5 MB. Aliás, versão que eu recomendo, se tudo que você quer é ouvir MP3, sem firulas.
Uma opção que eu adoto e costuma funcionar muito bem é usar alternativas para programas pesados que fiquem muito tempo em execução. Na lista acima eu citei o Pidgin, e não foi à toa: é uma alternativa leve para outros Instant Messengers cheios de recursos que eu nunca vou usar. Ao invés de usar o programa padrão, aquele que “todo mundo usa”, eu adoto alguns programas mais leves (e gratuitos, vale destacar) que realizam a mesma função. Alguns exemplos:
Um exemplo perfeito de como fazer um programa que vai ficar em execução o tempo todo é o uTorrent. Um cliente torrent com todos os recursos que você precisa, uma interface gráfica muito bem desenhada, e que consome 5 MB de memória em execução (o que pros padrões de hoje é praticamente nada). Um modelo a ser seguido e que nos mostra como fazer um programa totalmente funcional e que não engole recursos como se estivessem sobrando. Por isso me pergunto: por que temos tão poucos programas com filosofia semelhante?