Для чего нужен ConstraintLayout?
==================================

 Слышал, что он производительней, чем другие layouts. Можно ли им заменить их? И вообще нужно ли, если да? 

 По-моему, тут дело не в производительности, а в том, как вы собрались размещать объекты на экране. ConstraintLayout позволяет многое сделать, поэтому его и надо использовать там, где нужны его возможности. 

 Он разработан как более гибкая замена RelativeLayout. Нужен для того, чтобы иерархия вьюх была более плоской. И для сложных раскладок.   

Не надо использовать его везде, он не более производителен. Если можно то же самое сделать на каком-нибудь LinearLayout - надо использовать последний.