framework de bruno preiss. 2 sumário introdução estruturas de dados fundamentais projeto...

65
Framework de Bruno Preiss

Upload: internet

Post on 17-Apr-2015

130 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

Framework de Bruno Preiss

Page 2: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

2

Sumário

Introdução

Estruturas de Dados Fundamentais

Projeto Orientado a Objetos

Tipos Abstratos de Dados Java

Tipos Abstratos de Dados C++

Application Frameworks

Projetos

Page 3: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

Introdução

Page 4: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

4

Introdução

Tipos Abstratos e Dados Tipos de Dados e Abstrações Tipos Abstratos e Dados

Características de linguagens que é necessário conhecer Linguagem Java Linguagem C++

Page 5: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

5

Tipos de Dados e Abstrações

Uma abstração é a idéia de uma característica ou propriedade independente de qualquer objeto ou coisa real que possua esta característica ou propriedadePor meio de abstração pode-se raciocinar sobre características de um objeto sem conhecer o objetoAbstrações servem para esconder detalhes irrelevantes em um dado contexto

Page 6: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

6

Tipos Abstratos e Dados (1)

Em linguagens de programação variáveis são abstrações compostas de diversos atributos: Nome – rótulo de referência no programa Endereço – localização na memória Valor – quantidade representada Duração – intervalo de tempo no qual a variável

existe Escopo –comandos no programa no qual a variável é

visível Tipo – conjunto de valores que podem ser atribuídos

ao atributo valor e conjunto de operações que podem ser realizadas

Tamanho –memória necessária para a representação

Page 7: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

7

Tipos Abstratos e Dados (2)

Associação é o processo de atribuição de valor a um dado atributo, podendo ser estática (feita em tempo de compilação) dinâmica (feita em tempo de execução).

Todas as linguagens de programação possuem tipos de dados nativos ou embutidos, tais como inteiros, reais, caracteres, etcFreqüentemente a natureza do problema a tratar em programas de computadores leva à criação de abstrações apropriadas para a aplicação geradora dos programas

Page 8: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

8

Tipos Abstratos e Dados (3)

Para tratar de tipos de dados não nativos às linguagens de programação são definidos os Tipos Abstratos de Dados (TAD)Com as linguagens orientadas a objeto os tipos abstratos de dados passaram a apresentar características próprias para essa representação, por meios das classes.As classes são semanticamente muito mais ricas do que as construções struct do C ou record do Pascal

Page 9: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

9

Linguagem Java

Tipos primitivos e tipos referenciados

Instâncias criadas de forma explícita (new)

Comparação = = (mesmo objeto) equal (mesmo valor em diferentes instâncias)

Passagem de parâmetros Por valor para tipos primitivos “Por referência” para tipos referenciados (valor de

endereço)

Page 10: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

10

Linguagem C++

Passagem de parâmetros Por valor Por referência

Page 11: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

Estruturas de Dados Fundamentais

Page 12: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

12

Estruturas de Dados Fundamentais

Conceito

Implementação Java A Classe Array A Classe LinkedList

Implementação C++ A Classe Array A Classe LinkedList

Page 13: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

13

Conceito de Estruturas de Dados Fundamentais (1)

Em Estruturas de Dados estudam-se diversos Tipos Abstratos de Dados (TAD) Pilhas Filas Deques Listas Árvores Filas de prioridade Conjuntos Grafos etc.

Page 14: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

14

Conceito de Estruturas de Dados Fundamentais (2)

Todos esses Tipos Abstratos de Dados podem ser implementados usando arrays ou estruturas encadeadas.Arrays e listas encadeadas são base para os demais Tipos Abstratos de DadosPassaram estes a ser chamados de Estruturas de Dados Fundamentais não sendo chamados de Tipos Abstratos de Dados

Page 15: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

Projeto Orientado a Objetos

Page 16: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

16

Projeto Orientado a Objetos

Conceitos iniciais

Containers

Hierarquias de Objetos e Padrões de Projeto (Frameworks)

Page 17: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

17

Conceitos iniciais (1)

Abordagem dos projetos de software orientada a dados orientada a processos orientada a objetos

Objetos combinam dados e procedimentos (também chamados de métodos ou funções) Esta abordagem permite que se tenha

abstração e encapsulamento.

Page 18: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

18

Conceitos iniciais (2)

