PHP - Programando orientado a objeto


Às vezes me aventuro em querer programar, e uma das linguagem que mais gosto é o PHP. Até pouco tempo eu não sabia que com PHP era possível programar orientado a objetos. Poiszé...

Fiz um exemplo simples para mostrar como utilizar o PHP desta forma.

Criamos 4 classes como mostra o diagrama abaixo:

Código da classe Pessoa:
<?php
include_once "Curso.php";

class Pessoa {
private $nome;
private $idade;
private $cpf;
private $curso;

public function Pessoa() {

}

public function getNome() {
return $this->nome;
}
public function setNome($nome) {
$this->nome = $nome;
}

public function getIdade() {
return $this->idade;
}
public function setIdade($idade) {
$this->idade = $idade;
}

public function getCPF() {
return $this->cpf;
}
public function setCPF($cpf) {
$this->cpf = $cpf;
}

public function getCurso() {
return $this->curso;
}
public function setCurso($curso) {
$this->curso = $curso;
}
}
?>

Código da classe Aluno:
<?php
include_once "Pessoa.php";

class Aluno extends Pessoa {
private $notas;

public function Aluno($notas=null, $curso=null) {
$this->setNotas($notas);
$this->setCurso($curso);
}

public function getNotas() {
return $this->notas;
}
public function setNotas($notas) {
$this->notas = $notas;
}
}
?>

Código da classe Professor:
<?php
include_once "Pessoa.php";

class Professor extends Pessoa {
private $salario;

public function Professor($salario=null, $curso=null) {
$this->setSalario($salario);
$this->setCurso($curso);
}

public function getSalario() {
return $this->salario;
}
public function setSalario($salario) {
$this->salario = $salario;
}
}
?>

Código da classe Curso:
<?php
class Curso {
private $nome;
private $disciplina;

public function Curso($nome=null, $disciplina=null) {
$this->setNome($nome);
$this->setDisciplina($disciplina);
}

public function getNome() {
return $this->nome;
}
public function setNome($nome) {
$this->nome = $nome;
}

public function getDisciplina() {
return $this->disciplina;
}
public function setDisciplina($disciplina) {
$this->disciplina = $disciplina;
}

}
?>

Código da página index.php:
<?php
include_once "Aluno.php";
include_once "Professor.php";

$curso = new Curso("Redes de Computadores", "Projeto de Redes");

$aluno = new Aluno();
$aluno->setCurso($curso);
$aluno->setNome("Wekler Sarmento");
$aluno->setIdade(24);
$aluno->setCPF("333333333-33");
$notas = array(0, 20, 80, -10);
$aluno->setNotas($notas);

$professor = new Professor("1,00", "Projeto de Redes");
$professor->setNome("Gilberto Sudré");
$professor->setIdade(35);
$professor->setCPF("222222222-22");
$professor->setCurso($curso);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv=
"Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body style=
"font-family:arial;">
<h4>:: Aluno</h4>
<p>

Nome do aluno: <?php echo $aluno->getNome();?><br>
Idade: <?php echo $aluno->getIdade();?><br>
CPF: <?php echo $aluno->getCPF();?><br>
Curso: <?php echo $aluno->getCurso()->getNome();?><br>
Notas na disciplina <?php echo $aluno->getCurso()->getDisciplina();?>:
</p>
<p style=
"margin-left: 40px;">
<?php
foreach($aluno->getNotas() as $nota) {
echo $nota."<br>";
}
?>
</p>
<h4>:: Professor</h4>
<p>

Nome professor: <?php echo $professor->getNome();?><br>
Salário: R$ <?php echo $professor->getSalario();?><br>
Curso: <?php echo $professor->getCurso()->getNome();?><br>
Disciplina: <?php echo $professor->getCurso()->getDisciplina();?><br>
</p>
</body>
</html>

Observe que para chamar um método de um objeto usamos o símbolo "->" (sem aspas). No diagrama mostrado acima as classes Aluno e Professor herdam da classe Pessoa. Para criarmos esta relação no código, usamos a palavra extends, da mesma forma como na linguagem Java. Mas antes é preciso incluir o arquivo que contém a classe Pessoa. Usamos então o método include_once. A diferença do include para o include_once é que este último somente irá carregar o arquivo uma vez.

