WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint They may not show up well on other PowerPoint versions. You can download PowerPoint 2010 viewer from here.here These slides contain a lot of animations. For optimal results, watch in slideshow mode.
77577 OR tinyurl.com/answerpost Comment on either logging, assertions, exceptions, defensiveness, coupling, or cohesion of this method. /* Sets user as ‘active’ on the server, * throws an exception if the * user does not exist on the server */ void activateUserOnServer(String userName) throws CannotActivateException{ log("trying to activate"); assert(isUsernameAcceptable(userName)); boolean isActivated = ServerConnection.activate(userName); if(!isActivated) { throw new CannotActivateException(userName + " not activated"); } Account account = AccountManager.getAccount(userName); account.toggleActivatedStatus(); //mark as activated } comment {answer} e.g. comment blah blah
V0.1 How?
V0.1 How?
V0.1 How?
[Extra] what you think you can do What you think you can do What you can do
V0.1
V0.5
V0.1 V0.2 V0.3 V0.4
Previous lecture: Better design Better documentation Better code better everything! Theme for this week: Improving the product. Improving ourselves.
Explain this design in less than 10 words explain {answer} e.g. explain blah blah explain {answer} e.g. explain blah blah {abstract} Command execute() {abstract} undo() {abstract} Edit execute() undo() execute() undo() Delete execute() undo() execute() undo() Add execute() undo() execute() undo() History add(Command) * Command cmd = createCommand(commandString); cmd.execute(); history.add(cmd); … cmd.undo(); OR tinyurl.com/answerpost