Code Review 3

This round of code reviews has two goals. First, we will discuss how you added rich text capabilities to the editor, and the new abstractions you created and problems you faced along the way. Second, we will discuss what it was like to implement these extensions on a code base created by a different team. Each review will focus on a subset of the new features (see "Review Topics" below).

Presenters

You should spend 10-15 minutes to present your project, focusing on the assigned topic for your review. First talk about how you implemented the new features; see "Review Topics" below for specific questions to consider. Second, spend a few minutes talking about what it was like to work with someone else's code. Discuss briefly the strengths and weaknesses of the code base you started from, and describe a few of the most important refactorings you performed as part of the project.

As in the past, please organize your presentation so that it will be understandable even to students who have not read your code.

Reviewers

Read over the code related to the assigned topic before class. You may use either the issue on cs190codereview.appspot.com or the repo on GitHub. As you read the project, consider its complexity with questions such as the following:

In addition, look at the refactoring file, and consider the changes this team made to the original code base. Do these changes make the code base better or worse, and why?

Once you've read over the code, create an online code review for the project. As in the past, wait to publish your code review until after the in-class discussion.

In addition, prepare a few slides with your most important overall comments about the project. You will have 5 minutes to present these in class. As usual, please organize your review so that it can be appreciated even by students who have not read the code. Your comments will be most useful if they are specific: include examples from the implementation both for things you like and for things you don't like.

Review Topics

Each code review will focus on one of the topics described below:

Text Storage, File Format

For this topic, focus on the low-level mechanisms for managing text, such as:

Displaying Rich Text, Selection

For this topic, focus on the use of rich text in the GUI. For example:

Schedule

DateTopicPresentersReviewers
Wednesday, June 1Text Storage, File Format Gadangi, PradhanS. Li, Starosta, Penkov
Charitsis, LiWalker, Rodriguez, Broder, Man
Wednesday, June 8Displaying Rich Text, Selection Penkov, StarostaPradhan, Walker, Gadangi
S. Li, ManBroder, Y. Li, Charitsis, Rodriguez
Text Storage, File Format WalkerPenkov, Starosta, Gadangi, Pradhan
Broder, RodriguezMan, Charitsis, Y. Li, S. Li