X hits on this document

PDF document

Jornadas Sul-Americanas de Engenharia Estrutural - page 4 / 15

31 views

0 shares

0 downloads

0 comments

4 / 15

XXX

JORNADAS

SUL-AMERICANAS

DE

ENGENHARIA

ESTRUTURAL

    • 3.2

      Filosofia de Programação Orientada a Objetos e C++

      • 3.2.1

        Linguagem C++

        • O

          C++ é uma linguagem de programação baseada na filosofia de orientação para objetos. Os concei-

tos básicos deste enfoque já foram introduzidos pela linguagem de programação Simula desenvol- vida na década de 60 por O. J. Dahl e Kristen Nygaard [4]. O desenvolvimento do C++ iniciou-se em 1980 nos laboratórios da Bell por Bjarne Stroustrup [1]. A linguagem foi originalmente desen- volvida para solucionar algumas simulações motivadas por eventos, muito rigorosos, para as quais as considerações sobre eficiência impediam o uso de outras linguagens. O C++ foi utilizado primei- ramente por uma equipe não pertencente ao grupo de desenvolvimento coordenado por Stroustrup em 1983 e, no verão de 1987, a linguagem estava ainda em pleno desenvolvimento, passando por refinamentos e evoluções naturais.

Um dos principais objetivos do projeto C++ era manter a compatibilidade com C. A idéia era preservar a integridade de milhões de linhas de código já escritas e depuradas, a integridade de muitas bibliotecas C existentes e a utilidade de ferramentas C já desenvolvidas. Devido ao alto grau de sucesso na obtenção deste objetivo, a transição de C para o C++ mostrou-se muito simples. A melhoria mais significativa na linguagem C++ é seu suporte à filosofia de programação orientada à objetos (OOP).

As linguagens SmallTalk e o C++ são as mais utilizadas atualmente, embora estes possuam diferentes enfoques para realizar a orientação para objetos. O SmallTalk é considerado como uma linguagem pura, enquanto que o C++ é híbrida, no sentido que nela coexistem características de uma linguagem estruturada (o C) juntamente com características de orientação para objetos.

  • O

    alto grau de desenvolvimento da linguagem C++ se deve ao fato de ser uma linguagem muito

difundida e utilizada. A sintaxe de C++ é muito “ rica” , dando ao programador várias opções para escrever a mesma instrução. Comandos muitas vezes escritos com muitas linhas, podem ser reescritos com poucas linhas, o que se traduz não só em redução no tempo de implementação, mas também execução, pois o compilador criará um código mais eficiente[6], [9].

Esta será a linguagem utilizada no desenvolvimento do projeto, justamente por ser a única na qual a ferramenta ObjectARX é disponibilizada. Muitos outros fatores contam também a favor desta linguagem, como a sua ampla aplicação e a facilidade de obtenção de bibliografia. Vale notar que o PZ também foi escrito em C++ e C (linguagem predecessora do C++).

  • O

    aspecto mais importante a relatar é a orientação a objetos, sem a qual a condução do projeto

seria impossível. O AutoCAD tem suas funcionalidades disponibilizadas através do ObjectARX sob a forma de objetos. Portanto a extensão das suas funcionalidades só pode ser feita por meio de novas classes.

3.3

Orientação a Objetos

A filosofia de orientação à objetos teve sua maior penetração na indústria de software. Porém, seu uso no âmbito de computação científica ainda é pequeno.

  • O

    que diferencia a orientação à objetos das demais filosofias de projeto de sistemas, é a abor-

dagem do problema. Sendo esse abordado sob um ponto de vista estruturado (i.e. não orientado à objetos), procura-se definir um conjunto de dados que definem o estado do sistema e uma posterior sequência de eventos que acarretará na transformação desse estado.

Numa abordagem orientada à objetos definem-se estruturas abstratas, denominadas classes, res- ponsáveis por partes da modelagem do problema. Cada classe incorpora tanto dados (forma) como métodos (comportamentos) sendo esses necessários e suficientes para tratar as responsabilidades da classe [2].

A sendo a classe uma abstração, a simples definição da mesma não é suficiente para promover a solução do problema. Faz-se necessário criar uma instância dessa classe, chamada objeto. Essa é

3

Document info
Document views31
Page views31
Page last viewedMon Dec 05 21:27:20 UTC 2016
Pages15
Paragraphs422
Words5053

Comments