Magna Concursos
2270891 Ano: 2012
Disciplina: TI - Desenvolvimento de Sistemas
Banca: UFSCAR
Orgão: UFSCAR
Provas:

Considere o seguinte trecho de código em C#, que simula a execução de um escalonador de tarefas simples:

Enunciado 2944670-1

Considere também as seguintes modificações no código:

M1. Mover a lógica de rodízio, que atualmente está implementada no método “Main” da classe “MainClass” para dentro de um método “Schedule” na própria classe “MainClass”.

M2. Transformar o atributo “Tasks” da classe “TaskScheduler” de “public” para “private”.

M3. Transformar o atributo “NextTask” da classe “TaskScheduler” de “private” para “public”.

M4. Adicionar um construtor à classe “TaskScheduler”, que recebe como parâmetro o número de tarefas e inicializa o vetor de tarefas “Tasks”. Modificar o método “Main” da classe “MainClass” para utilizar esse construtor ao criar a instância “ts”.

M5. Transformar os métodos “SetNextTask” e “GetNextTask” de “public” para “private”.

M6. Adicionar um método na classe “TaskScheduler” que recebe como parâmetro um objeto do tipo “Task” e o adiciona ao vetor de tarefas “Tasks”. Utilizar esse método na classe “MainClass” para adicionar tarefas ao escalonador.

M7. Mover a lógica de rodízio, que atualmente está implementada na classe “MainClass” para dentro do método “GetCurrentTask” da classe “TaskScheduler”.

M8. Adicionar um construtor à classe “MainClass” , que recebe como parâmetro o número de tarefas e inicializa o vetor de tarefas “Tasks”. Modificar o método “Main” da classe “MainClass” para utilizar esse construtor e criar uma instância de “MainClass”.

M9. Remover os métodos “SetNextTask” e “GetCurrentTask” da classe “TaskScheduler”.

Qual das alternativas abaixo descreve um conjunto de modificações que, quando realizadas em conjunto, resulta em um código onde os princípios da orientação a objetos são mais bem aplicados?

 

Provas

Questão presente nas seguintes provas

Analista de TI

60 Questões