A forma de trabalho procedural é prática comum quando se trabalha com análise estruturada de sistemas. E nesta forma de trabalho, o seu foco ao desenvolver um sistema será sempre os dados, e consequentemente, a nível de programação, você se concentrará em escrever procedimentos e funções voltados para o tratamento desses dados. Na abordagem orientada a objetos, você tem uma visão mais ampla de como será o sistema e como ele irá se comunicar entre si. Isso é identificado a partir do momento que você começa a categorizar os elementos do sistema como classes. Resumindo isto tudo, em termos de UML, estamos falando de diagramas de contexto, classes e sequencia.
Na abordagem procederal, as rotinas (procedimentos e funções) e os dados são elementos separados, enquanto que na abordagem orientada a objetos, eles atuam praticamente em conjunto (dados + rotinas). Na abordagem orientada a objetos, você categoriza os elementos do sistema em classes e para cada uma dessas classes você define como será o seu comportamento(dados) e as ações(rotinas) que ele deverá desempenhar dentro do sistema. Em um determinado momento você deve imaginar que deverá escrever mais código na abordagem orientada a objetos, mas em compensação, a correta utilização dos conceitos de herança, encapsulamento e polimorfismo lhe trarão alto ganho de tempo e produtividade se, e somente se, souber abstrair muito bem as classes que irão compor o seu sistema, sejão elas classes para representar entidades que serão persistidas em bancos de dados (Cliente, Fornecedor, Venda, Produto, etc.) como as classes que representam processamentos e/ou elementos de interface homem-máquina (telas, gráficos, relatórios, etc.) O que acabei de relatar aqui é um breve resumo dos benefícios que tenho na prática com análise e desenvolvimento orientada a objetos. Sds. De: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] Em nome de Alexandre Enviada em: quinta-feira, 21 de maio de 2009 10:35 Para: delphi-br@yahoogrupos.com.br Assunto: [delphi-br] OOP - Quais as vantagens? Pessoal estou cansado de ouvir que oop é melhor que procedural, gostaria que porfavor me explicassem qual a vantagem de ser usar OOP, não estou conseguindo entender os beneficios para o meu programa usar oop ao invés de procedures. Alex [As partes desta mensagem que não continham texto foram removidas]