title: OpenLayers 3 Style Function versus Individual Feature Style with regards to performance
body: <p>In OpenLayers, we used to independently set a style for each individual feature we added to the layer:</p>
  
  <pre><code>let feat = new ol.Feature(geometry);
  feat.setStyle(myStyle);
  </code></pre>
  
  <p>The newer versions of OpenLayers have much attention focused on the "styleFunction" feature where you only have to define 1 style function, versus setting the style to each feature individually:</p>
  
  <pre><code>let layer = new ol.layer.Vector({
      source: mySource,
      style: myStyleFunction
  });
  function myStyleFunction(feature) {
      console.log('calling style function');
      let props = feature.getProperties();
      if (props.drawBlue) {
          return new ol.style.Style(...);
      } else {
          return new ol.style.Style(...);
      }
  }
  </code></pre>
  
  <p>The primary thing that I have noticed: "calling style function" is logged on every pan of the map, and every zoom of the map, for all features on the layer. It would appear the myStyleFunction is getting executed for all features on the layer, on every user input to the map.</p>
  
  <p>The question: is using the styleFunction feature heavier on the DOM than using independent styles for each feature? We will be using thousands of features and are wondering what will yield the best performance. With the old method, I couldn't really figure out a way to learn when the features are redrawing in the background, but we only set the style once and it wasn't modified after that. So does this mean that the older method is better for performance?</p>
  
  <p>Granted the inner-workings of OpenLayers 3 are very complex and dependent on so many things, I'm hoping one of you may have some insight into this functionality. Thanks.</p>