According to me Vaadin documentation is well detailled and you don’t need to explain indeed the whole ui components.
From my experience I had severals issues with my team with layouts and the way the components are placed inside.
I had also some performance issues using Table.
You should maybe focus your course on performance and things we should or shouldn’t do when developping a Vaadin application as if you were developping a rich application in C++ or javaswing.