Temos também o encapsulamento, comum em várias outras linguagens: private, public e protected. O encapsulamento modifica a visibilidade, ou acesso, de um método ou variável.
Com o private, o método ou váriável é visível apenas dentro da própria classe. O public torna visível para qualquer classe ou página. O encapsulamento protected torna visível apenas para as classes que estão relacionadas.

Bom, uma braço pessoal e quem souber de uma ferramenta online que formate o código fonte para ser postado por favor me diga =]

Um abraço

Um pouco sobre criptografia

As decepções da vida não é?!!!

Caso 1: Aquele seu amigão do peito, parceiro de quase todas as horas, mandou um e-mail pra sua namorada contando da pulada de cerca no último feriado, qdo supostamente devido a um forte resfriado, vc não foi vê-la e estava de cama.
Acalme-se! Antes de dar uma lição no seu amigo da onça, certifique-se de que foi realmente ele quem enviou o email dedo-duro!
Ahh, o endereço era dele? Infelizmente isso não significa muita coisa.

Caso 2: Vc passou dias sem dormir, queimando os últimos neurônios disponíveis para impressionar o seu chefe com aquela idéia para a reorganização do seu setor, sonhando até com uma promoção. Trabalha até a madrugada e envia para o email do boss o projeto milionário todo prontinho. Na manhã seguinte, todos recebem a notícia que o Fulano acaba de ser promovido por apresentar a solução mais criativa para a reestruturação do setor. Nada de errado, afinal a idéia foi sua e vc batalhou por ela, porééémmmm, o Fulano não é vc! o.O

Estes cenários ridículos ilustram a falta de segurança no envio/recebimento de mensagens por email. Geralmente não há como autenticar o remetente de uma mensagem e o monitoramento de tráfego pode levar seus emails para mãos erradas.

E agora, que poderá nos defender? A criptografia!

Acho que o assunto vai ser longo então façamos como Jack: por partes!

O que é Criptografia?
Não vou dizer aqui que a palavra criptografia vem do grego ‘kryptós’ [esconder] e “gráphein’ [escrever]. Sendo assim vc terá que deduzir sozinho que seria algo como ‘esconder a escrita’.
A idéia de criptografar ou esconder as mensagens só faz sentido se alguém puder lê-las depois. Mas não qualquer alguém e sim O alguém a quem as mensagens sejam dirigidas, mantendo assim sua confiabilidade e integridade.

Tipos de Criptografia
A criptografia computacional utiliza o conceito de chaves criptográficas para embaralhar/desembaralhar as mensagens.
As chaves são um conjunto de bits baseados em um determinado algoritmo capaz de embaralhar [codificar] e desembaralhar [decodificar] as informações. Assim, apenas o receptor que possuir a chave correta poderá decifrar a mensagem enviada.
O uso de chaves possibilita ao emissor a utilização de um mesmo algoritmo para destinatários diferentes, sem que estes sejam capazes de decifrar as mensagens enviadas aos outros.

Próximo post:
Chaves simétricas e assimétricas
Padrão de criptografia PGP

Abraços =)


Dicas de Segurança para seu Computador - Parte 1

Segurança de dados tem se tornado um assunto comum em rodas de conversas, mesmo até por pessoas que não trabalham no setor de informática. Sempre tem aquelas pessoas que acham que tem mais conhecimentos do que outros e começam a palpitar sobre questões de segunrança, claro que algumas vezes acertam. Diz que nenhuma vez alguém ja tentou te esclarecer como fraudes de bancos acontecem?

A intenção em fazer esse post e outros, é primeiramente esclarecer o funcionamento do computador e de seus softwares básicos, como, sistema operacional, antivírus, antispam e outros, pois não adinata chegar aqui e encher o blog com posts que só expõem termos técnicos que para o usuário final não será muito útil. O importante é conhecer as ferramentas básicas e ao longo do tempo e da seqüência de posts iremos aprofundar melhor nas questões sobre segunrança.

Nesse primeiro post selecionei um vídeo criado pelo CGI.br(Comitê Gestor da Internet no Brasil) que explica de forma clara e intuitiva sobre a história da grande rede e sua utilização, benefícios e malefícios.



Internet via Rede Elétrica