Uma interface é um conjunto de declarações de métodosUma classe abstrata é uma classe que especifica apenas uma interface Não se pode instanciar uma classe abstrata Em C++ classes abstratas possuem funções

membros puramente virtuais que declaram apenas uma interface, sem implementação

As classes abstratas são usadas como classes base para as classes derivadas

Page 19: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

19

Conceitos iniciais (3)

A declaração de funções membros virtuais permite ter acesso às implementações fornecidas pelas classes derivadas por meio da interface da classe baseNão é necessário saber como uma instância de objeto é implementada nem de que classe derivada ela é instância.

Page 20: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

20

Conceitos iniciais (4)

Este padrão de projeto (interfaces e classes abstratas) explora a idéia do polimorfismo Uma mesma abstração de interface é

válida para a definição de cada tipo abstrato de dados

Diferentes implementações podem ser feitas para acomodar as diversas classes de origem comum com a mesma interface

Page 21: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

21

Containers (1)

Um container é um objeto que comporta outros objetosPropriedades dos Containers Capacidade Lotação Possibilidade de inserção e remoção de objetos

Um caso particular é constituído pelos containers de busca (searchable containers) que são aqueles que suportam operações eficientes de busca de objetos nele contidos

Page 22: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

22

Containers (2)

Enumerations e Iterators

Visitors

Cursors (não em C++)

Adapters

Singletons

Page 23: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

23

Hierarquias de Objetos e Padrões de Projeto

Conceitos iniciais

Abstração

Encapsulamento

Page 24: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

24

Conceitos iniciais

Os padrões de projeto e as hierarquias de classe são um salto qualitativo no desenvolvimento de “software” mas suas vantagens são semelhantes às das linhas de montagem da indústriaPara grande volume de produção e grande volume de pessoas envolvidas no empreendimento são indispensáveis Contudo apresentam seus custos de preparação e

manutenção que só se justificam para casos específicos com alta taxa de reuso

Para os não iniciados parecem complicações assustadoras e “desnecessárias”

Page 25: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

25

Abstração

Mecanismo de minimização de detalhes pouco relevantes permitindo o raciocínio dirigidoAbstração de procedimentos ações que devam ser executadas para

resolver o problema sem pensar em como essas ações devam ser implementadas

Abstração de dados objetos de um programa ou sistema sem a

preocupação de sua implementação

Page 26: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

26

Encapsulamento

São omitidas informações sobre detalhes de implementaçãoObjetos encapsulam dados e procedimentosIndependência Conceitual: o usuário não pode interferir com a

implementação do objeto sendo obrigado a usá-lo pelas regras ditadas pelo criador do objeto

Física: as operações sobre os objetos não provocam efeitos colaterais

Page 27: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

Tipos Abstratos de Dados Java

Page 28: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

28

Tipos Abstratos de Dados Java

Conceito

Padrões de Projeto

Page 29: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

29

Tipos de variáveis e tipos de dados

O tipo de uma variável especifica dois conjuntos: um conjunto de valores um conjunto de operações

Pode-se considerar o tipo de uma variável um tipo abstrato de dados no sentido de que pode-se estudar as qualidades do tipo sem levar em conta a realidade de sua representaçãoNão é necessário saber como é a representação computacional de um tipo inteiro ou real para poder raciocinar sobre ele

Page 30: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

30

Tipos e Abstrações

No projeto de programas orientados a objeto as primeiras considerações do programador consistem em desenvolver uma coleção adequada de abstrações para

tratar do problema definir tipos abstratos de dados para

representar estas abstrações

A definição de um tipo abstrato de dados requer as especificações de um conjunto de valores e de um conjunto de operações sobre esses valores

Page 31: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

31

Abstrações e a Orientação a Objeto

Só com o advento da Orientação a Objeto é que surgiram linguagens de programação que forneceram as ferramentas que permitiram declarar de maneira adequada os tipos abstratos de dados

Page 32: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

32

Padrões de projeto

Hierarquia de Classes e convenções

Page 33: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

33

Hierarquia de Classes do Framework Java de Bruno Preiss

Page 34: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

34

Padrões de Projeto

Hierarquia de ClassesObjetos Java e a interface ComparableObjetos abstratos comparáveisEnvoltória dos tipos primitivosContainersContainers abstratosVisitantesO método toString da classe AbstractContainerEnumeraçõesContainers de Busca (Searchable Containers)Associações

