title: Should i be using the uvm_component/object_utils macros
body: <p>I see a lot of articles which talk about whether you should be using field macros.</p>
  
  <p>General guideline is: </p>
  
  <pre><code>`uvm_do... macro:
  </code></pre>
  
  <p>Can be used, but try to avoid if you are lazy.</p>
  
  <hr>
  
  <pre><code>`uvm_field... macro:
  </code></pre>
  
  <p>Avoid like the plague.</p>
  
  <hr>
  
  <p>Sure, people also tell not to use</p>
  
  <pre><code>`uvm_component_param_utils... 
  `uvm_object_param_utils...
  </code></pre>
  
  <p>But i cannot seem to find what anyone thinks about the </p>
  
  <pre><code>`uvm_component_utils... 
  `uvm_object_utils...
  </code></pre>
  
  <p>Should they be avoided? Or they can be used without much issues?</p>
  
  <p>Thanks :)</p>