Implementation of Unity's Richard Fine's talk at Unite 2016:
Overthrowing the MonoBehaviour tyranny in a glorious ScriptableObject revolution
Every Unity programmer is familiar with the MonoBehaviour class, but many overlook its simpler, more flexible neighbour, ScriptableObject. These sessions go over the ScriptableObject class in detail, compare it to the MonoBehaviour class and work through many examples of how they might be applied in a project.
Things have changed in the prefab world. Prefabs are now more powerful than the ScriptableObject. Everything ScriptableObjects used to be good for, MonoBehaviours can do... and can unlock much more powerful patterns than ScriptableObjects tend to allow.
Blog Post by Craig Perko