I admit; I am not a fan of writing length SQL queries and I am a huge fan of Views. Many times when I need a list of nodes (such as processing nodes in a cron task), I have created a View and then used views_get_view_result to get my items (and process them).
In D7 I think views_get_view_result returned the NID and whatever other fields I had added to my View. In D8, it seems to be also including the fully loaded node object. Although this is very handy, as in most cases I am likely going to need the node object and this means I do not need to load it in my code; but, is this very memory efficient? Is passing hundreds or thousands of fully loaded node objects not going to cause memory issues?
Is there a way to only pass NIDs and then let me loop through them and do a Node::load()?