[Off topic] Delphi é ou não é quot;elegantequot;?
Olá amigos do fórum.
Estou cursando uma disciplina na faculdade chamada Arquitetura de Software, e o professor passou um trabalho que consiste em um sisteminha de cadastro orientado a objetos. Perguntei se poderia fazer o meu trabalho em Delphi, e o professor disse que não, porque ´o Delphi não é orientado a objetos´.
Todos nós sabemos que a Delphi Language, apesar de permitir a escrita de programas na forma procedural, [b:c66766329c]é[/b:c66766329c] orientada a objetos porque possui os recursos de uma linguagem orientada a objetos: abstração de dados, encapsulamento, herança e polimorfismo.
Não pude conversar com o professor sobre essa opinião, mas vou supor que ele quis dizer que o Delphi é fraco no quesito modelagem orientada a objetos. Usando Java, por exemplo, se você possui uma tabela TbUsuario com os campos Nome e Endereco, você modela essa entidade para uma bean Usuario e depois usa um ou mais padrões conhecidos (Data Access Objects, por exemplo) para separar lógica de negócios da camada de persistência, não esquecendo das camadas de visão e controle é claro.
O que eu escrevi no parágrafo acima sintetiza tudo o que um profissional Java pensa de Delphi. Em vários fóruns Java já li esse tipo de opinião. Todos argumentam que o Delphi não modela os dados ´de forma elegante´. Será que não é elegante? Qual a deselegância em manter a persistência em um DataModule, com a minha tabela de usuários encapsulada em um TDataSet? Qual o problema de acondicionar as camadas de visão e controle, respectivamente, em arquivos .dfm e em units (.pas)?
Texto grande não? Criei este tópico porque gostaria de ouvir da própria comunidade Delphi o que ela pensa sobre isso. Às vezes sinto uma enorme pressão do mercado para largar o Delphi e aprender uma linguagem mais ´elegante´, como Java ou C#. Não tenho nada contra essas linguagens - inclusive estudo Java também.
Abraços a todos.
Estou cursando uma disciplina na faculdade chamada Arquitetura de Software, e o professor passou um trabalho que consiste em um sisteminha de cadastro orientado a objetos. Perguntei se poderia fazer o meu trabalho em Delphi, e o professor disse que não, porque ´o Delphi não é orientado a objetos´.
Todos nós sabemos que a Delphi Language, apesar de permitir a escrita de programas na forma procedural, [b:c66766329c]é[/b:c66766329c] orientada a objetos porque possui os recursos de uma linguagem orientada a objetos: abstração de dados, encapsulamento, herança e polimorfismo.
Não pude conversar com o professor sobre essa opinião, mas vou supor que ele quis dizer que o Delphi é fraco no quesito modelagem orientada a objetos. Usando Java, por exemplo, se você possui uma tabela TbUsuario com os campos Nome e Endereco, você modela essa entidade para uma bean Usuario e depois usa um ou mais padrões conhecidos (Data Access Objects, por exemplo) para separar lógica de negócios da camada de persistência, não esquecendo das camadas de visão e controle é claro.
O que eu escrevi no parágrafo acima sintetiza tudo o que um profissional Java pensa de Delphi. Em vários fóruns Java já li esse tipo de opinião. Todos argumentam que o Delphi não modela os dados ´de forma elegante´. Será que não é elegante? Qual a deselegância em manter a persistência em um DataModule, com a minha tabela de usuários encapsulada em um TDataSet? Qual o problema de acondicionar as camadas de visão e controle, respectivamente, em arquivos .dfm e em units (.pas)?
Texto grande não? Criei este tópico porque gostaria de ouvir da própria comunidade Delphi o que ela pensa sobre isso. Às vezes sinto uma enorme pressão do mercado para largar o Delphi e aprender uma linguagem mais ´elegante´, como Java ou C#. Não tenho nada contra essas linguagens - inclusive estudo Java também.
Abraços a todos.
Tnaires
Curtidas 0
Respostas
Pauldiano66
26/10/2007
Cara manda esse seu professor para de falar besteira, o delphi é OOP sim tem todos os recursos, e ainda da uma olhada no ClientDataSet, ele faz tudo que o java faz, mas muito mais facil, ele já é OOP,seu professor fala isso por que não conhece realmente delphi a fundo, apenas arrastando e soltando componente, eu trabalho com delphi igual a java,criando atributos e get e set para todos esses caras,tudo na mão como no java, mas no delphi você pode fazer de várias formas,isso que é o melhor da ferramenta e linguagem.
A ferramenta é flexivel,pode programar procedural,RAD,OOP misturado hehehe vai fazer em java,trabalho com java a 5 anos,da trabalho fazer as coisas.
A ferramenta é flexivel,pode programar procedural,RAD,OOP misturado hehehe vai fazer em java,trabalho com java a 5 anos,da trabalho fazer as coisas.
GOSTEI 0
Tnaires
26/10/2007
Cara manda esse seu professor para de falar besteira, o delphi é OOP sim tem todos os recursos (...)
Concordo plenamente com você.
(...) seu professor fala isso por que não conhece realmente delphi a fundo, apenas arrastando e soltando componente (...)
Exato. Creio que falta no pessoal que critica Delphi um contato mais aprofundado com a ferramenta, para descobrir que a solução desenvolvida pela Borland é elegante também.
(...) eu trabalho com delphi igual a java,criando atributos e get e set para todos esses caras,tudo na mão como no java (...)
Interessante. Eu já tentei trabalhar com Java igual como trabalho no Delphi: construindo componentes Swing Dataware que manipulam diretamente o ResultSet retornado pelos métodos executeStatement(), fazendo analogia ao Datasource / Dataset. Por exemplo: seria simples construir um DBNavigator que herda de JPanel e contém JButtons que navegam ou editam registros de um ResultSet.
Se você puder, gostaria de saber mais detalhes sobre a forma que você trabalha com Delphi igual a Java.
No mais, gostaria de saber a opinião de mais pessoas.
Abraços.
GOSTEI 0
Daykas
26/10/2007
Seu professor é professor mesmo??
Acho que seria melhor intimarem ele a apresentar diploma de nivel superior. hehehehe!
Acho que seria melhor intimarem ele a apresentar diploma de nivel superior. hehehehe!
GOSTEI 0
Marcosalex
26/10/2007
Se voce programar com ECO vai estar programando 100¬ orientado a objetos e muito parecido com a forma de programar em Java.
GOSTEI 0