It has been standard practice for a number of years, for teachers to separate classes in to ability. This was because they often thought that it would be easier for the teacher and for the pupils if they could have work tailored specifically to that group of students.
Recent studies have showed that there is actually no evidence that this has any positive impact on a pupils learning and can actually hinder it. If as child is always bottom of their set they can get disheartened and they may then actually not bother putting as much effort in to learning.
Teaching the class as a whole has shown to be beneficial. The work that is created by the teacher should have a number of levels to it, so there is task for everyone to complete at the basic level and then each child can progress on to the harder tasks as they complete the previous one. This means there is no finish as such as the children who are of high ability can carry on experimenting with more complex options.