Boicotaram a minha internet

26 Abril, 2007

Desde semana passada, estou sem internet, tive alguns problemas, mas graças ao bom Deus, já foram solucionados, não aguentaria ficar mais um dia sem orkut. rs. Agora posso voltar a postar, essa semana também troquei de trabalho, ou seja, a semana foi super agitada, enfim só postei pra avisar que ainda estou vivo.

ps: Se por um acaso o seu modem da velox queimar (deixar de funcionar), seja por qualquer motivo, nunca, jamais, em tempo algum, ligue para o seu provedor pedindo outro modem, pois terá que esperar a boa vontade deles de entregarem. Até chegar no estado em que você não aguentará ficar sem internet e não conseguir dormir aguardando o tão esperado momento de navegar, (sempre achei esse termo muito cafona, mas foi a melhor palavra que achei no momento) e acabar comprando por conta própria, mesmo não tendo dinheiro para tal, pois uma semana e um dia sem internet é desesperador, mas desesperador que no domingão ver Rei Majestade (programa do Silvio Santos) e depois ir direto ver Faustão, agora deu pra ter uma idéia do que é ficar sem internet, né.

Agora deixa eu ir, pois tenho que passar muitas hora na frente do pc, pra recuperar o tempo perdido.

fuiii…


Variável $this

19 Abril, 2007

Estamos acabando a série de POO, espero que esteja gostando, hoje falaremos sobre a variável $this, anteriormente utilizei-a, porém não expliquei o uso. Agora se concentre bastante nas minhas próximas palavras, pois isso irá mudar a sua vida, se você não tem nervos de aço é melhor trocar de blog (por favor, não faça isso, foi só força de expressão), respire fundo que agora vou explicar-lhe. Que rufem os tambores…

A variável $this representa o próprio objeto. (pode acreditar é só isso, porém vou falar mais sobre isso pra encher lingüiça, porque senão o post vai ficar muito pequeno.)

Pois bem, toda vez que temos a variável $this dentro de uma classe, a variável $this se refere ao objeto em si.

Utilizando o exemplo do post anterior:


Class conta {
var $saldo;
Function conta{ // construtor
$this -> saldo = 50;
}
Function ver() { //método
Return $this -> saldo;
}

Function credito($valor){ //método
$this->saldo += $valor;
}
}
?>

$minhaconta = new conta;

No exemplo acima, o próprio objeto minhaconta, em todos os métodos (incluindo o construtor), recebe o valor da variável $conta, quando a variável $this recebe os valores.

Fuiii…


Métodos e Construtores

15 Abril, 2007

Continuando…

Método

Podemos pensar no método como uma função, pois na verdade é isso, o que diferencia um método é o fato dele se encontrar em uma classe. Nele há toda a implementação da rotina para aquela classe, quase todas as classes são compostas por um conjunto de métodos (funções), na verdade diria todas, mas sempre aparece algo diferente por aí, então já viu. Exemplo:


Class MinhaClasse {
Function MeuMetodo () {
/* Código */
}
}

A function MeuMetodo é o nosso método.

Agora que você sabe tudo de métodos, vamos a mais um conceito chamado de construtor.

Construtor

Construtores são métodos executados no momento em que se instância um objeto, para se ter um construtor, basta que coloque o nome do método com o mesmo nome da classe à que pertence. Muito utilizado para inicializar variáveis. Ilustrarei isso tudo com um exemplo, diga-se de passagem todos usam esse exemplo.

Class conta {
var $saldo;
Function conta{ // construtor
$this -> saldo = 50;
}
Function ver() { //método
Return $this -> saldo;
}

Function credito($valor){ //método
$this->saldo += $valor;
}
}
?>

$minhaconta = new conta;

O código acima representa três tarefas, bem simples, da conta de um banco, quando abro um conta (instancio o objeto), automaticamente tenho 50 de crédito na conta, pois utilizei um construtor o qual no momento em que instancio o objeto tenho 50 de crédito, e tenho dois outros métodos que me permite, ver o saldo (function ver) e depositar crédito (function credito).

Como diria aquele coelhinho da Warner
Isso é tudo pessoal.

Fuiii….


Classe dos Objetos

10 Abril, 2007

Aqui estou eu, continuando a série de POO, já falamos anteriormente sobre objeto e iremos tratar hoje sobre a classe dos objetos.

Classe

Descreve um conjunto de dados estruturados e caracterizados por propriedades comuns. Uma classe é um conjunto de objetos que têm as mesmas operações (métodos), falei bonito agora.

Imagine uma turma (classe) qualquer, pois bem nessa turma possuem alunos (objetos). E nessa turma os alunos têm interesses comuns, portanto vão estudar as mesmas matérias (métodos). Nisso em que se baseia a classe, claro que há exceção, nem todos os alunos (objetos), necessitam ter as mesmas matérias (métodos) a cursar.

