Página 1 de 1
OOP em [x]Harbour
Enviado: 03 Mar 2009 11:43
por Endrigo Rodrigues
Olá.
Gostaria de saber como fazer Herança, Polimorfismo e Encapsulamento em Harbour ou xHarbour.
Se alguém puder citar exemplos e como fazer isso em algumas IDEs, agradeço.
Re: OOP em [x]Harbour
Enviado: 03 Mar 2009 12:51
por vailton
Isto vai pelo compilador e não pela IDE... vc conseguiria montar um programa visual inteiro via comandos de programação sem usar uma unica IDE. O que importa é o compilador e por falar nele o Harbour oferece suporte à classes usando a compatibilidade com a Class(y) antiga lib do clipper que oferecia suporte OOP.
Inclusive para vc poder "abrir" um pouco mais a sua mente, é possível criar uma ou mais classes OOP sometne usando as funções de manipulação de classes oferecidas (mas aÊ é coisa de hacker e ñ vale a pena)...
Este exemplo mostra como usar HERANÇA com HB (clasinh.prg) :
Código: Selecionar todos
#include "hbclass.ch"
function main()
local oObject, oBase
oObject := TAnyClass():New()
oBase := TClassBase():New()
return nil
class TClassBase
method New()
method Test() INLINE Alert( "Test" )
endclass
method New() class TClassBase
return Self
class TAnyClass from TClassBase
method New()
endclass
method New() class TAnyClass
super:New()
super:Test()
return Self
E sobre há ainda mais alguns interessantes na pasta tests:
* clsscope.prg -> demonstration/test code for class method scoping
* clsnv.prg --> demonstration/test code for non virtual hidden messages
Vailton Renato
Re: OOP em [x]Harbour
Enviado: 03 Mar 2009 13:55
por Endrigo Rodrigues
Interessante Vailton. Mas existe alguma IDE que trabalha com isso, ou tenho que fazer tudo na mão?
Por exemplo: Criar um formulário base de cadastros contendo alguns controles e utilizar herança desse formulário.
Obrigado pelas explicações, vou baixar o Harbour e realizar os testes que me passou.
Re: OOP em [x]Harbour
Enviado: 03 Mar 2009 16:19
por vailton
Me parece que na MiniGUI existem 1 ou mais opções de IDE (os amigos do forum poderão me corrigir sobre isto), a hwGUI possui o DESIGNER para montar as telas, lembro-me que a xHGtk tinha a opção de usar o GLADE como IDE... ou seja, existem bastante opções é só vc testar e ver em qual vc se adapta melhor.