06-ImplementAndTest

06-ImplementAndTest - From designing to coding 1st step:...

Info iconThis preview shows pages 1–2. Sign up to view the full content.

View Full Document Right Arrow Icon
1 From designing to coding z 1 st step: sensibly split work among team members – Choose splits along “thin” interfaces z Probably not equal parts; split biggest parts again later – Formalize the interfaces – think of them as contracts – Write least-coupled parts first … most-coupled last z i.e., classes that don’t depend on any other classes z Oh yeah, one more thing to think about: Reserve ample time for testing! interface – a Java contract z So write the interfaces z Formalizes much of the contract – Precisely defines available services (methods) – But pre- and post-conditions are not insured z These are communicated by documentation only z Implement class and client class independently – Can even compile clients (but cannot fully test) z Note: maybe change an interface to a class later – e.g., client developed using interface A –okayto replace with class A later Pre- and post-conditions z The most important points to document z Pre-conditions – what the client is responsible for – The “requires” clauses of the contract z Especially include any restrictions on calling arguments z Also any associations that should already exist z Post-conditions – what will be accomplished by the operation if the pre-conditions are met – The “effects” and/or “modifies” contract clauses z Including all side effects (objects created/destroyed, associations formed/broken, attribute values modified) z Also should state any exceptions that might be thrown javadoc comments z “Cheap” external documentation – Handy way to share just a class’s interface with team z Should always use to document all public declarations – classes, instance variables, methods
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 2
This is the end of the preview. Sign up to access the rest of the document.

This note was uploaded on 04/21/2009 for the course CS 50 taught by Professor Staff during the Winter '08 term at UCSB.

Page1 / 3

06-ImplementAndTest - From designing to coding 1st step:...

This preview shows document pages 1 - 2. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online