Ou seja

Uma classe de objetos pode ser definida como a descrição de um grupo de objetos mediante um conjunto de uniforme de atributos e serviços. Agora que estamos com bastante conceito, nada melhor que um bom exemplo:

Class Nome_da_classe {
Var $variavel1;
Function metodo_da_classe ($parametro) {
/* Corpo da Função (método) */
}
}

$objeto = new Nome_da_classe;

Criamos uma classe contendo um método (function) e depois instanciamos (inicializamos) o objeto.

Essa parte você já sabe, eu peço que você comente e agradeço por ter lido o post todo (essa parte é nova).

Fuiii…


Curiosidade sobre Quebra de Linha.

7 Abril, 2007

Se vc já se peguntou porquê a quebra de linha é representada por 2 caracteres e não sabia o motivo…ai vai:

Existem três padrões diferentes de representação do final de linha de texto. Em síntese, os Macs da Apple usam o caracter CR. O Unix e suas variantes usam o caracter LF. Os sistemas Microsoft, desde o MS-DOS até ao Windows usam ambos, juntamente(aff!).

Se você quer saber a história por detrás disto:

CR significa “Carriage Return” (“Regresso ao Berço” o famoso retorno do carro da máquina de escrever), e vem do conceito antigo, nas máquinas de escrever / teletipos, de um comando para deslocar a impressão a partir da direita da página, de volta à esquerda, quando chegava ao fim;

LF significa “Line Feed” (“Avanço de Linha”) e vem do conceito antigo, nas máquinas de escrever / teletipos, de um comando para deslocar a impressão para baixo uma linha;

CR/LF, juntos, significa mover para baixo uma linha e regressar à esquerda da página.(da ai vem a idéia da tecla enter ter com símbolo um tracinho para baixo e uma setinha para a esquerda.)

Em princípio, a história não é relevante nos computadores de hoje mas, na prática, todos eles usam o legado destas convenções, e não há nada que possamos fazer senão escolher uma.

referência: http://www.gutenberg.org

“A morte de um Homem ocorre, quando este desiste de aprender.”


O elemento abbr

3 Abril, 2007

Hoje li um post no Revolução e etc, que chamou-me a atenção, então resolvi fazer um fast-post, existe um tal elemento abbr, que a função dele é fazer uma abreviação de uma palavra, e se passar o mouse por cima da palavra aparece uma etiqueta com o significado completo da palavra, através da propriedade title, o uso dela é bem simples:

CSS
<abbr title="Cascading Style Sheets">CSS</abbr>

Só pra variar o IEca não dá suporte a esse elemento. Como de costume, existe maneiras de transpassar por esse problema, aqui vai uma delas:

Function abbrToSpan(){
var newSourceCode;
if(isIE){
newSourceCode = document.body.innerHTML;
newSourceCode = newSourceCode.replace(‘<ABBR’,'<SPAN class=”abbr”>’);
newSourceCode = newSourceCode.replace(‘</ABBR>’,'</SPAN>’);
document.body.innerHTML = newSourceCode;
}
}

window.onload = function(){
abbrToSpan();
/* other onloads */
}

isIE = (document.all) ? true:false;

Aqui vai o link do código.

O código é bem simples, substitui as tags abbr por tags span com a classe abbr, que ela por sua vez, vai estar configurada no css (estilo).

Entendido o assunto, vou estende-me um pouco mais, existem diferenças entre abreviações, há aquelas que se fala letra por letra da abreviação (CSS, HTML, PHP etc), mas há aqueles onde formam uma palavra (Modem, ALCA, ONU etc) e para esse segundo grupo utilizamos a tag acronym o qual funciona de forma semelhante:

ONU
<acronym title=”Organização das Nações Unidas”>ONU</acronym>

Esse é suportado pelo IEca 6.

Diálogo:

Você: _ Porque não utilizo somente o acronym, já que o resultado é o mesmo e ainda é suportado pelo IEca 6?
Eu: _ Confesso que não tenho argumentos convincentes, mas o que posso dizer é que se a sua página contém abbr e acronym e utilizar só acronym, se quiser dar estilos diferentes a cada elemento vai ser tudo igual, pois é o mesmo elemento.

Você: _ Mas, eu não poderia distinguir abbr e acronym com classes distintas?
Eu: _ Poderia, mas o código vai ficar mais sujo.

Conclusão:

Não há problema de utilizar o acronym, a não ser que você tenha problemas com códigos sujos.

Agora, vou embora, pois hoje completo mais um ano de vida e vou comemorar um pouquinho, pois ninguém é de ferro.

Bibliografia:
Maujor

Fuiii…