F04 CPSC 501 - Advanced programming techniques - Mini Assignment #1

The purpose of this mini-assignment is to make you familiar with refactoring and the textbook for the course. The basic flow of this assignment is:

Explanation

Refactoring is a very concrete way of improving the design of existing code. The textbook, however, isn't something that you just sit down and read and understand. In order to become proficient with refactoring, you have to be exposed to a lot of examples and you have to actually apply the refactorings to real code. Unfortunately, each refactoring in the textbook is only given one example and some of those examples are somewhat contrived.

This mini-assignment is an attempt to utilize the collective brainpower of the students enrolled in the course in order to expose you to several examples. Similarly, it provides you with the opportunity to use the textbook and to apply the techniques described in the textbook to code that you understand and that is relevant to you.

You will post your results on a web page. Your web page must contain the following information:

You will be given 2 minutes to present your results to the class. Two minutes is a very short period of time, so you'll have be careful about which information you choose to present. Please be aware that your web-page can contain information that you do not have the time to present.

Evaluation Criteria

This mini-assignment is worth 2.5% of your final mark. Both members of the group will be assigned a grade of A, C or F. Your evaluation will be based solely on your presentation to the class.

Students who do not present or fail to show any understanding of refactoring will be given a mark of F

Students who show that they have a superficial understanding of refactoring will receive a C

Students who demonstrate an understanding of refactoring that goes beyond simply saying what refactoring they applied will receive a mark of an A. The following are some hints to help you on your quest: