quarta-feira, 3 de janeiro de 2001

Como criar classes

Acredito que vc conheça o conceito de classes. Como minha formação em processamento de dados data alguns anos, não saberia explicar "didaticamente", mas segue uma explanação mais "simplista".

 

Podemos definir classes como um objeto, com seus próprios métodos (funções que atuam sobre este objeto) e propriedades (variáveis do objeto). Assim, o comando MyClass.Build() chama o método Build do objeto MyClass e MyClass.Titulo = "xyz" define o valor da propriedade Titulo do mesmo objeto. Pra quem acha isso complicado, vale o lembrete que, quando criamos um objeto ADODB.Connection, facilmente trabalhamos com suas propriedades (CursorType, Provider, etc) e métodos (Execute(), Open(), etc).

 

Classes podem ser criadas facilmente no VBScript, mediante a utilização de alguns comandos não comumente usados. O uso de classes pode ser útil pela reutilização do mesmo código em diversas partes da aplicação e pela facilidade de atribuir seus valores. Pense no exemplo de paginação: qtas páginas de seu site usam o recurso de paginação, com a alteração de apenas uma ou duas características ? Pense qto código pode ser economizado com a utilização de apenas um código genérico. E lembre-se que o ASP é interpretado; ou seja: qto menos código, mais rápido a aplicação roda.

 

O primeiro dos comandos necessários é o Class, que define o nome da Classe. Não tem muito o que dizer, exceto que ele deve ser terminado com End Class, que vai depois de todo o código da Classe, englobando-a.

 

Após definir o nome da classe, vc precisa definir as propriedades. Vc pode simplesmente colocar Public Propriedade e então esta variável pode ser acessada externamente à ela. Caso coloque Private MyVar, esta variável terá escopo apenas dentro da classe. Muita gente usa o Propriety, que permite executar uma sequencia de comandos quando o valor da propriedade for atribuido, permitindo consistir os dados entrados.

 

Após a definição das propriedades, podemos definir os métodos. Assim, o comando Public Default Sub NomeMetodo define o método padrão para a Classe. Vc tbém pode definir o escopo para Private, fazendo com que a sub/function seja acessível apenas internamente à classe.

 

Pode parecer complicado, mas, com isso, vc já pode criar uma classe, como no exemplo abaixo:

 

<%
Class HelloWorld

 

Private Texto_a_ser_mostrado

 

Public Property Let Texto ( cString ) 'Isso declara a *variavel* pública "Texto"
Texto_a_ser_mostrado = iif( len( cString & "" ) = 0, "Hello world!", cString )
End Property

 

Private Function iif( condicao, valor1, valor2 )
  if condicao then iif = valor1 else iif = valor2
End Function

 

Private Sub ChecarSeTudoOk()
    if len( Texto_a_ser_mostrado & "" ) = 0 then Texto = ""
End Sub

 

Public Default Sub ShowMessage
    ChecarSeTudoOk()
    response.write Texto_a_ser_mostrado
End Sub

 

End Class

 

Dim oHelloWorld
Set oHelloWorld = New HelloWorld
With oHelloWorld
     '.Texto = "Hi there!"
     .ShowMessage()
End With


%>

 

Vc pode pegar o trecho do Class (as linhas entre o "Class HelloWorld" e o "End Class", inclusive) e colocar em um arquivo chamado HelloWorldClass.asp e incluí-lo no seu script, com <!-- #include file="HelloWorldClass.asp" -->

 

Com certeza este tutorial nao esgota o assunto. Mais info sobre Classes podem ser encontradas em www.4guysfromrolla.com

 

Divirtam-se!


Esta matéria foi postada originalmente no ASP4Developers por Rubens N. Farias (site), que na época era "pós-graduado em análise de sistemas orientados a objetos, MCP, MCSD, MCAD, MCSD.NET e consultor em TI, além de idealizador do projeto ASP4Developers. Desenvolve sistemas sob medida, focados na satisfação do usuário, com qualidade e custo realista.". Hoje, vai saber...

0 comentários: