Components in SceneGraph are isolated from each other, so while technically the "observer" is the function you register, that function has to be available in the same context as the code that's calling observeField(). Since that code is isolated to the component, I think it's fair to refer to the component as the observer.
Now, consider you have a ContentNode that provides the content for multiple grid components (grid1 and grid2). Each grid component may want to register an observer on the ContentNode to monitor for any changes to the data, so it can update its UI. If unobserveField() were nuclear, then grid1 would have no way unregistering its observer when its ContentNode (or visibility) changes without also unregistering grid2's observer.
My Channels: http://roku.permanence.com - Twitter: @TheEndlessDev
Instant Watch Browser (NetflixIWB), Aquarium Screensaver (AQUARIUM), Clever Clocks Screensaver (CLEVERCLOCKS), iTunes Podcasts (ITPC), My Channels (MYCHANNELS)