WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.

Slides:



Advertisements
Similar presentations
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
Advertisements

WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010/2013.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010/2013.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
15 min WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010/2013.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
15 min WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010.
WARNING 20 min These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint.
Presentation transcript:

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.

Discuss with your neighbors logging, assertions, exceptions, defensiveness coupling, and 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 " + userName); 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 }

Discuss with your neighbors logging, assertions, exceptions, defensiveness coupling, and 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 " + userName); 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 }

Discuss with your neighbors logging, assertions, exceptions, defensiveness coupling, and 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 " + userName); 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 }

Discuss with your neighbors logging, assertions, exceptions, defensiveness coupling, and 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 " + userName); 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 }

Discuss with your neighbors logging, assertions, exceptions, defensiveness coupling, and 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 " + userName); 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 }

Discuss with your neighbors logging, assertions, exceptions, defensiveness coupling, and 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 " + userName); 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 }

Discuss with your neighbors logging, assertions, exceptions, defensiveness coupling, and 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 " + userName); 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 }

Discuss with your neighbors logging, assertions, exceptions, defensiveness coupling, and 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 " + userName); 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 }

Discuss with your neighbors logging, assertions, exceptions, defensiveness coupling, and 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 " + userName); 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 }

Discuss with your neighbors logging, assertions, exceptions, defensiveness coupling, and 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 " + userName); 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 }

V0.1 How?

V0.1 How?

[extra] Boom! 14

[Extra] what you think you can do What you can do What you think you can do

V0.1

V0.5

V0.1 V0.2 V0.3 V0.4 [by next tutorial]

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();