A Internet é um grande auxílio e indispensável para trabalho, estudos e lazer de qualquer pessoa hoje em dia. A Internet como o celular vem se tornando algo indispensável no dia-dia de muitas pessoas, porém é algo que nem todos tem acesso em sua casa.
Para mudar isso, está sendo testada já no Brasil desde o ano de 2008 uma nova forma de transmissão de Internet, que é feita pela rede elétrica.
Esta forma de transmissão promete em uma segunda estratégia, levar Internet a qualquer pessoa que esteja conectado à rede elétrica, tornando mais popular o acesso a Internet. Sem contar na mobilidade que este tipo de tecnologia nos permitirá, pois tendo um modem, você poderá acessar a Internet em qualquer tomada.
Encontrei um vídeo no YouTube que fala sobre o assunto e achei muito interessante compartilhar com vocês, espero que gostem também.

Empresas Juniores

Venho compartilhar com vocês hoje uma idéia muito interessante, Empresa Júnior.
Mas afinal, na prática, o que é e como funciona uma empresa júnior? Como e onde surgiu essa idéia e como eu faço para montra uma em minha faculdade?
Essas questões e alguns comentários que irei expor para vocês a seguir.

Breve Curiosidade.

A primeira empresa júnior surgiu na França em 1967, com a iniciativa de empresários juniores da L´Ecole Supérieure des Sciences Economiques et Commerciales de Paris. Desde então, esse movimento foi aumentando e se difundiu por vários lugares do mundo. Quando fundaram a primeira, as instituições de ensino perceberam que a empresa júnior faturava tanto quanto uma empresa normal. Para se ter uma idéia, o faturamento da empresa júnior francesa no primeiro ano de funcionamento foi de US$ 19 milhões.

O que é uma empresa Júnior?

As empresas juniores são criadas e geridas por alunos de uma ou mais instituições de ensino superior e deve estar sempre ligadas a um ou mais cursos de graduação.
As empresas juniores tem por objetivo principal oferecer aos estudantes a oportunidade de aplicar, aprimorar e desenvolver o conhecimento adquirido durante o curso e de desenvolver a capacidade empreendedora dos envolvidos.Uma empresa júnior é uma oportunidade de integração entre áreas de conhecimento, o que possibilita um aprendizado prático.
Com a empresa júnior o aluno conhece o mercado que pretende atuar, as empresas que atuam na sua área de interesse. As empresas conhecem o futuro e potencial profissional em formação, abrindo assim uma porta de oportunidades.
Alunos que passaram por empresas juniores contam com diferencial de conhecer o mercado, ter experiência de trabalho, conhecer a prática empreendedora e desenvolvimento de suas habilidades empresariais.
Existe hoje no Brasil mais de 750 empresas juniores com mais de 23 mil estudantes envolvidos.
As empresas juniores contam hoje com uma Federação das Empresas Juniores do Brasil, a Rede Brasil Júnior. Existe também uma Federação de Empresas Juniores do Espírito Santo, a JuniorEs .

Como faço para montar uma em minha faculdade?

Para montar uma empresa júnior em sua faculdade procure a federação estadual, ela é a referência do movimento de empresa júnior em cada Estado brasileiro. Além disso, esse estudante que tem vontade de abrir uma empresa júnior deve juntar um grupo com pelo menos mais cinco pessoas, o grupo não deve ser muito grande, porque nesse primeiro momento é interessante que todos os membros compartilhem de um mesmo ideal para poder fazer as coisas acontecerem de uma maneira mais eficiente.

Então pessoal, mãos a obra.

Viagem ao centro do processamento

Image Hosted by ImageShack.us
Um site alemão chamado Nanoreisen nos leva em uma viagem muito legal para conhecer profundamente, mas bem profundamente mesmo, como funcionam e do que são compostos algumas coisas como os pontos brilhantes, nosso corpo e o computador.

A viagem por estes ambientes é repleta de informações. No corpo humano a viajem começa por uma picada de mosquito e adentra em uma célula morta.

No computador a viagem começa falando sobre a memória flash, vai entrando no processador, fala como é o ambiente onde eles são fabricados. Depois segue pelos transistores, pelo silício - principal material que compõe o processador - até chegar a níveis atômicos onde mostra que tanto o computador, os pontos brilhantes e nós, somos compostos, no final das contas, pela mesma coisa - átomos de carbono.



O site é feito em 4 línguas, alemão, inglês, francês e espanhol.
Clique aqui para conhecer.



Um abraço pessoal =]

O que aconteceu com o Speedy

Olá!

Alguns amigos perguntando o que seria exatamente o tal DOS no DNS do Speedy...

