Kellen Sunderland created JOSHUA-265:
----------------------------------------

             Summary: Refactor key interfaces and core code for a future 
release. 
                 Key: JOSHUA-265
                 URL: https://issues.apache.org/jira/browse/JOSHUA-265
             Project: Joshua
          Issue Type: Improvement
            Reporter: Kellen Sunderland
            Priority: Minor


We've discussed making some modifications to the key interfaces.  This ticket 
can focus on making large changes to the codebase for a future release.  This 
work will likely take some time and some collaboration.  I'd suggest some the 
code for this be a separate release branch.

Some issues we can work on:
*  I'd propose we conform to the SOLID principles for our major interfaces.  
https://en.wikipedia.org/wiki/SOLID_(object-oriented_design)  . 
*  We can look at Sparse / Dense feature vectors and how to handle them 
naturally in Joshua.
*  Refactor objects that may now be used more broadly than was originally 
intended (for example Vocabulary class).
*  We should have a general discussion around what parts of the codebase are 
responsible for what functions.  We should clearly define what logic should be 
a part of the Grammar versus the Feature Functions for example, and make sure 
logic doesn't leak from one of these objects to the others.

 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to