Escolar Documentos
Profissional Documentos
Cultura Documentos
Software - Módulo 2
Notas para Revisão das Disciplinas para
Prova Presencial
Gabarito da Atividade 01
Questões objetivas-UNIDADE 1
I- Membros públicos são os campos e funções membro que são visíveis externamente à classe.
II- Membros privados são visíveis apenas internamente à classe em que foram programados
III- Elementos protegidos possuem visibilidade intermediária, normalmente
sendo acessíveis por todas as classes de uma hierarquia
IV- Atributos públicos de uma classe mãe podem ser acessados por objetos instanciados de uma
classe filha da classe mãe.
a) II e IV
b) III e IV
c) I, II e III
d) I e III
e) todas estão corretas
RESPOSTA: E
a) Se a classe derivada não especificar o construtor da classe base que deseja chamar, será
executada a chamada ao construtor padrão da classe base (se houver).
b) Os construtores não são chamados automaticamente. Uma classe derivada deverá escolher qual
construtor da superclasse deseja chamar.
c) A palavra chave super está disponível para todos os métodos não estáticos de uma classe
estendida.
d) A subclasse poderá chamar diretamente o construtor da superclasse utilizando-se a cláusula
super(). A assinatura do método super() deve ser a mesma assinatura do construtor que se deseja
chamar.
e) Métodos protegidos estáticos não podem ser acessados em qualquer classe estendida.
RESPOSTA: E
3) Assinale a afirmativa CORRETA:
RESPOSTA: C
Gabarito da Atividade 02
Questões objetivas-UNIDADE 2
Clientes (campos nome, CPF, endereço e telefone) fazem pedidos (campos código pedido, data
pedido e data pagamento), selecionando produtos (campos nome e quantidade em estoque),
que se constituem em itens de pedido(campo quantidade). Produtos são classificados em
categorias (campo nome categoria). Os pedidos são pagos de 3 formas distintas: cheque,
dinheiro ou cartão de crédito.
Os seguintes diagramas de classes foram gerados para esse sistema:
I-
II-
a)A classe Ong no diagrama II é uma classe que não pertence ao framework.
b)A classe Cliente no diagrama II é uma interface estendida e novas subclasses da
mesma podem ser criadas na instância do framework.
c) O diagrama II é um diagrama de classes em UML-F para o sistema de vendas. O
diagrama I representa uma instância do framework representado pelo diagrama II.
d)As classes Industria e Comercio no diagrama II são frozen spots e por conseguinte não
podem ser modificadas.
e) A classe pedido mostrada no diagrama II é uma interface estendida e a ela podem ser
adicionados novos métodos.
Resposta:E
Resp: a
3) Sejam as seguintes afirmações:
I-A UML-f criou notações e mecanismos novos para estender a UML e oferecer recursos para
representação de frameworks.
II-A tag Incomplete representa o hot spot interfaces estendidas. Indica que novos métodos
podem ser criados nas instâncias do framework.
III- A tag appl-class é usada para indicar um aditivo na estrutura de um framework onde classes
específicas da aplicação podem ser ou já foram adicionadas.
IV- Os tag values são meios para proporcionar a criação de novas propriedades em elementos
da UML.
V- As restrições são mecanismos para especificar uma nova semântica de algum elemento da
UML
Resp: d
Gabarito da Atividade 03
Questões objetivas-UNIDADE 3
Escolha dentre as opções abaixo a que exibe a correspondência correta entre as estruturas de
modelagem e os níveis do MOF.
RESPOSTA D
2) Um livro pode ser classificado nas categorias FICÇÃO, DRAMA e TERROR. Qual classe do
EMF melhor implementa essas 3 categorias?
a)EFactory
b)Uma classe mãe denominada Categorias e suas subclasses Ficcao, Drama e Terror .
c)EClass
d)EAnnotation
e)AbstractEnumerator
RESPOSTA E
Assinale a alternativa INCORRETA sobre o código desse diagrama gerado pelo EMF.
RESPOSTA: C
Gabarito da Atividade 04
Questões objetivas-UNIDADE 4
RESPOSTA: c
2) Seja uma biblioteca de algoritmos de data mining a ser utilizada em um programa. Deseja-se
preparar esse programa, de forma que uma mudança para outra biblioteca, em um futuro, não o
afete. Dentre os padrões de projeto apresentados abaixo, qual seria o melhor a ser utilizado nessa
situação?
a) Flyweight
b) Façade
c) Composite
d) Adapter
e) Proxy
RESPOSTA: d
3) Quando um programa acessa o gerenciador de impressões, deseja-se impedir que sejam abertas
múltiplas instâncias desse gerenciador. Dentre os padrões de projeto abaixo apresentados, qual
melhor resolveria esse problema?
a)Adapter
b)Prototype
c)Factory method
d)Proxy
e)Singleton
RESPOSTA: e
Gabarito da Atividade 06
Questões objetivas-UNIDADE 6
1) Atributos final não funcionam como constantes e métodos final podem ser redefinidos pelas
classes estendidas, de modo que os métodos não poderão ser sobrepostos.
PORQUE
a palavra chave final serve para definir atributos ou métodos que não podem ser mais modificados
após sua primeira inicialização (no caso de atributos) ou sua primeira definição (no caso de métodos)
Acerca dessas asserções, assinale a opção correta.
A- As duas asserções são proposições verdadeiras, e a segunda é uma justificativa correta
da primeira.
B- As duas asserções são proposições verdadeiras, e a segunda não é uma justificativa
correta da primeira.
C- A primeira asserção é uma proposição verdadeira, e a segunda é uma proposição falsa.
D-A primeira asserção é uma proposição falsa, e a segunda é uma proposição verdadeira.
E -As duas asserções são proposições falsas.
RESPOSTA: D
RESPOSTA: B
3) Para implementar uma estrutura todo-parte (agregação ou composição), qual das classes abaixo
do EMF seria a mais recomendada?
a)EFactory
b) EList
c)AbstractEnumerator
d)EClass
e)EAnnotation
RESPOSTA: B
4) Mapas digitais detalhados normalmente são grandes, ocupando uma quantidade considerável de
memória. Entretanto, existem situações em que mapas detalhados não são necessários, podendo-se
trabalhar com uma versão mais simples. Nesse caso, todas as operações envolvidas na manipulação
de mapas detalhados devem ser aplicadas também a mapas mais simples.
Qual seria o padrão de projeto mais adequado a ser utilizado nesse caso?
a)Proxy
b)Prototype
c)Singleton
d)Adapter
e)Flyweight
RESPOSTA: A
======================================================================
Orientação de Estudo
Unidade 01 - Conceitos de Programação Orientada a Objetos
Como você vai estudar nesta unidade
Essa unidade é de vital importância, pois introduz conceitos que serão referenciados e utilizados com
muita frequência nas unidades seguintes da disciplina.
2 Classes e objetos
3- Herança de classe -
4) Polimorfismo
Espera-se, ao final dessa unidade, que você assimile e entenda a importância dos conceitos de
classe, objeto, herança e polimorfismo, fundamentais à compreensão dos capítulos subsequentes do
curso.
Espera-se, ao final dessa unidade, que você entenda o conceito de frameworks e, com isso, esteja
aptos a criar modelos de aplicações calcados nesse conceito. Além disso, espera-se o conhecimento
e compreensão da utilidade das principais atividades, papéis e artefatos das disciplinas
implementação e implantação do RUP.
Nessa unidade, iremos apresentar o conceito de MDA (ModeL Driven ArchItecture), que tem sido
bastante utilizado quando se deseja eficiência no processo de passagem do modelo da aplicação
criado na etapa de análise, para o código-fonte. Na unidade 2, você estudou o conceito
de frameworks. Instâncias de frameworkssão os modelos utilizados no paradigma MDA, em especial,
no Eclipse Process Framework, que é uma implementação do conceito de MDA no ambiente de
desenvolvimento Eclipse.
Não se esqueça, sempre que tiver alguma dúvida, use o correio acadêmico para conversar com o
professor e/ou com o tutor da disciplina.
Assista à videoaula "Model Driven Architecture". Atente para a parte correspondente ao MDA
propriamente dito
Baixe a apostila sobre MDA do Prof. Pasteur e leia seu conteúdo:
http://www.tesestec.com.br/pasteurjr/MDA.pdf
Assista à videoaula "Model Driven Architecture". Atente para a parte correspondente ao Eclipse
Process Framework
Assista à videoaula complementar "Comentários acerca de MDA, MOF e EMF"
Baixe a apostila sobre EMF do Prof. Pasteur e leia seu conteúdo:
http://www.tesestec.com.br/pasteurjr/EMF.pdf
3) Como atividade opcional, se você desejar ter uma experiência com o EMF na prática:
3.1) Baixe o arquivo MDL do Rational Rose contendo o exemplo library.mdl (não é preciso ter o Rose
para utilizá-lo no EMF):
http://www.tesestec.com.br/pasteurjr/library.mdl
3.4) No ambiente do Eclipse, faça o tutorial do Prof. Pasteur que está em:
Espera-se, ao final dessa unidade, que o conceito de MDA esteja compreendido e que você saiba
aplicá-lo no desenvolvimento de aplicações padronizadas.
Nessa unidade vamos estudar 10 padrões de projeto Gamma, os mais relevantes. Padrões de
projeto tem se constituído em uma referência universal quando se deseja aplicar a projetos de
software estruturas padronizadas que privilegiem principalmente a reutilização. São a base das
arquiteturas de software modernas.
Não se esqueça, sempre que tiver alguma dúvida, use o correio acadêmico para conversar com o
professor e/ou com o tutor da disciplina.
Essa apostila contém definições associadas aos padrões que vamos estudar.
4) Complemente o conhecimento acerca dos padrões acessando os links abaixo, que contêm alguns
exemplos:
Abstract Factory:
http://www.dsc.ufcg.edu.br/~jacques/cursos/map/html/pat/abstractfactory.htm
Factory Method:
http://www.dsc.ufcg.edu.br/~jacques/cursos/map/html/pat/factory.htm
Singleton:
http://www.dsc.ufcg.edu.br/~jacques/cursos/map/html/pat/singleton.htm
Adapter:
http://www.javacamp.org/designPattern/
Flyweight:
http://www.javacamp.org/designPattern/
Proxy
http://www.javacamp.org/designPattern/
Façade
http://www.javacamp.org/designPattern/
Chain of Responsibility
http://www.javacamp.org/designPattern/
Prototype
http://www.javacamp.org/designPattern/
Composite
http://www.dsc.ufcg.edu.br/~jacques/cursos/map/html/pat/composite.htm
Espera-se, ao final dessa unidade, que o aluno compreenda e saiba aplicar em situações práticas
alguns padrões de projeto Gamma.