Então resolvi colocar aqui em palavras simples o que aconteceu com o serviço da Telefônica.

A empresa divulgou nesta 5ª feira uma nota de esclarecimento informando que seus servidores DNS sofreram ataques de DOS – Denial of Service ou Negação de Serviço.

Como diria Jack, vamos por partes!

O que faz um servidor DNS ?

Bem, obviamente servidor é alguém ou, neste caso, algo, que serve. Um computador mais robusto que serve aos outros.

Tudo que está na Internet tem um endereço numérico chamado IP. Na verdade, tudo são números! Mas já imaginou vc querer encontrar o resultado do jogo do final de semana e ter que lembrar o endereço numérico do site de esportes ? Por exemplo é bem mais fácil memorizar resultadosdaspartidas.com do que 173.200.101.9. Agora imagina guardar todos os endereços IP de todos os sites que vc acessa!? Tarefa impossível!

Para lembrar esses endereços por vc é que existe o servidor DNS. Ele traduz os nomes que digitamos no navegador (oseusite.com.br) em endereços IP [201.132.110.2] Então o conteúdo que queremos é localizado e mostrado para nós.

O ataque DOS ao servidor DNS Speedy

Como divulgado pela Telefônica, o problema foi um ataque de DOS sofrido pelos servidores DNS.

Esse tipo de ataque – DOS [Denial of Service ou Negação de Serviço], ocorre quando o servidor DNS recebe muitos pedidos de tradução de nomes em endereços. Muito mais do que é capaz de suportar.

Imagine apenas uma bilheteria do Maracanã vendendo ingressos na hora do jogo em dia de FLA-FLU decisivo! Pensou na fila, no empurra-empurra? Pois é, o bilheteiro teria um colapso nervoso!

Pois foi o que aconteceu com os servidores Speedy.

Então é isso! Qualquer coisa é só perguntar!

Abraços =)

SBRC 2009

Olá!



O Simpósio Brasileiro de Redes de Computadores e Sistemas Distribuídos (SBRC) é um evento anual promovido pela Sociedade Brasileira de Computação (SBC) e pelo Laboratório Nacional de Redes de Computadores (LARC). Ao longo dos anos, o SBRC tornou-se o mais importante evento científico nacional em redes de computadores e sistemas distribuídos, e um dos mais concorridos em informática. A importância do SBRC pode ser observada pelo número de submissões de trabalhos e de participantes nas últimas edições, tendo sido classificado pela CAPES com o conceito A.

Em sua 27ª edição, o Simpósio será realizado no Recife, capital pernambucana das pontes e rios, de 25 a 29 de maio de 2009. O evento é coordenado pelo Centro de Informática (CIn) da Universidade Federal de Pernambuco. A programação do Simpósio será composta de sessões técnicas, salão de ferramentas, mini cursos, painéis, workshops, palestras e tutoriais de convidados de renome internacional.

Informações e inscrições aqui

PS: Se vc está meio quebrado [relaxe, vc não está sozinho! hehe] a hospedagem em um hostel é uma excelente opção. Minha sugestão aqui. Deste hostel até o local do evento gasta-se +/- R$ 12,00 de táxi, bandeira 2.

Abraços =)

Fonte: SBRC

Estude inglês online gratuitamente


Todos sabemos que o inglês é essencial em qualquer área de conhecimento. Mas principalmente nesta área de tecnologia, não saber inglês é fatal. Pois, muitos dos materiais sobre uma nova tecnologia são lançados primeiramente em inglês. Admito, ainda não sou fluente na lingua, mas estou me esforçando =].

Existem muitos cursos online para se aprender, não só o inglês bem como outras línguas. Um desses cursos pagos é o Englishtown. Apesar de pago, você pode se cadastrar e receber diariamente dicas no seu email gratuitamente.

Agora, para quem não quer pagar nem um centavo, pode praticar o inglês no Livemocha. O site fornece um serviço gratuito com exercícios de escrita, leitura e fala, que podem ser comentados por pessoas nativas na língua. Por exemplo, você realiza uma lição e envia para a comunidade. As pessoas recebem sua solicitação de correção e, os bem intencionados (que são maioria), corrigem para você. É possível até enviar um áudio comentando os seus erros. Show de bola (imparcialidade zero =]).

