1. State change always equals component re render
2. useEffect listens for change in reference of object, array and function and watches out for value change primitive data types. (when object/function/value) are depencies.
3.Child re render doesn't cause parent re-render only if child is changing state of parents by the changing of state prop what was sent to child.
4. we can not update state in component without use Effect.. or a function (which has to be called after render) if the function is called during render then nope.. basically, no state change during rendering.