sexta-feira, 28 de novembro de 2008

Bibliotecas:

Como dito anteriormente, funções são uma forma genérica de resolvermos problemas. É como uma caixa preta, você passa os dados para ela e recebe o resultado.

Supondo que tenho uma função de realizar soma, eu só me preocupo em passar para ela os números que desejo ver somado e a função se preocupa em me entregar o resultado, o que acontece lá dentro é problema dela.

Através deste método, dividimos os programas em pedaços de funcionalidades, genéricos e pequenos de preferência, com intuito de utiliza-lo futuramente em situações que sejam convenientes.

Assim como soma, pode-se fazer uma função de subtração, multiplicação, divisão e várias outras e juntando-as se cria a tal famosa biblioteca.

As bibliotecas em si podem ser utilizadas por vários programas. Estes utilizam os subprogramas(funções!) desta mesma biblioteca tornando o programa gerado de menor tamanho, ou seja, o executável só vai possuir as chamadas das funções da biblioteca e não o incluirá no executável.

Só para esclarecer, tenho uma biblioteca que desenha botões em janelas(GTK faz isso). Na hora que se for criar uma agenda, por exemplo, utilizo as funções desta biblioteca sem precisar rescrever estas mesmas funções neste programa.

Em geral, utilizamos algumas funções já prontas para fazer determinadas tarefas que são consideradas básicas. O programador não costuma fazer uma rotina que leia diretamente do teclado ou imprima na tela um caracter.

Isso já existe e é bem implementado (uma coisa interessante de se entender em programação é, o que já existe de bem feito e pode ser utilizado deve ser utilizado). Seu sistema não será menos digno ou pior se você utilizar uma rotina que todo mundo utiliza em vez de ter a sua própria. O que importa e a finalidade do programa e o quão bem implementado ele esteja.

Tais funções que falamos, básicas, fazem parte da biblioteca C padrão (citada acima). Todo compilador C a possui, ele faz parte da padronização ANSI C. Seu compilador, independente do sistema que você utiliza, deve possuir. Outras bibliotecas a mais, além das padronizadas pelo ANSI, também vem junto com seu compilador porém não é recomendado a utilização, caso você queira escrever programas portáveis (que rode em todas as plataformas). Podemos aqui citar programação gráfica, de rede, etc como casos que são "perigosos" para programação portável. Não estou dizendo que você não deve programar para estas áreas, futuramente haverão tutoriais para essas áreas por aqui, porém deve atentar-se que tal programação é peculiar a plataforma que você está utilizando e fazer algo padronizado portável torna-se quase impossível.

Nenhum comentário: