Como programar com OOP em PHP, uma classe simples

O mundo da programação orientada à objetos (OOP), tornou muito mais simples a forma como se programa. Programar com procedimentos, era e é muito cansativo, embora possamos programar em PHP com procedimentos, escrever um aplicativo orientado à objetos é muito mais fácil de ser manipulado.

[ Hits: 31.864 ]

Por: Jaziel M em 10/07/2003


Classe



O mundo da programação orientada à objeto (OOP), tornou muito mais simples a forma como se programa. Programar com procedimentos, era e é muito cansativo, embora possamos programar em PHP com procedimentos, escrever um aplicativo orientado à objetos é muito mais fácil de ser manipulado.

Mostro uma classe que tem no construtor as configurações padrão sobre a aparência de uma página html, formatação dos textos, criamos duas instâncias e alteramos o tamanho texto na 1ª instância e a cor de texto na 2ª instância.

Na classe abaixo, abordo uma forma fácil de formatar uma página, sem necessidade de criarmos htmls quando queremos editar algo na mesma, sendo mais fácil chamar uma instância da classe com as funções pré-definidas.

Inicio do arquivo.

<?php

/* inicio da classe teste construtor teste e funções */

class teste {

function teste ($corfonte="#000000", $corfundo="#999999", $fonte="Arial", $tamanho="3",$alinhamento="CENTER",$alink="#AA00AA", $vlink="#AA00AA" ,$link="#3333FF",$cor="blue") {
   $this->text=$corfonte;
   $this->bgcol=$corfundo;
   $this->face=$fonte;
   $this->size=$tamanho;
   $this->align=$alinhamento;
   $this->alink=$alink;
   $this->vlink=$vlink;
   $this->link=$link;
   $this->cor=$cor;
}

/* função que muda o o conteúdo das variáveis dados de uma instância */
function mudar ($varname, $value) {
$this->$varname=$value;
}

/* função que carrega o bode da página em uma instância */
function corpodapagina() {
   echo "<BODY BGCOLOR=\"$this->bgcol\" TEXT=\"$this->text\" LINK=\"$this->link\" VLINK=\"$this->vlink\" ALINK=\"$this->alink\"><FONT FACE=\"$this->fonte\" SIZE=$this->tamanho>\n";
}

/* função que formata um texto */
function texto ($message="&nbsp;") {
   echo "<$this->align><FONT FACE=\"$this->face\" SIZE=\"$this->size\" COLOR=\"$this->cor\">$message</FONT><BR>\n";
}

} // fim classe

/* fim da classe teste */


/* Cria instâncias da classe teste */

$instancia1 = new teste;
$instancia2 = new teste;

/* Inicio de impressão do html */

/* imprime a aparência da página com instância 1*/

$instancia1->corpodapagina();
$instancia1->mudar('size','6');


/* imprime o título com a instância 1*/
$instancia1->texto('Título da Página');


/* mudar a cor da fonte na $instancia2 */
$instancia2->mudar('cor','red');


/* imprime mais texto com a nova cor */
$instancia2->texto('Esse texto da instância 2.');

/* aqui, podemos criar chamar e alterar instâncias para criarmos toda pagina */
?>

Link para executar a classe acima:
   

Páginas do artigo
   1. Classe
Outros artigos deste autor

Inteligência Artificial com PHP e MySQL (parte I)

Leitura recomendada

Acessando o Twitter de 5 formas: protocolo HTTP, cURL, classe HttpRequest (PHP), função http_post_fields() do PHP ou PHP+libcurl

Abordagem exemplificada de orientação à objeto com PHP 5

Como atribuir notícias RSS ao seu site usando ATOM e PHP

Usando cache na classe Fast Template

Instalando Lamp Stack no Servidor Debian

  
Comentários
[1] Comentário enviado por asrocha em 15/07/2003 - 08:42h

Com certeza a oop só tem a acrescentar e aumentar a produção, porém acho que é muito difícil para programadores que estão acostumado com C, pascal, php e outras começarem utilizar realmente a orientação a objeto, porque é um outro paradigma de programação creio que para programar orientado a objetos realmente, é necessário pensar como objeto. E para alguns programadores "mais velhos" pensar orientado objetos é extremamente difícil pois ele está acostumado a pensar procedural. Mas uma coisa tem que ser dita que é só começando mesmo, metendo a mão na massa que vc vai adaptar-se a oop, e depois quando você chegar ao nível de pegar um projeto e enxergar nele os objetos sua produção aumentará em muito além da qualiade dos seus softwares.

[2] Comentário enviado por ciro em 15/07/2003 - 10:57h

Prezado,
Li o seu artigo achei interessante.

Programação orientada a objetos é uma mão na roda, pena que ainda pouco utilizada em php.

O importante da programação OOP é pensar como um objeto. e quando se fala em objetos temos que analisar detalhe por detalhe, isso consome tempo, em OOP modelagem de dados significa muito.

Sorte a todos !!!!!!!!!!

[3] Comentário enviado por salvini em 02/03/2007 - 11:56h

Desenterrando os comentários... :)

É bom ver que 4 anos depois OO cresceu tanto! Acredito que graças ao PHP5... Java e etc.

[4] Comentário enviado por marceloprocopio em 18/10/2007 - 16:08h

Paradigmas melhores são para substituir os que atuais que não são necessariamente piores. mas, OOP é mais produtivo sim quando bem projetado. Sou programador há muito tempo e estou custando a pensar Orientado a Objetos. Fui forçado a fazê-lo quando a empresa em que eu trabalho adotou dotnet. Agora estou forçado a pensar orientado a objetos se não minha cabeça roda. Está custoso, mas, estou gostando de pensar diferente. Este artigo é muito simples e de grande ajuda. Obrigado, Jaziel.

[5] Comentário enviado por arieldll em 02/06/2012 - 09:24h

Acredito que o maior problema ainda de linguagens como PHP, é que as páginas não conseguem nem ser bem testadas e já estão disponibilizadas. Orientação a objeto consome tempo, porém organiza, e a maioria das empresas WEB que tem chefes que não entendem nada, não sabem a diferença entre o procedural e o orientado a objeto, então, querem produzir o código mais rápido, e não o melhor, assim muitos não se adaptam.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts