What is difference between Directive & Component in Angular?