First year is designed for people with no experience and uses Java to teach the fundamentals of programming, whilst integrating that knowledge with other smaller projects. Second year focuses on databases, networks, C/C++ and the cloud - students also start working with a commercial game engine, UE4. Third year focuses on C/C++ and building an actual game. Students also have to build a sophisticated software application for their final major project.
Throughout the course of my studies I found that there was a lot of freedom - we were always graded on our ability, and this meant that whilst we were told "you must use X technology for this task" we had completely free reign in what we built to demonstrate our understanding (in the majority of cases).
The course is kept interesting by some very enthusiastic lecturers, all of which were very helpful. Shoutout to Dr. Mount here - absolutely fantastic 200% of the time, that woman is seriously dependable.