-
Notifications
You must be signed in to change notification settings - Fork 738
Expand file tree
/
Copy pathLadderApplication.java
More file actions
35 lines (27 loc) · 1.11 KB
/
LadderApplication.java
File metadata and controls
35 lines (27 loc) · 1.11 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package nextstep.ladder;
import nextstep.ladder.domain.*;
import nextstep.ladder.presentation.LadderGameResultView;
import nextstep.ladder.presentation.util.ConsoleInputUtil;
public class LadderApplication {
public static void main(String[] args) {
Participants participants = new Participants(participantNames());
Ladder ladder = ladderFactory().create(participants, maximumLadderHeight());
LadderGameResultView ladderGameResultView = new LadderGameResultView(participants, ladder);
ladderGameResultView.printExecuteResult();
}
private static LadderFactory ladderFactory() {
return new LadderFactory(lineFactory());
}
private static LineFactory lineFactory() {
return new LineFactory(randomConnectionsFactory());
}
private static ConnectionsFactory randomConnectionsFactory() {
return new RandomConnectionsFactory();
}
private static int maximumLadderHeight() {
return ConsoleInputUtil.askMaximumLadderHeight();
}
private static String participantNames() {
return ConsoleInputUtil.askParticipantNames();
}
}