Firstly read up on, Page Templates to learn how to create the pages you want.
Secondly getting recent posts is no problem, you just have to do a query with WP_Query using the order and orderby parameters accordingly.
Thirdly wordpress doesn’t count page views, you have to implement this yourself. Same applies to social counts of course. The comment count is the easy part, you can do this by default with wordpress. If you have all this you can combine all the values you have for example into a custom field and do a query with meta_* sorting by this field.
But the above is really just to get you started. I suggest you take a look around, there are solutions for page views and social counts on WPSE and out in other places. If you have done your research, you come back with more specific questions and some code to get more help achieving your goal.