May 26 2007
Por Silveira, tags: programação, Python, Tech, Tutorial.
Persistência, em programação, é guarda alguma informação para você pegar depois.
A solução mais comum para persistência de dados são os bancos de dados, que podem resolver esse problema de uma maneira sofisticada e eficiente.
Por outro lado, para usar um banco de dados você vai precisar:
Tudo isso é chato e complicado, ainda mais se você quer fazer algo bem simples onde o desempenho não é um fator crítico. Você também poderia guardar suas informações num arquivo mas você teria que tratar vários aspectos de baixo nível.
Python tem algumas maneiras simples e fáceis de tratar persistência. Uma delas é o Shelve, que é um módulo padrão do Python.
Para brincar com ele abra seu terminal python digitando python no seu console:
>>> import shelve
>>> arq = shelve.open(’asdf’)
>>> arq['site'] = ‘http://www.python.org’
>>> arq['pi'] = 3.1415
>>> arq['fibo'] = [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]
>>> print arq['pi']
3.1415
>>> print arq['fibo']
[0, 1, 1, 2, 3, 5, 8, 13, 21, 34]
>>> del arq['site']
import shelve vai importa o módulo shelve. arq vai receber o arquivo asdf, que se não existir vai ser criado. Depois disso você pode usar arq como um dicionário comum, indexado por uma string chave. Para deletar alguem do arquivo simplesmente dê um del arq[chave].
Experimente fechar seu console e olhar como ficou o diretório onde você executou o terminal Python:

Um arquivo asdf foi criado. Você não precisa se preocupar como esses dados estão guardados dentro desse arquivo, o shelve vai cuidar disso para você.
Agora se você abrir novamente o console dentro desse diretório:
>>> import shelve
>>> arq = shelve.open(’asdf’)
>>> for chave in arq:
… print chave, arq[chave]
…
fibo [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]
pi 3.1415
Tadã! Seus dados de volta.
Fica bem mais fácil fazer programas com persistência agora não é?
Vá mais longe! Livros de Como Programar em Python pelos menores preços.
Buscapé.
Livros de bolso em geral são ótimos.

Eu estava querendo comprar um bom livro de Python mas devido a fortes cortes na minha verba destinada a literatura técnica, teve que ser um livro de bolso mesmo.
Mas livros de bolso e cartões de referência tem suas vantagens, são pequenos, baratos, leves e vão direto ao assunto.
É chato ter um livro que pesa como um halteres e que na prática você só vai precisar mesmo para consulta.
O livro que eu comprei, e já li, e que está aí na foto é o Python Guia de Bolso do Mark Lutz, da O’Reilly e públicado no Brasil pela Alta Books.
O livro em si é muito bom, trata desde assuntos básicos como operações com listas, tuplas, strings, arquivos, passando pela sintaxe da linguagem e tocando em assuntos como Tkinter, Banco de Dados, persistência de objetos, expressão regular e alguns modulos padrão do Python.
Esse livro somado a um console Python, é diversão garantida. Outro item a favor dele é que ele ficou pequeno e leve, realmente um livro de bolso.
Os contras desse livro ficam por conta da edição brasileira. A tradução é péssima, são incontáveis erros. Alguns comandos que deveriam ter sido escrito em inglês foram traduzidos, algumas coisas que deveriam ter sido traduzidas não foram.
A coisa tá bizarra. Tá bizarra e perdeu um
na minha avaliação. Tá certo que o livro original não tem esses problemas, mas é uma forma que eu tenho de dar um puxão de orelha nessas editoras que fazem essas traduções preguiçosas.
O veredicto é:

Ganhou uma nota boa, mas é porque o Python ajudou e o livro tá muito barato. Eu comprei o meu por menos de R$ 20,00 aqui na minha cidade.
Pesquise os menores preços desse e outros livros de Python e saia programando por aí. Buscapé.
Passei esses dias procurando um bom tutorial de JNI mas tudo que eu achei era muito complicado e voltado para versões mais antigas do Java.
JNI é o jeito padrão de fazer com que uma aplicação Java chame implementações nativas, o que pode ser muito bom em eficiência.
Demorou um bocado mas eu finalmente consegui fazer um Olá Mundo em JNI e eu escrevi um tutorial de como fazer um olá mundo em JNI.
Quer ir mais longe? Livros! Pesquise os menores preços de livros de programação em Java no Buscapé.
O C não oferece um bom conjunto de estruturas já embutido na linguagem.
Eu estou sempre a escrever estruturas como lista encadeada, fila e pilha. Eu perco esses códigos e depois acabo escrevendo denovo. Para que isso não aconteça mais comigo e para que outras pessoas não passem por isso eu vou gradualmente começar a disponibilizar esse tipo de código sempre que eu implementalos.
Para começar uma pilha escrita em C (eu e o Marco fizemos esses fim de semana) que você pode usar em pequenas aplicações.
Como é de costume meu e do marco, está tudo no que nos acreditamos ser C padrão e portanto pode ser compilado em qualquer lugar.

Quer ir mais longe? Livros! Pesquise os melhores preços de livros sobre programação no Buscapé.