Page 35: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

Tipos Abstratos de Dados C++

Page 36: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

36

Tipos Abstratos de Dados C++

Conceito

Padrões de Projeto

Page 37: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

37

Tipos de variáveis e tipos de dados

O tipo de uma variável especifica dois conjuntos: um conjunto de valores um conjunto de operações

Pode-se considerar o tipo de uma variável um tipo abstrato de dados no sentido de que pode-se estudar as qualidades do tipo sem levar em conta a realidade de sua representaçãoNão é necessário saber como é a representação computacional de um tipo inteiro ou real para poder raciocinar sobre ele

Page 38: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

38

Tipos e Abstrações

No projeto de programas orientados a objeto as primeiras considerações do programador consistem em desenvolver uma coleção adequada de abstrações para

tratar do problema definir tipos abstratos de dados para

representar estas abstrações

A definição de um tipo abstrato de dados requer as especificações de um conjunto de valores e de um conjunto de operações sobre esses valores

Page 39: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

39

Abstrações e a Orientação a Objeto

Só com o advento da Orientação a Objeto é que surgiram linguagens de programação que forneceram as ferramentas que permitiram declarar de maneira adequada os tipos abstratos de dados

Page 40: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

40

Hierarquia de Classes do Framework C++ de Bruno Preiss

Page 41: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

41

Padrões de Projeto

Hierarquia de ClassesObjetosA classe Singleton NullObjectObject Wrappers para os tipos embutidosContainesVisitorsIteratorsA classe NullIteratorConteúdo Direto e IndiretoAssociaçõesContainers de Busca (Searchable Containers)

Page 42: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

Application Frameworks

Page 43: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

43

Application Frameworks

Conceito de Framework

Application Framework

Application Framework de Bruno Preiss

Page 44: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

44

Conceitos de Framework (1)

No desenvolvimento de software, um Framework é uma estrutura de suporte bem definida na qual um projeto do software pode ser baseado e desenvolvido.Um Framework pode incluir programas de apoio, bibliotecas de código, linguagens de script e outros softwares para ajudar a desenvolver e juntar diferentes componentes do seu projeto

Page 45: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

45

Conceitos de Framework (2)

Uma estrutura lógica para a classificação e organização de informação complexa

A estrutura técnica e formato sistemático que suporta os conceitos de metadados, conteúdo e vocabulário controlado

Page 46: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

46

Conceitos de Framework (3)

Uma estrutura extensível para a descrição de um conjunto de conceitos, métodos, tecnologias e mudanças culturais necessárias para o projeto completo de um produto e processo de manufatura

Um conjunto de classes cooperativas que constitui um projeto re-usável para uma aplicação específica

Page 47: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

47

Conceitos de Framework (4)

Uma coleção de classes que fornece um conjunto de serviços para um domínio particular

Um conjunto de classes inter relacionado e re-usável que forma a base de uma aplicação

Page 48: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

48

Application Framework (1)

Conjunto de bibliotecas (coleções de sub programas utilizadas para o desenvolvimento de “software”) ou classes (coleções de tipos encapsulados de variáveis e tipos de métodos) usadas para implementar a estrutura padrão de uma aplicação para um dado sistema operacional

Page 49: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

49

Application Framework (2)

A vantagem de seu emprego é o agrupamento de grande quantidade de código re-usável o que economiza o esforço de reescrever código padrão a cada nova aplicação. Os application frameworks apresentaram grande popularidade com o advento das interfaces gráficas para o usuário (GUI)

Page 50: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

50

Application Framework (3)

A implementação dos application frameworks é feita por programação orientada a objeto e assim o código específico de cada aplicação pode utilizar a herança das classes existentes no application framework.

Page 51: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

51

Application Frameworks Disponíveis

Microsoft Microsoft Foundation Classes (MFC) de 1992

inspirado no Think Class Library (TCL) do Macintosh

Borland Object Windows Library (OWL) que deu lugar a Visual

Component Library (VCL)

Java Abstract Window Toolkit (AWT) para GUI 1995 Java Foundation Classes (JFC) 1997 Incorporação às JFC da interface Swing inspirada na

Internet Foundation Classes, da Netscape 1998

Page 52: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

52

Application Framework de Bruno Preiss (1)

Criar Projetos com a seguinte composição:

1. Um diretório (ou “package”) com estruturas dos fundamentos da hierarquia de classes e padrões de projeto