A comunidade te dá a oportunidade de conhecer mais de 80 línguas. Passando por japonês, alemão, francês até farsi, divehi, cornish.

Já tive boas experiências no site e recomendo. Fale a pena.

Um abraço.

Instalando linux pelo pen drive

Na procura de uma alternatica de instalar o Ubuntu sem a utilização do CD de instalação, encontrei em um outro blog (jmmwrite) uma solução para o problema. Instalar o Ubuntu a partir de um pen drive.
Uma ferramenta chamada UNetbootin faz muito bem este trabalho. A partir da imagem de várias distribuições linux, como Suse, Debian, Ubuntu, Fedora e outras, a ferramenta criar um pen drive "bootável". Agora é só configurar a BIOS para dar boot pela USB e pronto.




Se você já possuir a imagem da sua distribuição escolha a imagem, como destacado na figura acima no passo 1. Em seguida, escolha o tipo "Disco USB" e a unidade onde está o pen drive, como destacado no passo 2. O processo de instalações do Ubuntu 8.10 pelo pen drive levou aproximadamente 8 minutos.
Para baixar o UNetbootine ter mais informações sobre como utiliza-lo visite o site http://unetbootin.sourceforge.net/.


Um abraço

Fonte

Windows 7 (Seven) versão beta teste vídeo

Muito se tem discutido e divergido sobre a última versão do sistema operacional lançado pela microsoft o Windows Vista.

Há alguns meses sou usuário voluntário do Windows Vista Business x64 e como muitos tenho algumas reclamações quanto a alguns pontos do sistema, mas creio que a rede já está saturada de reclamações sobre o mesmo e não vou entrar nesse âmbito.

Com essa motivação em mente me inscrevi no programa beta teste do Windows 7 e a poucos dias atrás instalei e testei as principais funções e aperfeiçoamentos do novo sistema operacional da microsoft.

Posso dizer que os principais pontos de atrito foram corrigidos e melhorados vamos a eles:
  1. Lentidão - Tanto na abertura das janelas e programas, quanto a inicialização (sem barra lateral) estão mais rápidas;
  2. Consumo de recursos - Podemos dizer que 2 GB de Ram resolve, mas sem comparação com o XP;
  3. Avisos insistentes - O recurso e agora configurável;
  4. Rede complicada - As opções de rede foram resumidas e parece simples de usar.
A parte multimidia também foi melhorada assim como alguns recursos de usabilidade úteis foram adicionados.
Em resumo a melhora foi signicativa e eu gostei, mas veja por si mesmos.

Video 1:





Video 2:



Video 3:



Video 4:



Mulheres na carreira de TI

fonte:[imagem]

A equipe Beagle resolveu homenagear as mulheres com esse post falando um pouco sobre elas na carreira de TI, em um breve histórico de como vêm a influência e excelência feminina contando alguns exemplos nesta área.

Desde 1932, ano em que as mulheres conquistaram o direito ao voto, que também vêm conquistando seu espaço no mercado de trabalho. Mas na área de TI, que até então, é uma área predominantemente masculina, as mulheres começaram a mostrar sua excelência.

Um exemplo, de que as mulheres podem inserir-se nesta área, é a CIO da Cinemark, Solange Almeida, que foi eleita a CIO do ano de 2008, segundo a revista INFO. Solange gerencia as mais de 350 salas de exibição espalhadas por todo pais, isso tudo com ajuda da tecnologia. Uma das inovações inseridas na empresa por intermédio dela, foi a venda de ingressos pela internet e entregue via SMS aos clientes.

A Google percebendo a baixa quantidade de mulheres no mercado de TI, resolveu criar ano passado (2008), um prêmio de incentivo as mulheres de TI junto a SBC (sociedade brasileira de computação). O prêmio, batizado de Brazil Women in Technology (Mulheres em Tecnologia no Brasil), foi feito para estimular mulheres a ingressarem no mercado de TI.


fonte: [imagem]

Exemplos de mulheres bem sucedidas na área de TI e incentivos de empresas para que mulheres ingressem nesse mercado existem, agora basta que as mulheres acreditem mais nessa área, pois a presença delas ainda é muito baixa. Por exemplo, na minha sala de aula (Redes de Computores) não há mulheres, haviam, porém todas desistiram.

A equipe Beagle Network TI parabeniza todas as mulheres por seu dia, e deseja muito sucesso.

 
Design by Scooby Doo jogos