Ir para conteúdo
Fórum Script Brasil

Gustavo Ferreira

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Sobre Gustavo Ferreira

Gustavo Ferreira's Achievements

0

Reputação

  1. Bom dia, estou com essa questão pra resolver, esta sendo um desáfio, mas preciso de ajuda. Questão Única Você foi contratado(a) para criar um software para gerência de projetos de desenvolvimento de sistemas. O software irá controlar tarefas que precisam ser feitas e em que fases estas estão. As fases são: BACKLOG (repositório de tarefas a serem feitas), TODO (selecionadas para serem feitas num período, como em 1 semana ou 1 mês), DOING (tarefas que estão sendo executadas num dado momento), e DONE (tarefas concluídas). Observe que há um fluxo a ser seguido: BACKLOG → TODO → DOING → DONE e esse fluxo deve ser respeitado. Ou seja, uma tarefa não pode pular etapas. Logo, a ideia é automatizar o comportamento, algo que costuma ser feito manualmente. Como ponto de partida, o cliente forneceu para você um código base tendo como tarefas a realização das ADs do CEDERJ. Este estudo de caso serve como exemplo porque o fluxo básico de tarefas de desenvolvimento de sistemas e tarefas do dia-a-dia são similares: class Board { static int BACKLOG = 0; static int TODO = 1; static int DOING = 2; static int DONE = 3; String labels[] = {"BACKLOG", "TODO", "DOING", "DONE"}; Phase phase[] = new Phase[4]; public Board() { for (int i=0; i<4; i++) phase[i] = new Phase(); } public void add(Card c) { phase[BACKLOG].adiciona(c); } public void prepare(Card c) { phase[BACKLOG].remove(c); phase[TODO].adiciona(c); } public void start(Card c) { phase[TODO].remove(c); phase[DOING].adiciona(c); } public void finish(Card c) { phase[DOING].remove(c); phase[DONE].adiciona(c); } public String toString() { String saida = ""; for (int i=0; i<4; i++) saida += labels[i] + "\n" + phase[i].toString() + "\n"; return saida; } } public class AD1_2023_2 { public static void main(String[] args) { Board semestre2023_2 = new Board(); Card fazerAD1 = new Card("Fazer a AD1"); semestre2023_2.add(fazerAD1); Card fazerAD2 = new Card("Fazer a AD2"); semestre2023_2.add(fazerAD2); System.out.println(semestre2023_2); semestre2023_2.prepare(fazerAD1); System.out.println(semestre2023_2); semestre2023_2.start(fazerAD1); System.out.println(semestre2023_2); semestre2023_2.finish(fazerAD1); System.out.println(semestre2023_2); } } A classe Board representa um quadro de controle similar à ilustração apresentada a seguir: Além desta classe, são usadas também as classes Phase e Card. A implementação dessas duas classes é o que o cliente lhe pediu e ele exige que sua implementação seja completamente compatível com o código fonte fornecido. package Application; import Entities.Board; import Entities.Card; import Entities.Phase; public class Program { public static void main(String[] args) { Board semestre2023_2 = new Board(); Card fazerAD1 = new Card("Fazer AD1"); semestre2023_2.add(fazerAD1); Card fazerAD2 = new Card("Fazer AD2"); semestre2023_2.add(fazerAD2); System.out.println(semestre2023_2); semestre2023_2.prepare(fazerAD1); System.out.println(semestre2023_2); semestre2023_2.start(fazerAD1); System.out.println(semestre2023_2); semestre2023_2.finish(fazerAD1); System.out.println(semestre2023_2); } } package Entities; public class Board { static int BACKLOG = 0; static int TODO = 1; static int DOING = 2; static int DONE = 3; String labels[] = {"BACKLOG", "TODO" , "DOING", "DONE"}; Phase phase [] = new Phase[4]; public Board() { for (int i=0; i<4; i++) phase[i] = new Phase(); } public void add(Card c) { phase[BACKLOG].adiciona(c); } public void prepare(Card c) { phase[BACKLOG].remove(c); phase[TODO].adiciona(c); } public void start (Card c) { phase[TODO].remove(c); phase[DOING].adiciona(c); } public void finish(Card c) { phase[DOING].remove(c); phase[DONE].adiciona(c); } public String toString() { String saida = ""; for (int i=0; i<4; i++) saida +=labels[i] + "\n" + phase[i].toString() + "\n"; return saida; } package Entities; public class Card { private String title; public Card(String title) { this.title = title; } public String getTitle() { return title; } @Override public String toString() { return title; } public void add(Card card) { // TODO Auto-generated method stub } } package Entities; public class Phase { private List<Card> cards = new ArrayList<>(); public void adiciona(Card card) { card.add(card); } public void remove(Card c) { } @Override public String toString() { StringBuilder phaseContent = new StringBuilder(); for (Card card: cards) { phaseContent.append(card.getTitle()).append("\n"); } return phaseContent.toString(); } } ERRO DE EXECUÇÃO. Exception in thread "main" java.lang.Error: Unresolved compilation problems: List cannot be resolved to a type ArrayList cannot be resolved to a type List cannot be resolved to a type at Entities.Phase.<init>(Phase.java:6) at Entities.Board.<init>(Board.java:16) at Application.Program.main(Program.java:11)
×
×
  • Criar Novo...