2. Um diretório (ou “package”) com as estruturas de dados a utilizar (pilha, fila, lista, árvore, grafo, etc.)

3. Um diretório com a definição dos dados a serem processados

4. Um diretório com a aplicação ou programa principal

Page 53: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

53

Application Framework de Bruno Preiss (2)

O diretório das estruturas dos fundamentos é único e reaproveitado sempreOs diretórios das estruturas de dados são um para cada estrutura de dados escolhida (podem ocorrer a implementação por “arrays” e a implementação por listas encadeadas)

Para cada novo problema ou aplicação basta fazer a definição dos dados e o programa principal pois todo o resto já está pronto

Page 54: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

54

Application Framework de Bruno Preiss (3)

Os sítios de Bruno Preiss para C++e Java, aonde estão disponíveis os fontes, são, respectivamentehttp://www.pads.uwaterloo.ca/Bruno.Preiss/books/opus4/programs/ http://www.pads.uwaterloo.ca/Bruno.Preiss/books/opus5/programs/

Page 55: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

55

Fontes Java de Bruno Preiss

Page 56: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

56

Fontes C++ de Bruno Preiss

Page 57: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

Projetos

Page 58: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

58

Projetos

Conceito de Projeto

Projetos em Delphi

Projetos em Dev C++

Projetos em JCreator

Projetos em Visual C++

Projetos em VB

Projetos em JBuilder

Page 59: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

59

Conceito de Projeto

Em ambientes de desenvolvimento de programas chama-se de projeto a um conjunto de arquivos e recursos que é utilizado para implementar uma aplicação

Page 60: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

60

Projetos em Delphi

Todo o desenvolvimento de aplicações é feito em torno de projetos. Ao se criar uma aplicação Delphi está sendo criado um projeto. Um projeto é uma coleção de arquivos que constitui uma aplicação. Alguns destes arquivos são criados ao tempo de desenvolvimento enquanto outros são gerados automaticamente quando da compilação do código fonte Arquivos de projeto tem a extensão dpr. Contém diretrizes para a construção de uma aplicação ou

objeto compartilhado

Quando se compila um projeto não interessa aonde residem os arquivos que compõe o projeto

Page 61: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

61

Projetos em Dev C++

Um projeto pode ser considerado como um container que é usado para armazenar todos os elementos necessários para a compilação de um programa

Page 62: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

62

Projetos em JCreator

Antes da criação do primeiro arquivo Java deve-se criar um projeto que será associado ao arquivo de programa JavaNo JCreator, os projetos são criados em Workspaces. Quando se cria um workspace, é criada uma pasta para o armazenamento do novo projeto. Um workspace pode conter diversos projetos Os projetos precisam ter o mesmo nome que o arquivo do programa

Page 63: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

63

Projetos em Visual C++

Arquivos criados para um programa C++ são organizados dentro de um Projeto C++ contido em um workspaceAplicações são desenvolvidas em um WorkspaceInicia-se a montagem de aplicações ou criando simultaneamente um projeto e um workspace ou criando um workspace e depois adicionando a ele projeto(s)O desenvolvimento Microsoft eMbedded C++ é caracterizado hierarquicamente por workspace, projetos, e subprojetos Um workspace é um container para o desenvolvimento de projetosQuando se cria nova plataforma cria-se simultaneamente um workspace

Page 64: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

64

Projetos em VB

Um projeto é um grupo de arquivos relacionados, usualmente todos os arquivos necessários para o desenvolvimento de um componente de softwareArquivos podem ser agrupados em um projeto para a criação de subprojetosOs projetos podem ser definidos de qualquer maneira que faça sentido para o usuário

Page 65: Framework de Bruno Preiss. 2 Sumário Introdução Estruturas de Dados Fundamentais Projeto Orientado a Objetos Tipos Abstratos de Dados Java Tipos Abstratos

65

Projetos em JBuilder

Qualquer trabalho em JBuilder é feito dentro de um projetoUm projeto JBuilder é uma estrutura organizacional que contém todos os arquivos necessários para executar a unidade de trabalho definida, incluindo os diretórios nos quais estão os arquivos e todos os caminhos, definições e recursos necessáriosO usuário é quem decide o que incluir no projeto, que é uma entidade lógica e não físicaOs arquivos de um projeto podem estar em quaisquer pastas