-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathTODO.txt
70 lines (46 loc) · 2.59 KB
/
TODO.txt
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
Revisions/Refactoring:
******-- look into JScrollPane for PlayersPanel
-- read in data from csv file
-- flag for updating rules in RecalculateScoreListener vs RulesListener (lazy vs eager)
-- get rid of getYardsUnit() in categories classes
***-- make Player subclasses have List<Set<? extends StatType>>
--Model: look into creating separate package which encapsulates things like players list so that duplication is less apparent. ***Look into using only one list of players by modifying Player.java
************-- make Player have map of RulesMap -> score; need way to specify which one is active --> active RulesMap field?
-- comment out Modes.ALL??
-- look into computing entire RuleMap in one call of parseScoringRules()
remove warnings
*******-- rename football/ to customerscorer/??
**** call static method of generic type
**** reuse abstract method code
-- avoid code repetition in argument validation in Player subclasses
-- avoid code repetition in field code in Player subclasses (keep first field in subclasses and put methods for all other fields in Player?)
-- make categoriesToString() static
-- work on cmd line interface?
***** cmd line flags
New features:
-- Metrics
-- Get player stats from online source (e.g. nfl.com)
-- GUI?
***** use MVC!!!!!
***** tabs/radio button for position (include all as option)
***** side-by-side grids, each with own edit boxes for scoring coeffs within each tab
***** default scoring coeffs from nfl.com; button to revert to default coeffs
***** capability to remember smallest/largest metric value (display min/max/mean?)
***** solve for best coeffs based on some reference player rankings
***** option to update player data/choose stats year?
***************************************************************************************
Option 1: update Rules using RuleListener each time user types in rule text field
Pros:
--more efficient if user changes only a small number of rules
--work distributed throughout execution, instead of being done all at once (--> avoid potential lag)
Cons:
--need to be able to pass TextFields up through JPanels to View for adding listeners
Notes:
Option 2: update Rules using RecalcScoreListener, only when user his "recalculate score" button
Pros:
--more efficient if user plays around with same rule, or sets many rules
Cons:
Notes:
grab ScorerPanel from JButton in ActionEvent using SwingUtilities.getAncestorOfClass()
Option 3: hybrid of above 2 options -- RulesListener sets flag to show that field was modified; RecalculateScoreListener then updates only modified fields
Notes: ***implement this (seems to be better than other options)