Scriptable Objects are data containers that you can use to save large amounts of data, independent of class instances

Presentation

References

Unity Documentation

Download relevant code